Shrink Thumb2 movcc instructions.
[llvm/avr.git] / test / CodeGen / X86 / 2006-10-19-SwitchUnnecessaryBranching.ll
blob1ff687a1b8b797fb27ab633e34a15ae7187df5c7
1 ; RUN: llvm-as < %s | llc -march=x86 -asm-verbose | %prcontext je 1 | \
2 ; RUN:   grep BB1_1:
4 @str = internal constant [14 x i8] c"Hello world!\0A\00"                ; <[14 x i8]*> [#uses=1]
5 @str.upgrd.1 = internal constant [13 x i8] c"Blah world!\0A\00"         ; <[13 x i8]*> [#uses=1]
7 define i32 @main(i32 %argc, i8** %argv) {
8 entry:
9         switch i32 %argc, label %UnifiedReturnBlock [
10                  i32 1, label %bb
11                  i32 2, label %bb2
12         ]
14 bb:             ; preds = %entry
15         %tmp1 = tail call i32 (i8*, ...)* @printf( i8* getelementptr ([14 x i8]* @str, i32 0, i64 0) )          ; <i32> [#uses=0]
16         ret i32 0
18 bb2:            ; preds = %entry
19         %tmp4 = tail call i32 (i8*, ...)* @printf( i8* getelementptr ([13 x i8]* @str.upgrd.1, i32 0, i64 0) )          ; <i32> [#uses=0]
20         ret i32 0
22 UnifiedReturnBlock:             ; preds = %entry
23         ret i32 0
26 declare i32 @printf(i8*, ...)