; CHECK-LABEL: @test1
; CHECK: %1 = sub i32 %a, 97
-; CHECK: %2 = lshr i32 %1, 2
-; CHECK: %3 = shl i32 %1, 30
+; CHECK-DAG: %2 = lshr i32 %1, 2
+; CHECK-DAG: %3 = shl i32 %1, 30
; CHECK: %4 = or i32 %2, %3
; CHECK: switch i32 %4, label %def [
; CHECK: i32 0, label %one
; CHECK-LABEL: @test6
; CHECK: %1 = sub i32 %a, -109
-; CHECK: %2 = lshr i32 %1, 2
-; CHECK: %3 = shl i32 %1, 30
+; CHECK-DAG: %2 = lshr i32 %1, 2
+; CHECK-DAG: %3 = shl i32 %1, 30
; CHECK: %4 = or i32 %2, %3
; CHECK: switch i32 %4, label %def [
define i32 @test6(i32 %a) optsize {
; CHECK-LABEL: @test7
; CHECK: %1 = sub i8 %a, -36
-; CHECK: %2 = lshr i8 %1, 2
-; CHECK: %3 = shl i8 %1, 6
+; CHECK-DAG: %2 = lshr i8 %1, 2
+; CHECK-DAG: %3 = shl i8 %1, 6
; CHECK: %4 = or i8 %2, %3
; CHECK: switch.tableidx = {{.*}} %4
define i8 @test7(i8 %a) optsize {
; CHECK-LABEL: @test8
; CHECK: %1 = sub i32 %a, 97
-; CHECK: %2 = lshr i32 %1, 2
-; CHECK: %3 = shl i32 %1, 30
+; CHECK-DAG: %2 = lshr i32 %1, 2
+; CHECK-DAG: %3 = shl i32 %1, 30
; CHECK: %4 = or i32 %2, %3
; CHECK: switch i32 %4, label %def [
define i32 @test8(i32 %a) optsize {