Chris Lattner | 4f53850 | 2002-05-03 20:12:31 +0000 | [diff] [blame] | 1 | ; This is a basic sanity check for constant propogation. The add instruction |
| 2 | ; should be eliminated. |
| 3 | |
Tanya Lattner | ec9a35a | 2008-03-01 09:15:35 +0000 | [diff] [blame^] | 4 | ; RUN: llvm-as < %s | opt -constprop -die | llvm-dis | not grep add |
Chris Lattner | 4f53850 | 2002-05-03 20:12:31 +0000 | [diff] [blame] | 5 | |
Tanya Lattner | ec9a35a | 2008-03-01 09:15:35 +0000 | [diff] [blame^] | 6 | define i32 @test(i1 %B) { |
| 7 | br i1 %B, label %BB1, label %BB2 |
| 8 | |
| 9 | BB1: ; preds = %0 |
| 10 | %Val = add i32 0, 0 ; <i32> [#uses=1] |
| 11 | br label %BB3 |
| 12 | |
| 13 | BB2: ; preds = %0 |
| 14 | br label %BB3 |
| 15 | |
| 16 | BB3: ; preds = %BB2, %BB1 |
| 17 | %Ret = phi i32 [ %Val, %BB1 ], [ 1, %BB2 ] ; <i32> [#uses=1] |
| 18 | ret i32 %Ret |
Chris Lattner | 50e8682 | 2003-06-28 23:23:34 +0000 | [diff] [blame] | 19 | } |
Tanya Lattner | ec9a35a | 2008-03-01 09:15:35 +0000 | [diff] [blame^] | 20 | |