From 088f3c83cc8fad7765a4dfd386519ffa6799be6c Mon Sep 17 00:00:00 2001 From: Evgeny Leviant Date: Thu, 22 Oct 2020 16:21:40 +0300 Subject: [PATCH] [llvm-mca] Add few ldm* instructions to cortex-a57 test case --- .../ARM/cortex-a57-memory-instructions.s | 38 ++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s b/llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s index 1ba3ce493c62..1def95ee1120 100644 --- a/llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s +++ b/llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s @@ -83,6 +83,18 @@ ldrsht r3, [r8], #-12 ldrsht r8, [r9], r5 ldrsht r2, [r1], -r4 + ldm r2, {r1, r2, r4, r5, r6} + ldmia r2, {r1, r2, r4, r5, r6} + ldmia r2, {r1, r3, r4, r5, r6} + ldmib r2, {r1, r2} + ldmdb r2, {r1, r2} + ldmib r2, {r1, r3} + ldmib r2, {r1, r3, r5} + ldmib r2, {r1, r2, r5} + ldmdbeq r2, {r1, r2} + ldmibeq r2, {r1, r3} + ldmia r2, {r0, r1, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15} + ldmia r2, {r0, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15} str r8, [r12] str r7, [r1, #12] str r3, [r5, #40]! @@ -229,6 +241,18 @@ # CHECK-NEXT: 2 4 1.00 * ldrsht r3, [r8], #-12 # CHECK-NEXT: 2 4 1.00 * ldrsht r8, [r9], r5 # CHECK-NEXT: 2 4 1.00 * ldrsht r2, [r1], -r4 +# CHECK-NEXT: 16 10 16.00 * ldm r2, {r1, r2, r4, r5, r6} +# CHECK-NEXT: 16 10 16.00 * ldm r2, {r1, r2, r4, r5, r6} +# CHECK-NEXT: 16 10 16.00 * ldm r2, {r1, r3, r4, r5, r6} +# CHECK-NEXT: 16 10 16.00 * ldmib r2, {r1, r2} +# CHECK-NEXT: 16 10 16.00 * ldmdb r2, {r1, r2} +# CHECK-NEXT: 16 10 16.00 * ldmib r2, {r1, r3} +# CHECK-NEXT: 16 10 16.00 * ldmib r2, {r1, r3, r5} +# CHECK-NEXT: 16 10 16.00 * ldmib r2, {r1, r2, r5} +# CHECK-NEXT: 16 10 16.00 * ldmdbeq r2, {r1, r2} +# CHECK-NEXT: 16 10 16.00 * ldmibeq r2, {r1, r3} +# CHECK-NEXT: 16 10 16.00 * ldm r2, {r0, r1, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, sp, lr, pc} +# CHECK-NEXT: 16 10 16.00 * ldm r2, {r0, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, sp, lr, pc} # CHECK-NEXT: 1 1 1.00 * str r8, [r12] # CHECK-NEXT: 1 1 1.00 * str r7, [r1, #12] # CHECK-NEXT: 2 1 1.00 * str r3, [r5, #40]! @@ -297,7 +321,7 @@ # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] -# CHECK-NEXT: - 44.50 44.50 92.00 8.00 55.00 - - +# CHECK-NEXT: - 44.50 44.50 284.00 8.00 55.00 - - # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1.0] [1.1] [2] [3] [4] [5] [6] Instructions: @@ -382,6 +406,18 @@ # CHECK-NEXT: - 0.50 0.50 1.00 - - - - ldrsht r3, [r8], #-12 # CHECK-NEXT: - 0.50 0.50 1.00 - - - - ldrsht r8, [r9], r5 # CHECK-NEXT: - 0.50 0.50 1.00 - - - - ldrsht r2, [r1], -r4 +# CHECK-NEXT: - - - 16.00 - - - - ldm r2, {r1, r2, r4, r5, r6} +# CHECK-NEXT: - - - 16.00 - - - - ldm r2, {r1, r2, r4, r5, r6} +# CHECK-NEXT: - - - 16.00 - - - - ldm r2, {r1, r3, r4, r5, r6} +# CHECK-NEXT: - - - 16.00 - - - - ldmib r2, {r1, r2} +# CHECK-NEXT: - - - 16.00 - - - - ldmdb r2, {r1, r2} +# CHECK-NEXT: - - - 16.00 - - - - ldmib r2, {r1, r3} +# CHECK-NEXT: - - - 16.00 - - - - ldmib r2, {r1, r3, r5} +# CHECK-NEXT: - - - 16.00 - - - - ldmib r2, {r1, r2, r5} +# CHECK-NEXT: - - - 16.00 - - - - ldmdbeq r2, {r1, r2} +# CHECK-NEXT: - - - 16.00 - - - - ldmibeq r2, {r1, r3} +# CHECK-NEXT: - - - 16.00 - - - - ldm r2, {r0, r1, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, sp, lr, pc} +# CHECK-NEXT: - - - 16.00 - - - - ldm r2, {r0, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, sp, lr, pc} # CHECK-NEXT: - - - - - 1.00 - - str r8, [r12] # CHECK-NEXT: - - - - - 1.00 - - str r7, [r1, #12] # CHECK-NEXT: - 0.50 0.50 - - 1.00 - - str r3, [r5, #40]!