brintos

brintos / llvm-project-archived public Read only

0
0
Text · 9.9 KiB · 6d03491 Raw
154 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=icelake-server -instruction-tables < %s | FileCheck %s3 4vpopcntd    %xmm1, %xmm05vpopcntd    (%rdi), %xmm06vpopcntd    (%rdi){1to4}, %xmm07 8vpopcntd    %xmm1, %xmm0 {%k1}9vpopcntd    (%rdi), %xmm0 {%k1}10vpopcntd    (%rdi){1to4}, %xmm0 {%k1}11 12vpopcntd    %xmm1, %xmm0 {%k1} {z}13vpopcntd    (%rdi), %xmm0 {%k1} {z}14vpopcntd    (%rdi){1to4}, %xmm0 {%k1} {z}15 16vpopcntd    %ymm1, %ymm017vpopcntd    (%rdi), %ymm018vpopcntd    (%rdi){1to8}, %ymm019 20vpopcntd    %ymm1, %ymm0 {%k1}21vpopcntd    (%rdi), %ymm0 {%k1}22vpopcntd    (%rdi){1to8}, %ymm0 {%k1}23 24vpopcntd    %ymm1, %ymm0 {%k1} {z}25vpopcntd    (%rdi), %ymm0 {%k1} {z}26vpopcntd    (%rdi){1to8}, %ymm0 {%k1} {z}27 28vpopcntq    %xmm1, %xmm029vpopcntq    (%rdi), %xmm030vpopcntq    (%rdi){1to2}, %xmm031 32vpopcntq    %xmm1, %xmm0 {%k1}33vpopcntq    (%rdi), %xmm0 {%k1}34vpopcntq    (%rdi){1to2}, %xmm0 {%k1}35 36vpopcntq    %xmm1, %xmm0 {%k1} {z}37vpopcntq    (%rdi), %xmm0 {%k1} {z}38vpopcntq    (%rdi){1to2}, %xmm0 {%k1} {z}39 40vpopcntq    %ymm1, %ymm041vpopcntq    (%rdi), %ymm042vpopcntq    (%rdi){1to4}, %ymm043 44vpopcntq    %ymm1, %ymm0 {%k1}45vpopcntq    (%rdi), %ymm0 {%k1}46vpopcntq    (%rdi){1to4}, %ymm0 {%k1}47 48vpopcntq    %ymm1, %ymm0 {%k1} {z}49vpopcntq    (%rdi), %ymm0 {%k1} {z}50vpopcntq    (%rdi){1to4}, %ymm0 {%k1} {z}51 52# CHECK:      Instruction Info:53# CHECK-NEXT: [1]: #uOps54# CHECK-NEXT: [2]: Latency55# CHECK-NEXT: [3]: RThroughput56# CHECK-NEXT: [4]: MayLoad57# CHECK-NEXT: [5]: MayStore58# CHECK-NEXT: [6]: HasSideEffects (U)59 60# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:61# CHECK-NEXT:  1      1     0.50                        vpopcntd	%xmm1, %xmm062# CHECK-NEXT:  2      7     0.50    *                   vpopcntd	(%rdi), %xmm063# CHECK-NEXT:  2      7     0.50    *                   vpopcntd	(%rdi){1to4}, %xmm064# CHECK-NEXT:  1      1     0.50                        vpopcntd	%xmm1, %xmm0 {%k1}65# CHECK-NEXT:  2      7     0.50    *                   vpopcntd	(%rdi), %xmm0 {%k1}66# CHECK-NEXT:  2      7     0.50    *                   vpopcntd	(%rdi){1to4}, %xmm0 {%k1}67# CHECK-NEXT:  1      1     0.50                        vpopcntd	%xmm1, %xmm0 {%k1} {z}68# CHECK-NEXT:  2      7     0.50    *                   vpopcntd	(%rdi), %xmm0 {%k1} {z}69# CHECK-NEXT:  2      7     0.50    *                   vpopcntd	(%rdi){1to4}, %xmm0 {%k1} {z}70# CHECK-NEXT:  1      1     0.50                        vpopcntd	%ymm1, %ymm071# CHECK-NEXT:  2      8     0.50    *                   vpopcntd	(%rdi), %ymm072# CHECK-NEXT:  2      8     0.50    *                   vpopcntd	(%rdi){1to8}, %ymm073# CHECK-NEXT:  1      1     0.50                        vpopcntd	%ymm1, %ymm0 {%k1}74# CHECK-NEXT:  2      8     0.50    *                   vpopcntd	(%rdi), %ymm0 {%k1}75# CHECK-NEXT:  2      8     0.50    *                   vpopcntd	(%rdi){1to8}, %ymm0 {%k1}76# CHECK-NEXT:  1      1     0.50                        vpopcntd	%ymm1, %ymm0 {%k1} {z}77# CHECK-NEXT:  2      8     0.50    *                   vpopcntd	(%rdi), %ymm0 {%k1} {z}78# CHECK-NEXT:  2      8     0.50    *                   vpopcntd	(%rdi){1to8}, %ymm0 {%k1} {z}79# CHECK-NEXT:  1      1     0.50                        vpopcntq	%xmm1, %xmm080# CHECK-NEXT:  2      7     0.50    *                   vpopcntq	(%rdi), %xmm081# CHECK-NEXT:  2      7     0.50    *                   vpopcntq	(%rdi){1to2}, %xmm082# CHECK-NEXT:  1      1     0.50                        vpopcntq	%xmm1, %xmm0 {%k1}83# CHECK-NEXT:  2      7     0.50    *                   vpopcntq	(%rdi), %xmm0 {%k1}84# CHECK-NEXT:  2      7     0.50    *                   vpopcntq	(%rdi){1to2}, %xmm0 {%k1}85# CHECK-NEXT:  1      1     0.50                        vpopcntq	%xmm1, %xmm0 {%k1} {z}86# CHECK-NEXT:  2      7     0.50    *                   vpopcntq	(%rdi), %xmm0 {%k1} {z}87# CHECK-NEXT:  2      7     0.50    *                   vpopcntq	(%rdi){1to2}, %xmm0 {%k1} {z}88# CHECK-NEXT:  1      1     0.50                        vpopcntq	%ymm1, %ymm089# CHECK-NEXT:  2      8     0.50    *                   vpopcntq	(%rdi), %ymm090# CHECK-NEXT:  2      8     0.50    *                   vpopcntq	(%rdi){1to4}, %ymm091# CHECK-NEXT:  1      1     0.50                        vpopcntq	%ymm1, %ymm0 {%k1}92# CHECK-NEXT:  2      8     0.50    *                   vpopcntq	(%rdi), %ymm0 {%k1}93# CHECK-NEXT:  2      8     0.50    *                   vpopcntq	(%rdi){1to4}, %ymm0 {%k1}94# CHECK-NEXT:  1      1     0.50                        vpopcntq	%ymm1, %ymm0 {%k1} {z}95# CHECK-NEXT:  2      8     0.50    *                   vpopcntq	(%rdi), %ymm0 {%k1} {z}96# CHECK-NEXT:  2      8     0.50    *                   vpopcntq	(%rdi){1to4}, %ymm0 {%k1} {z}97 98# CHECK:      Resources:99# CHECK-NEXT: [0]   - ICXDivider100# CHECK-NEXT: [1]   - ICXFPDivider101# CHECK-NEXT: [2]   - ICXPort0102# CHECK-NEXT: [3]   - ICXPort1103# CHECK-NEXT: [4]   - ICXPort2104# CHECK-NEXT: [5]   - ICXPort3105# CHECK-NEXT: [6]   - ICXPort4106# CHECK-NEXT: [7]   - ICXPort5107# CHECK-NEXT: [8]   - ICXPort6108# CHECK-NEXT: [9]   - ICXPort7109# CHECK-NEXT: [10]  - ICXPort8110# CHECK-NEXT: [11]  - ICXPort9111 112# CHECK:      Resource pressure per iteration:113# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]114# CHECK-NEXT:  -      -     18.00  18.00  12.00  12.00   -      -      -      -      -      -115 116# CHECK:      Resource pressure by instruction:117# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    [10]   [11]   Instructions:118# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntd	%xmm1, %xmm0119# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi), %xmm0120# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi){1to4}, %xmm0121# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntd	%xmm1, %xmm0 {%k1}122# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi), %xmm0 {%k1}123# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi){1to4}, %xmm0 {%k1}124# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntd	%xmm1, %xmm0 {%k1} {z}125# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi), %xmm0 {%k1} {z}126# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi){1to4}, %xmm0 {%k1} {z}127# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntd	%ymm1, %ymm0128# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi), %ymm0129# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi){1to8}, %ymm0130# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntd	%ymm1, %ymm0 {%k1}131# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi), %ymm0 {%k1}132# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi){1to8}, %ymm0 {%k1}133# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntd	%ymm1, %ymm0 {%k1} {z}134# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi), %ymm0 {%k1} {z}135# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntd	(%rdi){1to8}, %ymm0 {%k1} {z}136# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntq	%xmm1, %xmm0137# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi), %xmm0138# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi){1to2}, %xmm0139# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntq	%xmm1, %xmm0 {%k1}140# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi), %xmm0 {%k1}141# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi){1to2}, %xmm0 {%k1}142# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntq	%xmm1, %xmm0 {%k1} {z}143# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi), %xmm0 {%k1} {z}144# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi){1to2}, %xmm0 {%k1} {z}145# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntq	%ymm1, %ymm0146# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi), %ymm0147# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi){1to4}, %ymm0148# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntq	%ymm1, %ymm0 {%k1}149# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi), %ymm0 {%k1}150# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi){1to4}, %ymm0 {%k1}151# CHECK-NEXT:  -      -     0.50   0.50    -      -      -      -      -      -      -      -     vpopcntq	%ymm1, %ymm0 {%k1} {z}152# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi), %ymm0 {%k1} {z}153# CHECK-NEXT:  -      -     0.50   0.50   0.50   0.50    -      -      -      -      -      -     vpopcntq	(%rdi){1to4}, %ymm0 {%k1} {z}154