Dan Gohman | f2f6ce6 | 2009-09-11 18:01:28 +0000 | [diff] [blame^] | 1 | ; RUN: opt < %s -simplifycfg -instcombine \ |
Dan Gohman | 7c1a96c | 2009-09-08 22:41:33 +0000 | [diff] [blame] | 2 | ; RUN: -simplifycfg -S | not grep call |
Chris Lattner | 470221c | 2004-05-01 23:35:21 +0000 | [diff] [blame] | 3 | |
Tanya Lattner | f04d8d1 | 2008-03-18 03:45:45 +0000 | [diff] [blame] | 4 | declare void @bar() |
Chris Lattner | 470221c | 2004-05-01 23:35:21 +0000 | [diff] [blame] | 5 | |
Tanya Lattner | f04d8d1 | 2008-03-18 03:45:45 +0000 | [diff] [blame] | 6 | define void @test(i32 %X, i32 %Y) { |
Chris Lattner | 470221c | 2004-05-01 23:35:21 +0000 | [diff] [blame] | 7 | entry: |
Tanya Lattner | f04d8d1 | 2008-03-18 03:45:45 +0000 | [diff] [blame] | 8 | %tmp.2 = icmp ne i32 %X, %Y ; <i1> [#uses=1] |
| 9 | br i1 %tmp.2, label %shortcirc_next, label %UnifiedReturnBlock |
| 10 | shortcirc_next: ; preds = %entry |
| 11 | %tmp.3 = icmp ne i32 %X, %Y ; <i1> [#uses=1] |
| 12 | br i1 %tmp.3, label %UnifiedReturnBlock, label %then |
| 13 | then: ; preds = %shortcirc_next |
| 14 | call void @bar( ) |
Chris Lattner | 470221c | 2004-05-01 23:35:21 +0000 | [diff] [blame] | 15 | ret void |
Tanya Lattner | f04d8d1 | 2008-03-18 03:45:45 +0000 | [diff] [blame] | 16 | UnifiedReturnBlock: ; preds = %shortcirc_next, %entry |
| 17 | ret void |
Chris Lattner | 470221c | 2004-05-01 23:35:21 +0000 | [diff] [blame] | 18 | } |
| 19 | |