summaryrefslogtreecommitdiff
path: root/test/Transforms/IPConstantProp/return-constants.ll
blob: 40567f80bd853380fd9862940178eab9e53bae56 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
; RUN: llvm-as < %s | opt -ipconstprop | llvm-dis | grep {add i32 21, 21}

define internal {i32, i32} @foo(i1 %C) {
        br i1 %C, label %T, label %F

T:              ; preds = %0
        ret i32 21, i32 21

F:              ; preds = %0
        ret i32 21, i32 21
}

define i32 @caller(i1 %C) {
        %X = call {i32, i32} @foo( i1 %C )
        %A = getresult {i32, i32} %X, 0
        %B = getresult {i32, i32} %X, 1
        %Y = add i32 %A, %B
        ret i32 %Y
}