diff --git a/llvm/lib/Target/X86/X86ScheduleZnver1.td b/llvm/lib/Target/X86/X86ScheduleZnver1.td index 9d11c5ef11aeb..78b32953cdf80 100644 --- a/llvm/lib/Target/X86/X86ScheduleZnver1.td +++ b/llvm/lib/Target/X86/X86ScheduleZnver1.td @@ -972,25 +972,6 @@ def : InstRW<[WriteMicrocoded], (instrs FNINIT)>; //=== Integer MMX and XMM Instructions ===// -// PACKSSWB/DW. -// mm <- mm. -def ZnWriteFPU12 : SchedWriteRes<[ZnFPU12]> ; -def ZnWriteFPU12Y : SchedWriteRes<[ZnFPU12]> { - let NumMicroOps = 2; -} -def ZnWriteFPU12m : SchedWriteRes<[ZnAGU, ZnFPU12]> ; -def ZnWriteFPU12Ym : SchedWriteRes<[ZnAGU, ZnFPU12]> { - let Latency = 8; - let NumMicroOps = 2; -} - -def : InstRW<[ZnWriteFPU12], (instrs MMX_PACKSSDWrr, - MMX_PACKSSWBrr, - MMX_PACKUSWBrr)>; -def : InstRW<[ZnWriteFPU12m], (instrs MMX_PACKSSDWrm, - MMX_PACKSSWBrm, - MMX_PACKUSWBrm)>; - def ZnWriteFPU013 : SchedWriteRes<[ZnFPU013]> ; def ZnWriteFPU013Y : SchedWriteRes<[ZnFPU013]> { let Latency = 2; diff --git a/llvm/lib/Target/X86/X86ScheduleZnver2.td b/llvm/lib/Target/X86/X86ScheduleZnver2.td index 7399a4709fab7..d6b0d2dd191a1 100644 --- a/llvm/lib/Target/X86/X86ScheduleZnver2.td +++ b/llvm/lib/Target/X86/X86ScheduleZnver2.td @@ -993,26 +993,6 @@ def : InstRW<[WriteMicrocoded], (instrs FNINIT)>; //=== Integer MMX and XMM Instructions ===// -// PACKSSWB/DW. -// mm <- mm. -def Zn2WriteFPU12 : SchedWriteRes<[Zn2FPU12]> ; -def Zn2WriteFPU12Y : SchedWriteRes<[Zn2FPU12]> { - let Latency = 4; - let NumMicroOps = 2; -} -def Zn2WriteFPU12m : SchedWriteRes<[Zn2AGU, Zn2FPU12]> ; -def Zn2WriteFPU12Ym : SchedWriteRes<[Zn2AGU, Zn2FPU12]> { - let Latency = 8; - let NumMicroOps = 2; -} - -def : InstRW<[Zn2WriteFPU12], (instrs MMX_PACKSSDWrr, - MMX_PACKSSWBrr, - MMX_PACKUSWBrr)>; -def : InstRW<[Zn2WriteFPU12m], (instrs MMX_PACKSSDWrm, - MMX_PACKSSWBrm, - MMX_PACKUSWBrm)>; - def Zn2WriteFPU013 : SchedWriteRes<[Zn2FPU013]> ; def Zn2WriteFPU013Y : SchedWriteRes<[Zn2FPU013]> ; def Zn2WriteFPU013m : SchedWriteRes<[Zn2AGU, Zn2FPU013]> { diff --git a/llvm/test/tools/llvm-mca/X86/Znver1/resources-mmx.s b/llvm/test/tools/llvm-mca/X86/Znver1/resources-mmx.s index 77508f5be235f..61462105e1b5f 100644 --- a/llvm/test/tools/llvm-mca/X86/Znver1/resources-mmx.s +++ b/llvm/test/tools/llvm-mca/X86/Znver1/resources-mmx.s @@ -174,11 +174,11 @@ pxor (%rax), %mm2 # CHECK-NEXT: 1 2 1.00 movq %mm0, %rcx # CHECK-NEXT: 1 1 0.50 * movq %mm0, (%rax) # CHECK-NEXT: 1 1 0.50 packsswb %mm0, %mm2 -# CHECK-NEXT: 1 1 0.50 * packsswb (%rax), %mm2 +# CHECK-NEXT: 1 8 0.50 * packsswb (%rax), %mm2 # CHECK-NEXT: 1 1 0.50 packssdw %mm0, %mm2 -# CHECK-NEXT: 1 1 0.50 * packssdw (%rax), %mm2 +# CHECK-NEXT: 1 8 0.50 * packssdw (%rax), %mm2 # CHECK-NEXT: 1 1 0.50 packuswb %mm0, %mm2 -# CHECK-NEXT: 1 1 0.50 * packuswb (%rax), %mm2 +# CHECK-NEXT: 1 8 0.50 * packuswb (%rax), %mm2 # CHECK-NEXT: 1 1 0.33 paddb %mm0, %mm2 # CHECK-NEXT: 1 8 0.50 * paddb (%rax), %mm2 # CHECK-NEXT: 1 1 0.33 paddd %mm0, %mm2 diff --git a/llvm/test/tools/llvm-mca/X86/Znver2/resources-mmx.s b/llvm/test/tools/llvm-mca/X86/Znver2/resources-mmx.s index 96c9351ececfa..492c75f4583e2 100644 --- a/llvm/test/tools/llvm-mca/X86/Znver2/resources-mmx.s +++ b/llvm/test/tools/llvm-mca/X86/Znver2/resources-mmx.s @@ -174,11 +174,11 @@ pxor (%rax), %mm2 # CHECK-NEXT: 1 2 1.00 movq %mm0, %rcx # CHECK-NEXT: 1 1 0.33 * movq %mm0, (%rax) # CHECK-NEXT: 1 1 0.50 packsswb %mm0, %mm2 -# CHECK-NEXT: 1 1 0.50 * packsswb (%rax), %mm2 +# CHECK-NEXT: 1 8 0.50 * packsswb (%rax), %mm2 # CHECK-NEXT: 1 1 0.50 packssdw %mm0, %mm2 -# CHECK-NEXT: 1 1 0.50 * packssdw (%rax), %mm2 +# CHECK-NEXT: 1 8 0.50 * packssdw (%rax), %mm2 # CHECK-NEXT: 1 1 0.50 packuswb %mm0, %mm2 -# CHECK-NEXT: 1 1 0.50 * packuswb (%rax), %mm2 +# CHECK-NEXT: 1 8 0.50 * packuswb (%rax), %mm2 # CHECK-NEXT: 1 1 0.33 paddb %mm0, %mm2 # CHECK-NEXT: 1 8 0.33 * paddb (%rax), %mm2 # CHECK-NEXT: 1 1 0.33 paddd %mm0, %mm2