Index: tests_lit/llvm2ice_tests/bool-folding.ll |
diff --git a/tests_lit/llvm2ice_tests/bool-folding.ll b/tests_lit/llvm2ice_tests/bool-folding.ll |
index 9a892005189c874d73b5bc6d803b4db99b5445c8..ca7a7341f350797ab3fae20af315249ebc4871d9 100644 |
--- a/tests_lit/llvm2ice_tests/bool-folding.ll |
+++ b/tests_lit/llvm2ice_tests/bool-folding.ll |
@@ -226,19 +226,20 @@ entry: |
; CHECK: add |
; CHECK: add |
; ARM32-LABEL: fold_cmp_select_multi |
-; ARM32-DAG: mov [[T0:r[0-9]+]], #0 |
-; ARM32-DAG: cmp r0, r1 |
+; ARM32: mov [[T0:r[0-9]+]], #0 |
+; ARM32: cmp r0, r1 |
; ARM32: movlt [[T0]], #1 |
-; ARM32-DAG: mov [[T1:r[0-9]+]], r1 |
-; ARM32-DAG: cmp [[T0]], #0 |
-; ARM32: [[T1]], r0 |
-; ARM32-DAG: mov [[T2:r[0-9]+]], r0 |
-; ARM32-DAG: cmp [[T0]], #0 |
-; ARM32: [[T2]], r1 |
-; ARM32: cmp [[T0]], #0 |
-; ARM32: movne |
-; ARM32: add |
-; ARM32: add |
+; ARM32: uxtb [[T1:r[0-9]+]], [[T1]] |
+; ARM32-NEXT: cmp [[T1]], #0 |
+; ARM32: movne [[T2:r[0-9]+]], r0 |
+; ARM32: uxtb [[T3:r[0-9]+]], [[T3]] |
+; ARM32-NEXT: cmp [[T3]], #0 |
+; ARM32: movne [[T4:r[0-9]+]], r1 |
+; ARM32: uxtb [[T5:r[0-9]+]], [[T5]] |
+; ARM32-NEXT: cmp [[T5]], #0 |
+; ARM32: movne [[T6:r[0-9]+]], #123 |
+; ARM32: add [[T7:r[0-9]+]], [[T2]], [[T4]] |
+; ARM32: add {{r[0-9]+}}, [[T7]], [[T6]] |
; ARM32: bx lr |
@@ -268,19 +269,21 @@ next: |
; CHECK: add |
; ARM32-LABEL: no_fold_cmp_select_multi_liveout |
; ARM32-LABEL: fold_cmp_select_multi |
-; ARM32-DAG: mov [[T0:r[0-9]+]], #0 |
-; ARM32-DAG: cmp r0, r1 |
+; ARM32: mov [[T0:r[0-9]+]], #0 |
+; ARM32: cmp r0, r1 |
; ARM32: movlt [[T0]], #1 |
-; ARM32-DAG: mov [[T1:r[0-9]+]], r1 |
-; ARM32-DAG: cmp [[T0]], #0 |
-; ARM32: [[T1]], r0 |
-; ARM32-DAG: mov [[T2:r[0-9]+]], r0 |
-; ARM32-DAG: cmp [[T0]], #0 |
-; ARM32: [[T2]], r1 |
-; ARM32: cmp [[T0]], #0 |
-; ARM32: movne |
-; ARM32: add |
-; ARM32: add |
+; ARM32: uxtb [[T2:r[0-9]+]], [[T2]] |
+; ARM32-NEXT: cmp [[T2]], #0 |
+; ARM32: movne [[T1]], r0 |
+; ARM32: uxtb [[T4:r[0-9]+]], [[T4]] |
+; ARM32-NEXT: cmp [[T4]], #0 |
+; ARM32: movne [[T3]], r1 |
+; ARM32-LABEL: .Lno_fold_cmp_select_multi_liveout$next: |
+; ARM32: uxtb [[T5:r[0-9]+]], [[T5]] |
+; ARM32: cmp [[T5]], #0 |
+; ARM32: movne [[T6:r[0-9]+]], #123 |
+; ARM32: add [[T7:r[0-9]+]], [[T2]], [[T4]] |
+; ARM32: add {{r[0-9]+}}, [[T7]], [[T6]] |
; ARM32: bx lr |
; Cmp/multi-select non-folding because of extra non-whitelisted uses. |
@@ -311,19 +314,19 @@ entry: |
; CHECK: add |
; CHECK: add |
; ARM32-LABEL: no_fold_cmp_select_multi_non_whitelist |
-; ARM32-DAG: mov [[T0:r[0-9]+]], #0 |
-; ARM32-DAG: cmp r0, r1 |
+; ARM32: mov [[T0:r[0-9]+]], #0 |
+; ARM32: cmp r0, r1 |
; ARM32: movlt [[T0]], #1 |
-; ARM32-DAG: mov [[T1:r[0-9]+]], r1 |
-; ARM32-DAG: cmp [[T0]], #0 |
-; ARM32: [[T1]], r0 |
-; ARM32-DAG: mov [[T2:r[0-9]+]], r0 |
-; ARM32-DAG: cmp [[T0]], #0 |
-; ARM32: [[T2]], r1 |
-; ARM32: cmp [[T0]], #0 |
-; ARM32: movne |
-; ARM32: and {{.*}}, [[T0]], #1 |
-; ARM32: add |
-; ARM32: add |
-; ARM32: add |
+; ARM32: uxtb [[T1:r[0-9]+]], [[T1]] |
+; ARM32-NEXT: cmp [[T1]], #0 |
+; ARM32: movne [[T2:r[0-9]+]], r0 |
+; ARM32: uxtb [[T3:r[0-9]+]], [[T3]] |
+; ARM32-NEXT: cmp [[T3]], #0 |
+; ARM32: movne [[T4:r[0-9]+]], r1 |
+; ARM32: uxtb [[T5:r[0-9]+]], [[T5]] |
+; ARM32-NEXT: cmp [[T5]], #0 |
+; ARM32: movne [[T6:r[0-9]+]], #123 |
+; ARM32: and [[T7:r[0-9]+]], [[T0]], #1 |
+; ARM32: add [[T8:r[0-9]+]], [[T2]], [[T4]] |
+; ARM32: add {{r[0-9]+}}, [[T8]], [[T7]] |
; ARM32: bx lr |