blob: b98bbf44be68db2e994a3efcd78b824d07df4ad6 [file] [log] [blame]
Tanya Lattnerf396cc82008-03-19 04:14:49 +00001; RUN: llvm-as < %s | opt -ipsccp | llvm-dis | \
Reid Spencer9aafdcf2007-04-15 09:21:47 +00002; RUN: grep -v {ret i32 0} | grep -v {ret i32 undef} | not grep ret
Chris Lattner9b07c662004-12-10 22:28:49 +00003
Tanya Lattnerf396cc82008-03-19 04:14:49 +00004define internal i32 @bar(i32 %A) {
5 %C = icmp eq i32 %A, 0 ; <i1> [#uses=1]
6 br i1 %C, label %T, label %F
7T: ; preds = %0
8 %B = call i32 @bar( i32 0 ) ; <i32> [#uses=0]
9 ret i32 0
10F: ; preds = %0
11 %C.upgrd.1 = call i32 @bar( i32 1 ) ; <i32> [#uses=1]
12 ret i32 %C.upgrd.1
Chris Lattner9b07c662004-12-10 22:28:49 +000013}
14
Tanya Lattnerf396cc82008-03-19 04:14:49 +000015define i32 @foo() {
16 %X = call i32 @bar( i32 0 ) ; <i32> [#uses=1]
17 ret i32 %X
Chris Lattner9b07c662004-12-10 22:28:49 +000018}
Tanya Lattnerf396cc82008-03-19 04:14:49 +000019