1 ; RUN: llc < %s -march=x86 2 3 @bsBuff = internal global i32 0 ; <i32*> [#uses=1] 4 @llvm.used = appending global [1 x i8*] [i8* bitcast (i32 ()* @bsGetUInt32 to i8*)], section "llvm.metadata" ; <[1 x i8*]*> [#uses=0] 5 6 define fastcc i32 @bsGetUInt32() nounwind ssp { 7 entry: 8 %bsBuff.promoted44 = load i32, i32* @bsBuff ; <i32> [#uses=1] 9 %0 = add i32 0, -8 ; <i32> [#uses=1] 10 %1 = lshr i32 %bsBuff.promoted44, %0 ; <i32> [#uses=1] 11 %2 = shl i32 %1, 8 ; <i32> [#uses=1] 12 br label %bb3.i17 13 14 bb3.i9: ; preds = %bb3.i17 15 br i1 false, label %bb2.i16, label %bb1.i15 16 17 bb1.i15: ; preds = %bb3.i9 18 unreachable 19 20 bb2.i16: ; preds = %bb3.i9 21 br label %bb3.i17 22 23 bb3.i17: ; preds = %bb2.i16, %entry 24 br i1 false, label %bb3.i9, label %bsR.exit18 25 26 bsR.exit18: ; preds = %bb3.i17 27 %3 = or i32 0, %2 ; <i32> [#uses=0] 28 ret i32 0 29 } 30