Index: tests_lit/llvm2ice_tests/nop-insertion.ll |
diff --git a/tests_lit/llvm2ice_tests/nop-insertion.ll b/tests_lit/llvm2ice_tests/nop-insertion.ll |
index bfefdcc9672c112451f170cfe5940fe2a3b57f68..edacff9efcb76ce182e0c4d042e8a2dbdaa73fa6 100644 |
--- a/tests_lit/llvm2ice_tests/nop-insertion.ll |
+++ b/tests_lit/llvm2ice_tests/nop-insertion.ll |
@@ -17,6 +17,10 @@ |
; RUN: %p2i -i %s --filetype=asm --sandbox -a -sz-seed=1 -nop-insertion \ |
; RUN: -nop-insertion-percentage=50 -max-nops-per-instruction=1 \ |
; RUN: | FileCheck %s --check-prefix=SANDBOX50 |
+; RUN: %p2i -i %s --filetype=asm --sandbox --target=arm32 -a -sz-seed=1 \ |
+; RUN: -nop-insertion -nop-insertion-percentage=110 \ |
+; RUN: -max-nops-per-instruction=2 \ |
+; RUN: | FileCheck %s --check-prefix=ARM110P2 |
define internal <4 x i32> @mul_v4i32(<4 x i32> %a, <4 x i32> %b) { |
@@ -137,4 +141,69 @@ entry: |
; SANDBOX50: jmp *%ecx |
; SANDBOX50: .bundle_unlock |
+; ARM110P2: mul_v4i32: |
+; ARM110P2-NEXT: .Lmul_v4i32$entry: |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: sub sp, sp, #48 |
+; ARM110P2-NEXT: bic sp, sp, #3221225472 |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: add ip, sp, #32 |
+; ARM110P2-NEXT: bic ip, ip, #3221225472 |
+; ARM110P2-NEXT: vst1.32 q0, [ip] |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: # [sp, #32] = def.pseudo |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: add ip, sp, #16 |
+; ARM110P2-NEXT: bic ip, ip, #3221225472 |
+; ARM110P2-NEXT: vst1.32 q1, [ip] |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: # [sp, #16] = def.pseudo |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: add ip, sp, #32 |
+; ARM110P2-NEXT: bic ip, ip, #3221225472 |
+; ARM110P2-NEXT: vld1.32 q0, [ip] |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: add ip, sp, #16 |
+; ARM110P2-NEXT: bic ip, ip, #3221225472 |
+; ARM110P2-NEXT: vld1.32 q1, [ip] |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: vmul.i32 q0, q0, q1 |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: vst1.32 q0, [sp] |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: # [sp] = def.pseudo |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: vld1.32 q0, [sp] |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: add sp, sp, #48 |
+; ARM110P2-NEXT: bic sp, sp, #3221225472 |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: .bundle_lock |
+; ARM110P2-NEXT: bic lr, lr, #3221225487 |
+; ARM110P2-NEXT: bx lr |
+; ARM110P2-NEXT: .bundle_unlock |
+; ARM110P2-NEXT: nop |
+; ARM110P2-NEXT: nop |
+ |
} |