-shl_test:
- ;; test left shifts 0-31
- %s = phi ubyte [ 0, %entry ], [ %s_inc, %shl_test ]
- %result = shl int %a, ubyte %s
- call int (sbyte*, ...)* %printf(sbyte* %a_shl_s, ubyte %s, int %result)
- %s_inc = add ubyte %s, 1
- %done = seteq ubyte %s, 32
- br bool %done, label %fini, label %shl_test
+shl_test: ; preds = %shl_test, %entry
+ %s = phi i8 [ 0, %entry ], [ %s_inc, %shl_test ] ; <i8> [#uses=4]
+ %shift.upgrd.1 = zext i8 %s to i32 ; <i32> [#uses=1]
+ %result = shl i32 %a, %shift.upgrd.1 ; <i32> [#uses=1]
+ call i32 (i8*, ...)* @printf( i8* %a_shl_s, i8 %s, i32 %result ) ; <i32>:2 [#uses=0]
+ %s_inc = add i8 %s, 1 ; <i8> [#uses=1]
+ %done = icmp eq i8 %s, 32 ; <i1> [#uses=1]
+ br i1 %done, label %fini, label %shl_test