brintos

brintos / llvm-project-archived public Read only

0
0
Text · 9.1 KiB · f1c25f7 Raw
133 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=riscv64 -mcpu=sifive-x390 -instruction-tables=full -iterations=1 < %s | FileCheck %s3 4vsetvli zero, zero, e32, m1, tu, mu5 6vlse8.v  v1, (a1), a27vlse16.v v1, (a1), a28vlse32.v v1, (a1), a29vlse64.v v1, (a1), a210 11vlse8.v  v1, (a1), zero12vlse16.v v1, (a1), zero13vlse32.v v1, (a1), zero14vlse64.v v1, (a1), zero15 16vle8.v  v1, (a1)17vle16.v v1, (a1)18vle32.v v1, (a1)19vle64.v v1, (a1)20 21vsetvli zero, zero, e64, m1, tu, mu22 23vlse8.v  v1, (a1), a224vlse16.v v1, (a1), a225vlse32.v v1, (a1), a226vlse64.v v1, (a1), a227 28vlse8.v  v1, (a1), zero29vlse16.v v1, (a1), zero30vlse32.v v1, (a1), zero31vlse64.v v1, (a1), zero32 33vle8.v  v1, (a1)34vle16.v v1, (a1)35vle32.v v1, (a1)36vle64.v v1, (a1)37 38# CHECK:      Resources:39# CHECK-NEXT: [0]   - VLEN1024X300SiFive7FDiv:140# CHECK-NEXT: [1]   - VLEN1024X300SiFive7IDiv:141# CHECK-NEXT: [2]   - VLEN1024X300SiFive7PipeA:142# CHECK-NEXT: [3]   - VLEN1024X300SiFive7PipeAB:2 VLEN1024X300SiFive7PipeA, VLEN1024X300SiFive7PipeB43# CHECK-NEXT: [4]   - VLEN1024X300SiFive7PipeB:144# CHECK-NEXT: [5]   - VLEN1024X300SiFive7VA1:145# CHECK-NEXT: [6]   - VLEN1024X300SiFive7VA1OrVA2:2 VLEN1024X300SiFive7VA1, VLEN1024X300SiFive7VA246# CHECK-NEXT: [7]   - VLEN1024X300SiFive7VA2:147# CHECK-NEXT: [8]   - VLEN1024X300SiFive7VCQ:148# CHECK-NEXT: [9]   - VLEN1024X300SiFive7VL:149# CHECK-NEXT: [10]  - VLEN1024X300SiFive7VS:150 51# CHECK:      Instruction Info:52# CHECK-NEXT: [1]: #uOps53# CHECK-NEXT: [2]: Latency54# CHECK-NEXT: [3]: RThroughput55# CHECK-NEXT: [4]: MayLoad56# CHECK-NEXT: [5]: MayStore57# CHECK-NEXT: [6]: HasSideEffects (U)58# CHECK-NEXT: [7]: Bypass Latency59# CHECK-NEXT: [8]: Resources (<Name> | <Name>[<ReleaseAtCycle>] | <Name>[<AcquireAtCycle>,<ReleaseAtCycle])60# CHECK-NEXT: [9]: LLVM Opcode Name61 62# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]                                        [9]                        Instructions:63# CHECK-NEXT:  1      3     1.00                  U      1     VLEN1024X300SiFive7PipeA,VLEN1024X300SiFive7PipeAB VSETVLI            vsetvli	zero, zero, e32, m1, tu, mu64# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE8_V            vlse8.v	v1, (a1), a265# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE16_V           vlse16.v	v1, (a1), a266# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE32_V           vlse32.v	v1, (a1), a267# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE64_V           vlse64.v	v1, (a1), a268# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE8_V            vlse8.v	v1, (a1), zero69# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE16_V           vlse16.v	v1, (a1), zero70# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE32_V           vlse32.v	v1, (a1), zero71# CHECK-NEXT:  1      35    32.00   *                    35    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,33] VLSE64_V           vlse64.v	v1, (a1), zero72# CHECK-NEXT:  1      4     1.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,2] VLE8_V              vle8.v	v1, (a1)73# CHECK-NEXT:  1      4     1.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,2] VLE16_V             vle16.v	v1, (a1)74# CHECK-NEXT:  1      4     2.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,3] VLE32_V             vle32.v	v1, (a1)75# CHECK-NEXT:  1      4     4.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,5] VLE64_V             vle64.v	v1, (a1)76# CHECK-NEXT:  1      3     1.00                  U      1     VLEN1024X300SiFive7PipeA,VLEN1024X300SiFive7PipeAB VSETVLI            vsetvli	zero, zero, e64, m1, tu, mu77# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE8_V            vlse8.v	v1, (a1), a278# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE16_V           vlse16.v	v1, (a1), a279# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE32_V           vlse32.v	v1, (a1), a280# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE64_V           vlse64.v	v1, (a1), a281# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE8_V            vlse8.v	v1, (a1), zero82# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE16_V           vlse16.v	v1, (a1), zero83# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE32_V           vlse32.v	v1, (a1), zero84# CHECK-NEXT:  1      19    16.00   *                    19    VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,17] VLSE64_V           vlse64.v	v1, (a1), zero85# CHECK-NEXT:  1      4     1.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,2] VLE8_V              vle8.v	v1, (a1)86# CHECK-NEXT:  1      4     1.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,2] VLE16_V             vle16.v	v1, (a1)87# CHECK-NEXT:  1      4     1.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,2] VLE32_V             vle32.v	v1, (a1)88# CHECK-NEXT:  1      4     2.00    *                    4     VLEN1024X300SiFive7VCQ,VLEN1024X300SiFive7VL[1,3] VLE64_V             vle64.v	v1, (a1)89 90# CHECK:      Resources:91# CHECK-NEXT: [0]   - VLEN1024X300SiFive7FDiv92# CHECK-NEXT: [1]   - VLEN1024X300SiFive7IDiv93# CHECK-NEXT: [2]   - VLEN1024X300SiFive7PipeA94# CHECK-NEXT: [3]   - VLEN1024X300SiFive7PipeB95# CHECK-NEXT: [4]   - VLEN1024X300SiFive7VA196# CHECK-NEXT: [5]   - VLEN1024X300SiFive7VA297# CHECK-NEXT: [6]   - VLEN1024X300SiFive7VCQ98# CHECK-NEXT: [7]   - VLEN1024X300SiFive7VL99# CHECK-NEXT: [8]   - VLEN1024X300SiFive7VS100 101# CHECK:      Resource pressure per iteration:102# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]103# CHECK-NEXT:  -      -     2.00    -      -      -     24.00  421.00  -104 105# CHECK:      Resource pressure by instruction:106# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    Instructions:107# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -     vsetvli	zero, zero, e32, m1, tu, mu108# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse8.v	v1, (a1), a2109# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse16.v	v1, (a1), a2110# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse32.v	v1, (a1), a2111# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse64.v	v1, (a1), a2112# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse8.v	v1, (a1), zero113# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse16.v	v1, (a1), zero114# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse32.v	v1, (a1), zero115# CHECK-NEXT:  -      -      -      -      -      -     1.00   33.00   -     vlse64.v	v1, (a1), zero116# CHECK-NEXT:  -      -      -      -      -      -     1.00   2.00    -     vle8.v	v1, (a1)117# CHECK-NEXT:  -      -      -      -      -      -     1.00   2.00    -     vle16.v	v1, (a1)118# CHECK-NEXT:  -      -      -      -      -      -     1.00   3.00    -     vle32.v	v1, (a1)119# CHECK-NEXT:  -      -      -      -      -      -     1.00   5.00    -     vle64.v	v1, (a1)120# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -     vsetvli	zero, zero, e64, m1, tu, mu121# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse8.v	v1, (a1), a2122# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse16.v	v1, (a1), a2123# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse32.v	v1, (a1), a2124# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse64.v	v1, (a1), a2125# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse8.v	v1, (a1), zero126# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse16.v	v1, (a1), zero127# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse32.v	v1, (a1), zero128# CHECK-NEXT:  -      -      -      -      -      -     1.00   17.00   -     vlse64.v	v1, (a1), zero129# CHECK-NEXT:  -      -      -      -      -      -     1.00   2.00    -     vle8.v	v1, (a1)130# CHECK-NEXT:  -      -      -      -      -      -     1.00   2.00    -     vle16.v	v1, (a1)131# CHECK-NEXT:  -      -      -      -      -      -     1.00   2.00    -     vle32.v	v1, (a1)132# CHECK-NEXT:  -      -      -      -      -      -     1.00   3.00    -     vle64.v	v1, (a1)133