Tanya Lattner | ceca194 | 2008-03-10 07:21:50 +0000 | [diff] [blame^] | 1 | ; RUN: llvm-as < %s | opt -tailduplicate -disable-output |
Chris Lattner | 8b8ff16 | 2004-04-01 20:28:35 +0000 | [diff] [blame] | 2 | |
Tanya Lattner | ceca194 | 2008-03-10 07:21:50 +0000 | [diff] [blame^] | 3 | define void @interpret() { |
Chris Lattner | 8b8ff16 | 2004-04-01 20:28:35 +0000 | [diff] [blame] | 4 | entry: |
| 5 | br label %retry |
Tanya Lattner | ceca194 | 2008-03-10 07:21:50 +0000 | [diff] [blame^] | 6 | retry: ; preds = %endif.4, %entry |
| 7 | %tmp.8 = call i32 @interp( ) ; <i32> [#uses=3] |
| 8 | switch i32 0, label %endif.4 [ |
| 9 | i32 -25, label %return |
| 10 | i32 -16, label %return |
Chris Lattner | 8b8ff16 | 2004-04-01 20:28:35 +0000 | [diff] [blame] | 11 | ] |
Tanya Lattner | ceca194 | 2008-03-10 07:21:50 +0000 | [diff] [blame^] | 12 | endif.4: ; preds = %retry |
| 13 | br i1 false, label %return, label %retry |
| 14 | return: ; preds = %endif.4, %retry, %retry |
| 15 | %result.0 = phi i32 [ %tmp.8, %retry ], [ %tmp.8, %retry ], [ %tmp.8, %endif.4 ] ; <i32> [#uses=0] |
Chris Lattner | 8b8ff16 | 2004-04-01 20:28:35 +0000 | [diff] [blame] | 16 | ret void |
| 17 | } |
| 18 | |
Tanya Lattner | ceca194 | 2008-03-10 07:21:50 +0000 | [diff] [blame^] | 19 | declare i32 @interp() |
| 20 | |