[llvm] 088f3c8 - [llvm-mca] Add few ldm* instructions to cortex-a57 test case

Evgeny Leviant via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 22 06:21:58 PDT 2020


Author: Evgeny Leviant
Date: 2020-10-22T16:21:40+03:00
New Revision: 088f3c83cc8fad7765a4dfd386519ffa6799be6c

URL: https://github.com/llvm/llvm-project/commit/088f3c83cc8fad7765a4dfd386519ffa6799be6c
DIFF: https://github.com/llvm/llvm-project/commit/088f3c83cc8fad7765a4dfd386519ffa6799be6c.diff

LOG: [llvm-mca] Add few ldm* instructions to cortex-a57 test case

Added: 
    

Modified: 
    llvm/test/tools/llvm-mca/ARM/cortex-a57-memory-instructions.s

Removed: 
    


################################################################################
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]!


        


More information about the llvm-commits mailing list