[llvm] r332595 - [llvm-mca][X86] Add ADX test files

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Thu May 17 04:32:38 PDT 2018


Author: rksimon
Date: Thu May 17 04:32:38 2018
New Revision: 332595

URL: http://llvm.org/viewvc/llvm-project?rev=332595&view=rev
Log:
[llvm-mca][X86] Add ADX test files

Added:
    llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-adx.s
    llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-adx.s
    llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-adx.s
    llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-adx.s

Added: llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-adx.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-adx.s?rev=332595&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-adx.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/Broadwell/resources-adx.s Thu May 17 04:32:38 2018
@@ -0,0 +1,58 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=broadwell -instruction-tables < %s | FileCheck %s
+
+adcx        %ebx, %ecx
+adcx        (%rbx), %ecx
+adcx        %rbx, %rcx
+adcx        (%rbx), %rcx
+
+adox        %ebx, %ecx
+adox        (%rbx), %ecx
+adox        %rbx, %rcx
+adox        (%rbx), %rcx
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.50                        adcxl	%ebx, %ecx
+# CHECK-NEXT:  2      6     0.50    *                   adcxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.50                        adcxq	%rbx, %rcx
+# CHECK-NEXT:  2      6     0.50    *                   adcxq	(%rbx), %rcx
+# CHECK-NEXT:  1      1     0.50                        adoxl	%ebx, %ecx
+# CHECK-NEXT:  2      6     0.50    *                   adoxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.50                        adoxq	%rbx, %rcx
+# CHECK-NEXT:  2      6     0.50    *                   adoxq	(%rbx), %rcx
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0]   - BWDivider
+# CHECK-NEXT: [1]   - BWFPDivider
+# CHECK-NEXT: [2]   - BWPort0
+# CHECK-NEXT: [3]   - BWPort1
+# CHECK-NEXT: [4]   - BWPort2
+# CHECK-NEXT: [5]   - BWPort3
+# CHECK-NEXT: [6]   - BWPort4
+# CHECK-NEXT: [7]   - BWPort5
+# CHECK-NEXT: [8]   - BWPort6
+# CHECK-NEXT: [9]   - BWPort7
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
+# CHECK-NEXT:  -      -     4.00    -     2.00   2.00    -      -     4.00    -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adcxl	%ebx, %ecx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adcxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adcxq	%rbx, %rcx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adcxq	(%rbx), %rcx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adoxl	%ebx, %ecx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adoxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adoxq	%rbx, %rcx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adoxq	(%rbx), %rcx
+

Added: llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-adx.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-adx.s?rev=332595&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-adx.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/SkylakeClient/resources-adx.s Thu May 17 04:32:38 2018
@@ -0,0 +1,58 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake -instruction-tables < %s | FileCheck %s
+
+adcx        %ebx, %ecx
+adcx        (%rbx), %ecx
+adcx        %rbx, %rcx
+adcx        (%rbx), %rcx
+
+adox        %ebx, %ecx
+adox        (%rbx), %ecx
+adox        %rbx, %rcx
+adox        (%rbx), %rcx
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.50                        adcxl	%ebx, %ecx
+# CHECK-NEXT:  2      6     0.50    *                   adcxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.50                        adcxq	%rbx, %rcx
+# CHECK-NEXT:  2      6     0.50    *                   adcxq	(%rbx), %rcx
+# CHECK-NEXT:  1      1     0.50                        adoxl	%ebx, %ecx
+# CHECK-NEXT:  2      6     0.50    *                   adoxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.50                        adoxq	%rbx, %rcx
+# CHECK-NEXT:  2      6     0.50    *                   adoxq	(%rbx), %rcx
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0]   - SKLDivider
+# CHECK-NEXT: [1]   - SKLFPDivider
+# CHECK-NEXT: [2]   - SKLPort0
+# CHECK-NEXT: [3]   - SKLPort1
+# CHECK-NEXT: [4]   - SKLPort2
+# CHECK-NEXT: [5]   - SKLPort3
+# CHECK-NEXT: [6]   - SKLPort4
+# CHECK-NEXT: [7]   - SKLPort5
+# CHECK-NEXT: [8]   - SKLPort6
+# CHECK-NEXT: [9]   - SKLPort7
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
+# CHECK-NEXT:  -      -     4.00    -     2.00   2.00    -      -     4.00    -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adcxl	%ebx, %ecx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adcxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adcxq	%rbx, %rcx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adcxq	(%rbx), %rcx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adoxl	%ebx, %ecx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adoxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adoxq	%rbx, %rcx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adoxq	(%rbx), %rcx
+

Added: llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-adx.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-adx.s?rev=332595&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-adx.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/SkylakeServer/resources-adx.s Thu May 17 04:32:38 2018
@@ -0,0 +1,58 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -instruction-tables < %s | FileCheck %s
+
+adcx        %ebx, %ecx
+adcx        (%rbx), %ecx
+adcx        %rbx, %rcx
+adcx        (%rbx), %rcx
+
+adox        %ebx, %ecx
+adox        (%rbx), %ecx
+adox        %rbx, %rcx
+adox        (%rbx), %rcx
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.50                        adcxl	%ebx, %ecx
+# CHECK-NEXT:  2      6     0.50    *                   adcxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.50                        adcxq	%rbx, %rcx
+# CHECK-NEXT:  2      6     0.50    *                   adcxq	(%rbx), %rcx
+# CHECK-NEXT:  1      1     0.50                        adoxl	%ebx, %ecx
+# CHECK-NEXT:  2      6     0.50    *                   adoxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.50                        adoxq	%rbx, %rcx
+# CHECK-NEXT:  2      6     0.50    *                   adoxq	(%rbx), %rcx
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0]   - SKXDivider
+# CHECK-NEXT: [1]   - SKXFPDivider
+# CHECK-NEXT: [2]   - SKXPort0
+# CHECK-NEXT: [3]   - SKXPort1
+# CHECK-NEXT: [4]   - SKXPort2
+# CHECK-NEXT: [5]   - SKXPort3
+# CHECK-NEXT: [6]   - SKXPort4
+# CHECK-NEXT: [7]   - SKXPort5
+# CHECK-NEXT: [8]   - SKXPort6
+# CHECK-NEXT: [9]   - SKXPort7
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
+# CHECK-NEXT:  -      -     4.00    -     2.00   2.00    -      -     4.00    -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adcxl	%ebx, %ecx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adcxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adcxq	%rbx, %rcx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adcxq	(%rbx), %rcx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adoxl	%ebx, %ecx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adoxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.50    -      -      -      -      -     0.50    -     adoxq	%rbx, %rcx
+# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -      -     0.50    -     adoxq	(%rbx), %rcx
+

Added: llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-adx.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-adx.s?rev=332595&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-adx.s (added)
+++ llvm/trunk/test/tools/llvm-mca/X86/Znver1/resources-adx.s Thu May 17 04:32:38 2018
@@ -0,0 +1,60 @@
+# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
+# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=znver1 -instruction-tables < %s | FileCheck %s
+
+adcx        %ebx, %ecx
+adcx        (%rbx), %ecx
+adcx        %rbx, %rcx
+adcx        (%rbx), %rcx
+
+adox        %ebx, %ecx
+adox        (%rbx), %ecx
+adox        %rbx, %rcx
+adox        (%rbx), %rcx
+
+# CHECK:      Instruction Info:
+# CHECK-NEXT: [1]: #uOps
+# CHECK-NEXT: [2]: Latency
+# CHECK-NEXT: [3]: RThroughput
+# CHECK-NEXT: [4]: MayLoad
+# CHECK-NEXT: [5]: MayStore
+# CHECK-NEXT: [6]: HasSideEffects
+
+# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
+# CHECK-NEXT:  1      1     0.25                        adcxl	%ebx, %ecx
+# CHECK-NEXT:  2      5     0.50    *                   adcxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.25                        adcxq	%rbx, %rcx
+# CHECK-NEXT:  2      5     0.50    *                   adcxq	(%rbx), %rcx
+# CHECK-NEXT:  1      1     0.25                        adoxl	%ebx, %ecx
+# CHECK-NEXT:  2      5     0.50    *                   adoxl	(%rbx), %ecx
+# CHECK-NEXT:  1      1     0.25                        adoxq	%rbx, %rcx
+# CHECK-NEXT:  2      5     0.50    *                   adoxq	(%rbx), %rcx
+
+# CHECK:      Resources:
+# CHECK-NEXT: [0]   - ZnAGU0
+# CHECK-NEXT: [1]   - ZnAGU1
+# CHECK-NEXT: [2]   - ZnALU0
+# CHECK-NEXT: [3]   - ZnALU1
+# CHECK-NEXT: [4]   - ZnALU2
+# CHECK-NEXT: [5]   - ZnALU3
+# CHECK-NEXT: [6]   - ZnDivider
+# CHECK-NEXT: [7]   - ZnFPU0
+# CHECK-NEXT: [8]   - ZnFPU1
+# CHECK-NEXT: [9]   - ZnFPU2
+# CHECK-NEXT: [10]  - ZnFPU3
+# CHECK-NEXT: [11]  - ZnMultiplier
+
+# CHECK:      Resource pressure per iteration:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]
+# CHECK-NEXT: 2.00   2.00   2.00   2.00   2.00   2.00    -      -      -      -      -      -
+
+# CHECK:      Resource pressure by instruction:
+# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adcxl	%ebx, %ecx
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     adcxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adcxq	%rbx, %rcx
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     adcxq	(%rbx), %rcx
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adoxl	%ebx, %ecx
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     adoxl	(%rbx), %ecx
+# CHECK-NEXT:  -      -     0.25   0.25   0.25   0.25    -      -      -      -      -      -     adoxq	%rbx, %rcx
+# CHECK-NEXT: 0.50   0.50   0.25   0.25   0.25   0.25    -      -      -      -      -      -     adoxq	(%rbx), %rcx
+




More information about the llvm-commits mailing list