diff options
8 files changed, 40 insertions, 64 deletions
diff --git a/llvm/lib/Target/X86/X86SchedBroadwell.td b/llvm/lib/Target/X86/X86SchedBroadwell.td index d211a99834e..54104ed009c 100755 --- a/llvm/lib/Target/X86/X86SchedBroadwell.td +++ b/llvm/lib/Target/X86/X86SchedBroadwell.td @@ -1177,13 +1177,6 @@ def BWWriteResGroup97 : SchedWriteRes<[BWPort23,BWPort237,BWPort06,BWPort0156]> def: InstRW<[BWWriteResGroup97], (instregex "RCL(8|16|32|64)m(1|i)", "RCR(8|16|32|64)m(1|i)")>; -def BWWriteResGroup98 : SchedWriteRes<[BWPort23,BWPort237,BWPort06,BWPort0156]> { - let Latency = 8; - let NumMicroOps = 5; - let ResourceCycles = [1,1,2,1]; -} -def: InstRW<[BWWriteResGroup98], (instregex "ROR(8|16|32|64)mCL")>; - def BWWriteResGroup99 : SchedWriteRes<[BWPort4,BWPort23,BWPort237,BWPort0156]> { let Latency = 8; let NumMicroOps = 6; @@ -1198,6 +1191,7 @@ def BWWriteResGroup100 : SchedWriteRes<[BWPort4,BWPort23,BWPort237,BWPort06,BWPo } def : SchedAlias<WriteADCRMW, BWWriteResGroup100>; def: InstRW<[BWWriteResGroup100], (instregex "ROL(8|16|32|64)mCL", + "ROR(8|16|32|64)mCL", "SAR(8|16|32|64)mCL", "SHL(8|16|32|64)mCL", "SHR(8|16|32|64)mCL")>; diff --git a/llvm/lib/Target/X86/X86SchedHaswell.td b/llvm/lib/Target/X86/X86SchedHaswell.td index 6313360c815..2fe3e0e7a4d 100644 --- a/llvm/lib/Target/X86/X86SchedHaswell.td +++ b/llvm/lib/Target/X86/X86SchedHaswell.td @@ -1320,13 +1320,6 @@ def HWWriteResGroup66 : SchedWriteRes<[HWPort23,HWPort237,HWPort06,HWPort0156]> def: InstRW<[HWWriteResGroup66], (instregex "RCL(8|16|32|64)m(1|i)", "RCR(8|16|32|64)m(1|i)")>; -def HWWriteResGroup67 : SchedWriteRes<[HWPort23,HWPort237,HWPort06,HWPort0156]> { - let Latency = 9; - let NumMicroOps = 5; - let ResourceCycles = [1,1,2,1]; -} -def: InstRW<[HWWriteResGroup67], (instregex "ROR(8|16|32|64)mCL")>; - def HWWriteResGroup68 : SchedWriteRes<[HWPort4,HWPort23,HWPort237,HWPort0156]> { let Latency = 9; let NumMicroOps = 6; @@ -1340,6 +1333,7 @@ def HWWriteResGroup69 : SchedWriteRes<[HWPort4,HWPort23,HWPort237,HWPort06,HWPor let ResourceCycles = [1,1,1,2,1]; } def: InstRW<[HWWriteResGroup69], (instregex "ROL(8|16|32|64)mCL", + "ROR(8|16|32|64)mCL", "SAR(8|16|32|64)mCL", "SHL(8|16|32|64)mCL", "SHR(8|16|32|64)mCL")>; diff --git a/llvm/lib/Target/X86/X86SchedSkylakeClient.td b/llvm/lib/Target/X86/X86SchedSkylakeClient.td index e74cb377fce..87b9daab334 100644 --- a/llvm/lib/Target/X86/X86SchedSkylakeClient.td +++ b/llvm/lib/Target/X86/X86SchedSkylakeClient.td @@ -1269,13 +1269,6 @@ def SKLWriteResGroup112 : SchedWriteRes<[SKLPort0,SKLPort5,SKLPort23]> { } def: InstRW<[SKLWriteResGroup112], (instregex "MMX_PH(ADD|SUB)SWrm")>; -def SKLWriteResGroup115 : SchedWriteRes<[SKLPort23,SKLPort237,SKLPort06]> { - let Latency = 8; - let NumMicroOps = 5; - let ResourceCycles = [1,1,3]; -} -def: InstRW<[SKLWriteResGroup115], (instregex "ROR(8|16|32|64)mCL")>; - def SKLWriteResGroup116 : SchedWriteRes<[SKLPort23,SKLPort237,SKLPort06,SKLPort0156]> { let Latency = 8; let NumMicroOps = 5; @@ -1290,6 +1283,7 @@ def SKLWriteResGroup117 : SchedWriteRes<[SKLPort4,SKLPort23,SKLPort237,SKLPort06 let ResourceCycles = [1,1,1,3]; } def: InstRW<[SKLWriteResGroup117], (instregex "ROL(8|16|32|64)mCL", + "ROR(8|16|32|64)mCL", "SAR(8|16|32|64)mCL", "SHL(8|16|32|64)mCL", "SHR(8|16|32|64)mCL")>; diff --git a/llvm/lib/Target/X86/X86SchedSkylakeServer.td b/llvm/lib/Target/X86/X86SchedSkylakeServer.td index 83de2885409..f671650c843 100755 --- a/llvm/lib/Target/X86/X86SchedSkylakeServer.td +++ b/llvm/lib/Target/X86/X86SchedSkylakeServer.td @@ -1622,13 +1622,6 @@ def SKXWriteResGroup123 : SchedWriteRes<[SKXPort0,SKXPort5,SKXPort23]> { } def: InstRW<[SKXWriteResGroup123], (instregex "MMX_PH(ADD|SUB)SWrm")>; -def SKXWriteResGroup126 : SchedWriteRes<[SKXPort23,SKXPort237,SKXPort06]> { - let Latency = 8; - let NumMicroOps = 5; - let ResourceCycles = [1,1,3]; -} -def: InstRW<[SKXWriteResGroup126], (instregex "ROR(8|16|32|64)mCL")>; - def SKXWriteResGroup127 : SchedWriteRes<[SKXPort23,SKXPort237,SKXPort06,SKXPort0156]> { let Latency = 8; let NumMicroOps = 5; @@ -1643,6 +1636,7 @@ def SKXWriteResGroup128 : SchedWriteRes<[SKXPort4,SKXPort23,SKXPort237,SKXPort06 let ResourceCycles = [1,1,1,3]; } def: InstRW<[SKXWriteResGroup128], (instregex "ROL(8|16|32|64)mCL", + "ROR(8|16|32|64)mCL", "SAR(8|16|32|64)mCL", "SHL(8|16|32|64)mCL", "SHR(8|16|32|64)mCL")>; diff --git a/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s b/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s index 653c17b1477..b22edb4a904 100644 --- a/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s +++ b/llvm/test/tools/llvm-mca/X86/Broadwell/resources-x86_64.s @@ -1294,7 +1294,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 rolb %cl, %dil # CHECK-NEXT: 3 3 1.00 rorb %cl, %dil # CHECK-NEXT: 6 8 1.00 * * rolb %cl, (%rax) -# CHECK-NEXT: 5 8 1.00 * * rorb %cl, (%rax) +# CHECK-NEXT: 6 8 1.00 * * rorb %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolw %di # CHECK-NEXT: 2 2 1.00 rorw %di # CHECK-NEXT: 5 7 1.00 * * rolw (%rax) @@ -1306,7 +1306,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 rolw %cl, %di # CHECK-NEXT: 3 3 1.00 rorw %cl, %di # CHECK-NEXT: 6 8 1.00 * * rolw %cl, (%rax) -# CHECK-NEXT: 5 8 1.00 * * rorw %cl, (%rax) +# CHECK-NEXT: 6 8 1.00 * * rorw %cl, (%rax) # CHECK-NEXT: 2 2 1.00 roll %edi # CHECK-NEXT: 2 2 1.00 rorl %edi # CHECK-NEXT: 5 7 1.00 * * roll (%rax) @@ -1318,7 +1318,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 roll %cl, %edi # CHECK-NEXT: 3 3 1.00 rorl %cl, %edi # CHECK-NEXT: 6 8 1.00 * * roll %cl, (%rax) -# CHECK-NEXT: 5 8 1.00 * * rorl %cl, (%rax) +# CHECK-NEXT: 6 8 1.00 * * rorl %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolq %rdi # CHECK-NEXT: 2 2 1.00 rorq %rdi # CHECK-NEXT: 5 7 1.00 * * rolq (%rax) @@ -1330,7 +1330,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 rolq %cl, %rdi # CHECK-NEXT: 3 3 1.00 rorq %cl, %rdi # CHECK-NEXT: 6 8 1.00 * * rolq %cl, (%rax) -# CHECK-NEXT: 5 8 1.00 * * rorq %cl, (%rax) +# CHECK-NEXT: 6 8 1.00 * * rorq %cl, (%rax) # CHECK-NEXT: 1 1 0.50 sahf # CHECK-NEXT: 1 1 0.50 sarb %dil # CHECK-NEXT: 1 1 0.50 shlb %dil @@ -1622,7 +1622,7 @@ xorq (%rax), %rdi # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: 50.00 - 494.25 334.75 262.17 262.17 202.00 244.25 526.75 82.67 +# CHECK-NEXT: 50.00 - 494.25 334.75 262.17 262.17 206.00 244.25 526.75 82.67 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -2059,7 +2059,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rolb %cl, %dil # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorb %cl, %dil # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rolb %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorb %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorb %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolw %di # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorw %di # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolw (%rax) @@ -2071,7 +2071,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rolw %cl, %di # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorw %cl, %di # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rolw %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorw %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorw %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - roll %edi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorl %edi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 roll (%rax) @@ -2083,7 +2083,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - roll %cl, %edi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorl %cl, %edi # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 roll %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorl %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorl %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolq %rdi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorq %rdi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolq (%rax) @@ -2095,7 +2095,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rolq %cl, %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorq %cl, %rdi # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rolq %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorq %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorq %cl, (%rax) # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sahf # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sarb %dil # CHECK-NEXT: - - 0.50 - - - - - 0.50 - shlb %dil diff --git a/llvm/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s b/llvm/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s index d4bf62d26b9..fd76bd1f53d 100644 --- a/llvm/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s +++ b/llvm/test/tools/llvm-mca/X86/Haswell/resources-x86_64.s @@ -1294,7 +1294,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 rolb %cl, %dil # CHECK-NEXT: 3 3 1.00 rorb %cl, %dil # CHECK-NEXT: 6 9 1.00 * * rolb %cl, (%rax) -# CHECK-NEXT: 5 9 1.00 * * rorb %cl, (%rax) +# CHECK-NEXT: 6 9 1.00 * * rorb %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolw %di # CHECK-NEXT: 2 2 1.00 rorw %di # CHECK-NEXT: 5 8 1.00 * * rolw (%rax) @@ -1306,7 +1306,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 rolw %cl, %di # CHECK-NEXT: 3 3 1.00 rorw %cl, %di # CHECK-NEXT: 6 9 1.00 * * rolw %cl, (%rax) -# CHECK-NEXT: 5 9 1.00 * * rorw %cl, (%rax) +# CHECK-NEXT: 6 9 1.00 * * rorw %cl, (%rax) # CHECK-NEXT: 2 2 1.00 roll %edi # CHECK-NEXT: 2 2 1.00 rorl %edi # CHECK-NEXT: 5 8 1.00 * * roll (%rax) @@ -1318,7 +1318,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 roll %cl, %edi # CHECK-NEXT: 3 3 1.00 rorl %cl, %edi # CHECK-NEXT: 6 9 1.00 * * roll %cl, (%rax) -# CHECK-NEXT: 5 9 1.00 * * rorl %cl, (%rax) +# CHECK-NEXT: 6 9 1.00 * * rorl %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolq %rdi # CHECK-NEXT: 2 2 1.00 rorq %rdi # CHECK-NEXT: 5 8 1.00 * * rolq (%rax) @@ -1330,7 +1330,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.00 rolq %cl, %rdi # CHECK-NEXT: 3 3 1.00 rorq %cl, %rdi # CHECK-NEXT: 6 9 1.00 * * rolq %cl, (%rax) -# CHECK-NEXT: 5 9 1.00 * * rorq %cl, (%rax) +# CHECK-NEXT: 6 9 1.00 * * rorq %cl, (%rax) # CHECK-NEXT: 1 1 0.50 sahf # CHECK-NEXT: 1 1 0.50 sarb %dil # CHECK-NEXT: 1 1 0.50 shlb %dil @@ -1622,7 +1622,7 @@ xorq (%rax), %rdi # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: 80.00 - 548.75 359.25 262.67 262.67 197.00 270.75 610.25 79.67 +# CHECK-NEXT: 80.00 - 548.75 359.25 262.67 262.67 201.00 270.75 610.25 79.67 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -2059,7 +2059,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rolb %cl, %dil # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorb %cl, %dil # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rolb %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorb %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorb %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolw %di # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorw %di # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolw (%rax) @@ -2071,7 +2071,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rolw %cl, %di # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorw %cl, %di # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rolw %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorw %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorw %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - roll %edi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorl %edi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 roll (%rax) @@ -2083,7 +2083,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - roll %cl, %edi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorl %cl, %edi # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 roll %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorl %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorl %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolq %rdi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorq %rdi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolq (%rax) @@ -2095,7 +2095,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rolq %cl, %rdi # CHECK-NEXT: - - 1.25 0.25 - - - 0.25 1.25 - rorq %cl, %rdi # CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rolq %cl, (%rax) -# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 - 0.25 1.25 0.33 rorq %cl, (%rax) +# CHECK-NEXT: - - 1.25 0.25 0.83 0.83 1.00 0.25 1.25 0.33 rorq %cl, (%rax) # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sahf # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sarb %dil # CHECK-NEXT: - - 0.50 - - - - - 0.50 - shlb %dil diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s b/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s index d6622ce8cd9..c008e3d5f65 100644 --- a/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s +++ b/llvm/test/tools/llvm-mca/X86/SkylakeClient/resources-x86_64.s @@ -1294,7 +1294,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 rolb %cl, %dil # CHECK-NEXT: 3 3 1.50 rorb %cl, %dil # CHECK-NEXT: 6 8 1.50 * * rolb %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorb %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorb %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolw %di # CHECK-NEXT: 2 2 1.00 rorw %di # CHECK-NEXT: 5 7 1.00 * * rolw (%rax) @@ -1306,7 +1306,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 rolw %cl, %di # CHECK-NEXT: 3 3 1.50 rorw %cl, %di # CHECK-NEXT: 6 8 1.50 * * rolw %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorw %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorw %cl, (%rax) # CHECK-NEXT: 2 2 1.00 roll %edi # CHECK-NEXT: 2 2 1.00 rorl %edi # CHECK-NEXT: 5 7 1.00 * * roll (%rax) @@ -1318,7 +1318,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 roll %cl, %edi # CHECK-NEXT: 3 3 1.50 rorl %cl, %edi # CHECK-NEXT: 6 8 1.50 * * roll %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorl %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorl %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolq %rdi # CHECK-NEXT: 2 2 1.00 rorq %rdi # CHECK-NEXT: 5 7 1.00 * * rolq (%rax) @@ -1330,7 +1330,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 rolq %cl, %rdi # CHECK-NEXT: 3 3 1.50 rorq %cl, %rdi # CHECK-NEXT: 6 8 1.50 * * rolq %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorq %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorq %cl, (%rax) # CHECK-NEXT: 1 1 0.50 sahf # CHECK-NEXT: 1 1 0.50 sarb %dil # CHECK-NEXT: 1 1 0.50 shlb %dil @@ -1622,7 +1622,7 @@ xorq (%rax), %rdi # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: 60.00 - 564.50 314.50 262.17 262.17 202.00 279.00 620.00 82.67 +# CHECK-NEXT: 60.00 - 564.50 314.50 262.17 262.17 206.00 279.00 620.00 82.67 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -2059,7 +2059,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rolb %cl, %dil # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorb %cl, %dil # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rolb %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorb %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorb %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolw %di # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorw %di # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolw (%rax) @@ -2071,7 +2071,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rolw %cl, %di # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorw %cl, %di # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rolw %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorw %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorw %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - roll %edi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorl %edi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 roll (%rax) @@ -2083,7 +2083,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - roll %cl, %edi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorl %cl, %edi # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 roll %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorl %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorl %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolq %rdi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorq %rdi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolq (%rax) @@ -2095,7 +2095,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rolq %cl, %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorq %cl, %rdi # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rolq %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorq %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorq %cl, (%rax) # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sahf # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sarb %dil # CHECK-NEXT: - - 0.50 - - - - - 0.50 - shlb %dil diff --git a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s index 803900e5d6d..e35da95896e 100644 --- a/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s +++ b/llvm/test/tools/llvm-mca/X86/SkylakeServer/resources-x86_64.s @@ -1294,7 +1294,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 rolb %cl, %dil # CHECK-NEXT: 3 3 1.50 rorb %cl, %dil # CHECK-NEXT: 6 8 1.50 * * rolb %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorb %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorb %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolw %di # CHECK-NEXT: 2 2 1.00 rorw %di # CHECK-NEXT: 5 7 1.00 * * rolw (%rax) @@ -1306,7 +1306,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 rolw %cl, %di # CHECK-NEXT: 3 3 1.50 rorw %cl, %di # CHECK-NEXT: 6 8 1.50 * * rolw %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorw %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorw %cl, (%rax) # CHECK-NEXT: 2 2 1.00 roll %edi # CHECK-NEXT: 2 2 1.00 rorl %edi # CHECK-NEXT: 5 7 1.00 * * roll (%rax) @@ -1318,7 +1318,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 roll %cl, %edi # CHECK-NEXT: 3 3 1.50 rorl %cl, %edi # CHECK-NEXT: 6 8 1.50 * * roll %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorl %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorl %cl, (%rax) # CHECK-NEXT: 2 2 1.00 rolq %rdi # CHECK-NEXT: 2 2 1.00 rorq %rdi # CHECK-NEXT: 5 7 1.00 * * rolq (%rax) @@ -1330,7 +1330,7 @@ xorq (%rax), %rdi # CHECK-NEXT: 3 3 1.50 rolq %cl, %rdi # CHECK-NEXT: 3 3 1.50 rorq %cl, %rdi # CHECK-NEXT: 6 8 1.50 * * rolq %cl, (%rax) -# CHECK-NEXT: 5 8 1.50 * * rorq %cl, (%rax) +# CHECK-NEXT: 6 8 1.50 * * rorq %cl, (%rax) # CHECK-NEXT: 1 1 0.50 sahf # CHECK-NEXT: 1 1 0.50 sarb %dil # CHECK-NEXT: 1 1 0.50 shlb %dil @@ -1622,7 +1622,7 @@ xorq (%rax), %rdi # CHECK: Resource pressure per iteration: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] -# CHECK-NEXT: 60.00 - 564.75 314.75 262.17 262.17 202.00 279.25 620.25 82.67 +# CHECK-NEXT: 60.00 - 564.75 314.75 262.17 262.17 206.00 279.25 620.25 82.67 # CHECK: Resource pressure by instruction: # CHECK-NEXT: [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] Instructions: @@ -2059,7 +2059,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rolb %cl, %dil # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorb %cl, %dil # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rolb %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorb %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorb %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolw %di # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorw %di # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolw (%rax) @@ -2071,7 +2071,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rolw %cl, %di # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorw %cl, %di # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rolw %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorw %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorw %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - roll %edi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorl %edi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 roll (%rax) @@ -2083,7 +2083,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - roll %cl, %edi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorl %cl, %edi # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 roll %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorl %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorl %cl, (%rax) # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rolq %rdi # CHECK-NEXT: - - 1.00 - - - - - 1.00 - rorq %rdi # CHECK-NEXT: - - 1.00 - 0.83 0.83 1.00 - 1.00 0.33 rolq (%rax) @@ -2095,7 +2095,7 @@ xorq (%rax), %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rolq %cl, %rdi # CHECK-NEXT: - - 1.50 - - - - - 1.50 - rorq %cl, %rdi # CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rolq %cl, (%rax) -# CHECK-NEXT: - - 1.50 - 0.83 0.83 - - 1.50 0.33 rorq %cl, (%rax) +# CHECK-NEXT: - - 1.50 - 0.83 0.83 1.00 - 1.50 0.33 rorq %cl, (%rax) # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sahf # CHECK-NEXT: - - 0.50 - - - - - 0.50 - sarb %dil # CHECK-NEXT: - - 0.50 - - - - - 0.50 - shlb %dil |

