183 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -iterations=500 < %s | FileCheck %s3 4# LLVM-MCA-BEGIN5cvtsi2ss %ecx, %xmm06# LLVM-MCA-END7 8# LLVM-MCA-BEGIN9cvtsi2sd %ecx, %xmm010# LLVM-MCA-END11 12# LLVM-MCA-BEGIN13movd %ecx, %xmm014# LLVM-MCA-END15 16# LLVM-MCA-BEGIN17movq %rcx, %xmm018# LLVM-MCA-END19 20# CHECK: [0] Code Region21 22# CHECK: Iterations: 50023# CHECK-NEXT: Instructions: 50024# CHECK-NEXT: Total Cycles: 250325# CHECK-NEXT: Total uOps: 150026 27# CHECK: Dispatch Width: 428# CHECK-NEXT: uOps Per Cycle: 0.6029# CHECK-NEXT: IPC: 0.2030# CHECK-NEXT: Block RThroughput: 2.031 32# CHECK: Instruction Info:33# CHECK-NEXT: [1]: #uOps34# CHECK-NEXT: [2]: Latency35# CHECK-NEXT: [3]: RThroughput36# CHECK-NEXT: [4]: MayLoad37# CHECK-NEXT: [5]: MayStore38# CHECK-NEXT: [6]: HasSideEffects (U)39 40# CHECK: [1] [2] [3] [4] [5] [6] Instructions:41# CHECK-NEXT: 3 5 2.00 cvtsi2ss %ecx, %xmm042 43# CHECK: Resources:44# CHECK-NEXT: [0] - SBDivider45# CHECK-NEXT: [1] - SBFPDivider46# CHECK-NEXT: [2] - SBPort047# CHECK-NEXT: [3] - SBPort148# CHECK-NEXT: [4] - SBPort449# CHECK-NEXT: [5] - SBPort550# CHECK-NEXT: [6.0] - SBPort2351# CHECK-NEXT: [6.1] - SBPort2352 53# CHECK: Resource pressure per iteration:54# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]55# CHECK-NEXT: - - - 1.00 - 2.00 - -56 57# CHECK: Resource pressure by instruction:58# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:59# CHECK-NEXT: - - - 1.00 - 2.00 - - cvtsi2ss %ecx, %xmm060 61# CHECK: [1] Code Region62 63# CHECK: Iterations: 50064# CHECK-NEXT: Instructions: 50065# CHECK-NEXT: Total Cycles: 200366# CHECK-NEXT: Total uOps: 100067 68# CHECK: Dispatch Width: 469# CHECK-NEXT: uOps Per Cycle: 0.5070# CHECK-NEXT: IPC: 0.2571# CHECK-NEXT: Block RThroughput: 1.072 73# CHECK: Instruction Info:74# CHECK-NEXT: [1]: #uOps75# CHECK-NEXT: [2]: Latency76# CHECK-NEXT: [3]: RThroughput77# CHECK-NEXT: [4]: MayLoad78# CHECK-NEXT: [5]: MayStore79# CHECK-NEXT: [6]: HasSideEffects (U)80 81# CHECK: [1] [2] [3] [4] [5] [6] Instructions:82# CHECK-NEXT: 2 4 1.00 cvtsi2sd %ecx, %xmm083 84# CHECK: Resources:85# CHECK-NEXT: [0] - SBDivider86# CHECK-NEXT: [1] - SBFPDivider87# CHECK-NEXT: [2] - SBPort088# CHECK-NEXT: [3] - SBPort189# CHECK-NEXT: [4] - SBPort490# CHECK-NEXT: [5] - SBPort591# CHECK-NEXT: [6.0] - SBPort2392# CHECK-NEXT: [6.1] - SBPort2393 94# CHECK: Resource pressure per iteration:95# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]96# CHECK-NEXT: - - - 1.00 - 1.00 - -97 98# CHECK: Resource pressure by instruction:99# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:100# CHECK-NEXT: - - - 1.00 - 1.00 - - cvtsi2sd %ecx, %xmm0101 102# CHECK: [2] Code Region103 104# CHECK: Iterations: 500105# CHECK-NEXT: Instructions: 500106# CHECK-NEXT: Total Cycles: 503107# CHECK-NEXT: Total uOps: 500108 109# CHECK: Dispatch Width: 4110# CHECK-NEXT: uOps Per Cycle: 0.99111# CHECK-NEXT: IPC: 0.99112# CHECK-NEXT: Block RThroughput: 1.0113 114# CHECK: Instruction Info:115# CHECK-NEXT: [1]: #uOps116# CHECK-NEXT: [2]: Latency117# CHECK-NEXT: [3]: RThroughput118# CHECK-NEXT: [4]: MayLoad119# CHECK-NEXT: [5]: MayStore120# CHECK-NEXT: [6]: HasSideEffects (U)121 122# CHECK: [1] [2] [3] [4] [5] [6] Instructions:123# CHECK-NEXT: 1 1 1.00 movd %ecx, %xmm0124 125# CHECK: Resources:126# CHECK-NEXT: [0] - SBDivider127# CHECK-NEXT: [1] - SBFPDivider128# CHECK-NEXT: [2] - SBPort0129# CHECK-NEXT: [3] - SBPort1130# CHECK-NEXT: [4] - SBPort4131# CHECK-NEXT: [5] - SBPort5132# CHECK-NEXT: [6.0] - SBPort23133# CHECK-NEXT: [6.1] - SBPort23134 135# CHECK: Resource pressure per iteration:136# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]137# CHECK-NEXT: - - - - - 1.00 - -138 139# CHECK: Resource pressure by instruction:140# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:141# CHECK-NEXT: - - - - - 1.00 - - movd %ecx, %xmm0142 143# CHECK: [3] Code Region144 145# CHECK: Iterations: 500146# CHECK-NEXT: Instructions: 500147# CHECK-NEXT: Total Cycles: 503148# CHECK-NEXT: Total uOps: 500149 150# CHECK: Dispatch Width: 4151# CHECK-NEXT: uOps Per Cycle: 0.99152# CHECK-NEXT: IPC: 0.99153# CHECK-NEXT: Block RThroughput: 1.0154 155# CHECK: Instruction Info:156# CHECK-NEXT: [1]: #uOps157# CHECK-NEXT: [2]: Latency158# CHECK-NEXT: [3]: RThroughput159# CHECK-NEXT: [4]: MayLoad160# CHECK-NEXT: [5]: MayStore161# CHECK-NEXT: [6]: HasSideEffects (U)162 163# CHECK: [1] [2] [3] [4] [5] [6] Instructions:164# CHECK-NEXT: 1 1 1.00 movq %rcx, %xmm0165 166# CHECK: Resources:167# CHECK-NEXT: [0] - SBDivider168# CHECK-NEXT: [1] - SBFPDivider169# CHECK-NEXT: [2] - SBPort0170# CHECK-NEXT: [3] - SBPort1171# CHECK-NEXT: [4] - SBPort4172# CHECK-NEXT: [5] - SBPort5173# CHECK-NEXT: [6.0] - SBPort23174# CHECK-NEXT: [6.1] - SBPort23175 176# CHECK: Resource pressure per iteration:177# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1]178# CHECK-NEXT: - - - - - 1.00 - -179 180# CHECK: Resource pressure by instruction:181# CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:182# CHECK-NEXT: - - - - - 1.00 - - movq %rcx, %xmm0183