brintos

brintos / llvm-project-archived public Read only

0
0
Text · 11.8 KiB · 905e1ae Raw
241 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=atom -timeline -register-file-stats -iterations=1 < %s | FileCheck %s3 4subl  %eax, %eax5subq  %rax, %rax6xorl  %eax, %eax7xorq  %rax, %rax8 9pcmpgtb   %mm2, %mm210pcmpgtd   %mm2, %mm211# pcmpgtq   %mm2, %mm2 # invalid operand for instruction12pcmpgtw   %mm2, %mm213 14pcmpgtb   %xmm2, %xmm215pcmpgtd   %xmm2, %xmm216pcmpgtq   %xmm2, %xmm217pcmpgtw   %xmm2, %xmm218 19psubb   %mm2, %mm220psubd   %mm2, %mm221psubq   %mm2, %mm222psubw   %mm2, %mm223psubb   %xmm2, %xmm224psubd   %xmm2, %xmm225psubq   %xmm2, %xmm226psubw   %xmm2, %xmm227 28psubsb   %mm2, %mm229psubsw   %mm2, %mm230psubsb   %xmm2, %xmm231psubsw   %xmm2, %xmm232 33psubusb   %mm2, %mm234psubusw   %mm2, %mm235psubusb   %xmm2, %xmm236psubusw   %xmm2, %xmm237 38andnps  %xmm0, %xmm039andnpd  %xmm1, %xmm140pandn   %mm2, %mm241pandn   %xmm2, %xmm242vpandn  %xmm3, %xmm3, %xmm343 44xorps  %xmm0, %xmm045xorpd  %xmm1, %xmm146pxor   %mm2, %mm247pxor   %xmm2, %xmm248 49# CHECK:      Iterations:        150# CHECK-NEXT: Instructions:      3651# CHECK-NEXT: Total Cycles:      2652# CHECK-NEXT: Total uOps:        3653 54# CHECK:      Dispatch Width:    255# CHECK-NEXT: uOps Per Cycle:    1.3856# CHECK-NEXT: IPC:               1.3857# CHECK-NEXT: Block RThroughput: 19.058 59# CHECK:      Instruction Info:60# CHECK-NEXT: [1]: #uOps61# CHECK-NEXT: [2]: Latency62# CHECK-NEXT: [3]: RThroughput63# CHECK-NEXT: [4]: MayLoad64# CHECK-NEXT: [5]: MayStore65# CHECK-NEXT: [6]: HasSideEffects (U)66 67# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:68# CHECK-NEXT:  1      1     0.50                        subl	%eax, %eax69# CHECK-NEXT:  1      1     0.50                        subq	%rax, %rax70# CHECK-NEXT:  1      1     0.50                        xorl	%eax, %eax71# CHECK-NEXT:  1      1     0.50                        xorq	%rax, %rax72# CHECK-NEXT:  1      1     0.50                        pcmpgtb	%mm2, %mm273# CHECK-NEXT:  1      1     0.50                        pcmpgtd	%mm2, %mm274# CHECK-NEXT:  1      1     0.50                        pcmpgtw	%mm2, %mm275# CHECK-NEXT:  1      1     0.50                        pcmpgtb	%xmm2, %xmm276# CHECK-NEXT:  1      1     0.50                        pcmpgtd	%xmm2, %xmm277# CHECK-NEXT:  1      1     0.50                        pcmpgtq	%xmm2, %xmm278# CHECK-NEXT:  1      1     0.50                        pcmpgtw	%xmm2, %xmm279# CHECK-NEXT:  1      1     0.50                        psubb	%mm2, %mm280# CHECK-NEXT:  1      1     0.50                        psubd	%mm2, %mm281# CHECK-NEXT:  1      2     1.00                        psubq	%mm2, %mm282# CHECK-NEXT:  1      1     0.50                        psubw	%mm2, %mm283# CHECK-NEXT:  1      1     0.50                        psubb	%xmm2, %xmm284# CHECK-NEXT:  1      1     0.50                        psubd	%xmm2, %xmm285# CHECK-NEXT:  1      2     1.00                        psubq	%xmm2, %xmm286# CHECK-NEXT:  1      1     0.50                        psubw	%xmm2, %xmm287# CHECK-NEXT:  1      1     0.50                        psubsb	%mm2, %mm288# CHECK-NEXT:  1      1     0.50                        psubsw	%mm2, %mm289# CHECK-NEXT:  1      1     0.50                        psubsb	%xmm2, %xmm290# CHECK-NEXT:  1      1     0.50                        psubsw	%xmm2, %xmm291# CHECK-NEXT:  1      1     0.50                        psubusb	%mm2, %mm292# CHECK-NEXT:  1      1     0.50                        psubusw	%mm2, %mm293# CHECK-NEXT:  1      1     0.50                        psubusb	%xmm2, %xmm294# CHECK-NEXT:  1      1     0.50                        psubusw	%xmm2, %xmm295# CHECK-NEXT:  1      1     0.50                        andnps	%xmm0, %xmm096# CHECK-NEXT:  1      1     0.50                        andnpd	%xmm1, %xmm197# CHECK-NEXT:  1      1     0.50                        pandn	%mm2, %mm298# CHECK-NEXT:  1      1     0.50                        pandn	%xmm2, %xmm299# CHECK-NEXT:  1      1     0.50                        vpandn	%xmm3, %xmm3, %xmm3100# CHECK-NEXT:  1      1     0.50                        xorps	%xmm0, %xmm0101# CHECK-NEXT:  1      1     0.50                        xorpd	%xmm1, %xmm1102# CHECK-NEXT:  1      1     0.50                        pxor	%mm2, %mm2103# CHECK-NEXT:  1      1     0.50                        pxor	%xmm2, %xmm2104 105# CHECK:      Register File statistics:106# CHECK-NEXT: Total number of mappings created:    40107# CHECK-NEXT: Max number of mappings used:         3108 109# CHECK:      Resources:110# CHECK-NEXT: [0]   - AtomPort0111# CHECK-NEXT: [1]   - AtomPort1112 113# CHECK:      Resource pressure per iteration:114# CHECK-NEXT: [0]    [1]115# CHECK-NEXT: 20.00  18.00116 117# CHECK:      Resource pressure by instruction:118# CHECK-NEXT: [0]    [1]    Instructions:119# CHECK-NEXT:  -     1.00   subl	%eax, %eax120# CHECK-NEXT: 1.00    -     subq	%rax, %rax121# CHECK-NEXT:  -     1.00   xorl	%eax, %eax122# CHECK-NEXT: 1.00    -     xorq	%rax, %rax123# CHECK-NEXT:  -     1.00   pcmpgtb	%mm2, %mm2124# CHECK-NEXT: 1.00    -     pcmpgtd	%mm2, %mm2125# CHECK-NEXT:  -     1.00   pcmpgtw	%mm2, %mm2126# CHECK-NEXT: 1.00    -     pcmpgtb	%xmm2, %xmm2127# CHECK-NEXT:  -     1.00   pcmpgtd	%xmm2, %xmm2128# CHECK-NEXT: 1.00    -     pcmpgtq	%xmm2, %xmm2129# CHECK-NEXT:  -     1.00   pcmpgtw	%xmm2, %xmm2130# CHECK-NEXT: 1.00    -     psubb	%mm2, %mm2131# CHECK-NEXT:  -     1.00   psubd	%mm2, %mm2132# CHECK-NEXT: 2.00    -     psubq	%mm2, %mm2133# CHECK-NEXT:  -     1.00   psubw	%mm2, %mm2134# CHECK-NEXT: 1.00    -     psubb	%xmm2, %xmm2135# CHECK-NEXT:  -     1.00   psubd	%xmm2, %xmm2136# CHECK-NEXT: 2.00    -     psubq	%xmm2, %xmm2137# CHECK-NEXT:  -     1.00   psubw	%xmm2, %xmm2138# CHECK-NEXT: 1.00    -     psubsb	%mm2, %mm2139# CHECK-NEXT:  -     1.00   psubsw	%mm2, %mm2140# CHECK-NEXT: 1.00    -     psubsb	%xmm2, %xmm2141# CHECK-NEXT:  -     1.00   psubsw	%xmm2, %xmm2142# CHECK-NEXT: 1.00    -     psubusb	%mm2, %mm2143# CHECK-NEXT:  -     1.00   psubusw	%mm2, %mm2144# CHECK-NEXT: 1.00    -     psubusb	%xmm2, %xmm2145# CHECK-NEXT:  -     1.00   psubusw	%xmm2, %xmm2146# CHECK-NEXT: 1.00    -     andnps	%xmm0, %xmm0147# CHECK-NEXT:  -     1.00   andnpd	%xmm1, %xmm1148# CHECK-NEXT: 1.00    -     pandn	%mm2, %mm2149# CHECK-NEXT:  -     1.00   pandn	%xmm2, %xmm2150# CHECK-NEXT: 1.00    -     vpandn	%xmm3, %xmm3, %xmm3151# CHECK-NEXT:  -     1.00   xorps	%xmm0, %xmm0152# CHECK-NEXT: 1.00    -     xorpd	%xmm1, %xmm1153# CHECK-NEXT:  -     1.00   pxor	%mm2, %mm2154# CHECK-NEXT: 1.00    -     pxor	%xmm2, %xmm2155 156# CHECK:      Timeline view:157# CHECK-NEXT:                     0123456789158# CHECK-NEXT: Index     0123456789          012345159 160# CHECK:      [0,0]     DE   .    .    .    .    .   subl	%eax, %eax161# CHECK-NEXT: [0,1]     .DE  .    .    .    .    .   subq	%rax, %rax162# CHECK-NEXT: [0,2]     . DE .    .    .    .    .   xorl	%eax, %eax163# CHECK-NEXT: [0,3]     .  DE.    .    .    .    .   xorq	%rax, %rax164# CHECK-NEXT: [0,4]     .  DE.    .    .    .    .   pcmpgtb	%mm2, %mm2165# CHECK-NEXT: [0,5]     .   DE    .    .    .    .   pcmpgtd	%mm2, %mm2166# CHECK-NEXT: [0,6]     .    DE   .    .    .    .   pcmpgtw	%mm2, %mm2167# CHECK-NEXT: [0,7]     .    DE   .    .    .    .   pcmpgtb	%xmm2, %xmm2168# CHECK-NEXT: [0,8]     .    .DE  .    .    .    .   pcmpgtd	%xmm2, %xmm2169# CHECK-NEXT: [0,9]     .    . DE .    .    .    .   pcmpgtq	%xmm2, %xmm2170# CHECK-NEXT: [0,10]    .    .  DE.    .    .    .   pcmpgtw	%xmm2, %xmm2171# CHECK-NEXT: [0,11]    .    .  DE.    .    .    .   psubb	%mm2, %mm2172# CHECK-NEXT: [0,12]    .    .   DE    .    .    .   psubd	%mm2, %mm2173# CHECK-NEXT: [0,13]    .    .    DeE  .    .    .   psubq	%mm2, %mm2174# CHECK-NEXT: [0,14]    .    .    . DE .    .    .   psubw	%mm2, %mm2175# CHECK-NEXT: [0,15]    .    .    . DE .    .    .   psubb	%xmm2, %xmm2176# CHECK-NEXT: [0,16]    .    .    .  DE.    .    .   psubd	%xmm2, %xmm2177# CHECK-NEXT: [0,17]    .    .    .   DeE   .    .   psubq	%xmm2, %xmm2178# CHECK-NEXT: [0,18]    .    .    .    .DE  .    .   psubw	%xmm2, %xmm2179# CHECK-NEXT: [0,19]    .    .    .    .DE  .    .   psubsb	%mm2, %mm2180# CHECK-NEXT: [0,20]    .    .    .    . DE .    .   psubsw	%mm2, %mm2181# CHECK-NEXT: [0,21]    .    .    .    . DE .    .   psubsb	%xmm2, %xmm2182# CHECK-NEXT: [0,22]    .    .    .    .  DE.    .   psubsw	%xmm2, %xmm2183# CHECK-NEXT: [0,23]    .    .    .    .  DE.    .   psubusb	%mm2, %mm2184# CHECK-NEXT: [0,24]    .    .    .    .   DE    .   psubusw	%mm2, %mm2185# CHECK-NEXT: [0,25]    .    .    .    .   DE    .   psubusb	%xmm2, %xmm2186# CHECK-NEXT: [0,26]    .    .    .    .    DE   .   psubusw	%xmm2, %xmm2187# CHECK-NEXT: [0,27]    .    .    .    .    DE   .   andnps	%xmm0, %xmm0188# CHECK-NEXT: [0,28]    .    .    .    .    .DE  .   andnpd	%xmm1, %xmm1189# CHECK-NEXT: [0,29]    .    .    .    .    .DE  .   pandn	%mm2, %mm2190# CHECK-NEXT: [0,30]    .    .    .    .    . DE .   pandn	%xmm2, %xmm2191# CHECK-NEXT: [0,31]    .    .    .    .    . DE .   vpandn	%xmm3, %xmm3, %xmm3192# CHECK-NEXT: [0,32]    .    .    .    .    .  DE.   xorps	%xmm0, %xmm0193# CHECK-NEXT: [0,33]    .    .    .    .    .  DE.   xorpd	%xmm1, %xmm1194# CHECK-NEXT: [0,34]    .    .    .    .    .   DE   pxor	%mm2, %mm2195# CHECK-NEXT: [0,35]    .    .    .    .    .   DE   pxor	%xmm2, %xmm2196 197# CHECK:      Average Wait times (based on the timeline view):198# CHECK-NEXT: [0]: Executions199# CHECK-NEXT: [1]: Average time spent waiting in a scheduler's queue200# CHECK-NEXT: [2]: Average time spent waiting in a scheduler's queue while ready201# CHECK-NEXT: [3]: Average time elapsed from WB until retire stage202 203# CHECK:            [0]    [1]    [2]    [3]204# CHECK-NEXT: 0.     1     0.0    0.0    0.0       subl	%eax, %eax205# CHECK-NEXT: 1.     1     0.0    0.0    0.0       subq	%rax, %rax206# CHECK-NEXT: 2.     1     0.0    0.0    0.0       xorl	%eax, %eax207# CHECK-NEXT: 3.     1     0.0    0.0    0.0       xorq	%rax, %rax208# CHECK-NEXT: 4.     1     0.0    0.0    0.0       pcmpgtb	%mm2, %mm2209# CHECK-NEXT: 5.     1     0.0    0.0    0.0       pcmpgtd	%mm2, %mm2210# CHECK-NEXT: 6.     1     0.0    0.0    0.0       pcmpgtw	%mm2, %mm2211# CHECK-NEXT: 7.     1     0.0    0.0    0.0       pcmpgtb	%xmm2, %xmm2212# CHECK-NEXT: 8.     1     0.0    0.0    0.0       pcmpgtd	%xmm2, %xmm2213# CHECK-NEXT: 9.     1     0.0    0.0    0.0       pcmpgtq	%xmm2, %xmm2214# CHECK-NEXT: 10.    1     0.0    0.0    0.0       pcmpgtw	%xmm2, %xmm2215# CHECK-NEXT: 11.    1     0.0    0.0    0.0       psubb	%mm2, %mm2216# CHECK-NEXT: 12.    1     0.0    0.0    0.0       psubd	%mm2, %mm2217# CHECK-NEXT: 13.    1     0.0    0.0    0.0       psubq	%mm2, %mm2218# CHECK-NEXT: 14.    1     0.0    0.0    0.0       psubw	%mm2, %mm2219# CHECK-NEXT: 15.    1     0.0    0.0    0.0       psubb	%xmm2, %xmm2220# CHECK-NEXT: 16.    1     0.0    0.0    0.0       psubd	%xmm2, %xmm2221# CHECK-NEXT: 17.    1     0.0    0.0    0.0       psubq	%xmm2, %xmm2222# CHECK-NEXT: 18.    1     0.0    0.0    0.0       psubw	%xmm2, %xmm2223# CHECK-NEXT: 19.    1     0.0    0.0    0.0       psubsb	%mm2, %mm2224# CHECK-NEXT: 20.    1     0.0    0.0    0.0       psubsw	%mm2, %mm2225# CHECK-NEXT: 21.    1     0.0    0.0    0.0       psubsb	%xmm2, %xmm2226# CHECK-NEXT: 22.    1     0.0    0.0    0.0       psubsw	%xmm2, %xmm2227# CHECK-NEXT: 23.    1     0.0    0.0    0.0       psubusb	%mm2, %mm2228# CHECK-NEXT: 24.    1     0.0    0.0    0.0       psubusw	%mm2, %mm2229# CHECK-NEXT: 25.    1     0.0    0.0    0.0       psubusb	%xmm2, %xmm2230# CHECK-NEXT: 26.    1     0.0    0.0    0.0       psubusw	%xmm2, %xmm2231# CHECK-NEXT: 27.    1     0.0    0.0    0.0       andnps	%xmm0, %xmm0232# CHECK-NEXT: 28.    1     0.0    0.0    0.0       andnpd	%xmm1, %xmm1233# CHECK-NEXT: 29.    1     0.0    0.0    0.0       pandn	%mm2, %mm2234# CHECK-NEXT: 30.    1     0.0    0.0    0.0       pandn	%xmm2, %xmm2235# CHECK-NEXT: 31.    1     0.0    0.0    0.0       vpandn	%xmm3, %xmm3, %xmm3236# CHECK-NEXT: 32.    1     0.0    0.0    0.0       xorps	%xmm0, %xmm0237# CHECK-NEXT: 33.    1     0.0    0.0    0.0       xorpd	%xmm1, %xmm1238# CHECK-NEXT: 34.    1     0.0    0.0    0.0       pxor	%mm2, %mm2239# CHECK-NEXT: 35.    1     0.0    0.0    0.0       pxor	%xmm2, %xmm2240# CHECK-NEXT:        1     0.0    0.0    0.0       <total>241