diff --git a/llvm/lib/Target/X86/X86SchedBroadwell.td b/llvm/lib/Target/X86/X86SchedBroadwell.td index 496a588013c5..191403bd13e9 100755 --- a/llvm/lib/Target/X86/X86SchedBroadwell.td +++ b/llvm/lib/Target/X86/X86SchedBroadwell.td @@ -1547,15 +1547,6 @@ def BWWriteResGroup115 : SchedWriteRes<[BWPort0,BWPort23]> { } def: InstRW<[BWWriteResGroup115], (instregex "(V?)PCMPGTQrm")>; -def BWWriteResGroup116 : SchedWriteRes<[BWPort01,BWPort23]> { - let Latency = 10; - let NumMicroOps = 2; - let ResourceCycles = [1,1]; -} -def: InstRW<[BWWriteResGroup116], - (instregex "VF(N)?M(ADD|SUB|ADDSUB|SUBADD)(132|213|231)P(D|S)m", - "VF(N)?M(ADD|SUB)(132|213|231)S(D|S)m")>; - def BWWriteResGroup117 : SchedWriteRes<[BWPort1,BWPort23]> { let Latency = 10; let NumMicroOps = 3; diff --git a/llvm/lib/Target/X86/X86SchedHaswell.td b/llvm/lib/Target/X86/X86SchedHaswell.td index 296eafa09dfa..cd7de24a770a 100644 --- a/llvm/lib/Target/X86/X86SchedHaswell.td +++ b/llvm/lib/Target/X86/X86SchedHaswell.td @@ -1946,8 +1946,7 @@ def HWWriteResGroup92_2 : SchedWriteRes<[HWPort01,HWPort23]> { let ResourceCycles = [1,1]; } def: InstRW<[HWWriteResGroup92_2], (instregex "(V?)MULSDrm", - "(V?)MULSSrm", - "VF(N)?M(ADD|SUB)(132|213|231)S(D|S)m")>; + "(V?)MULSSrm")>; def HWWriteResGroup93 : SchedWriteRes<[HWPort1,HWPort5]> { let Latency = 5; diff --git a/llvm/lib/Target/X86/X86SchedSkylakeClient.td b/llvm/lib/Target/X86/X86SchedSkylakeClient.td index 08edc433a9ed..3e170d538a19 100644 --- a/llvm/lib/Target/X86/X86SchedSkylakeClient.td +++ b/llvm/lib/Target/X86/X86SchedSkylakeClient.td @@ -1758,8 +1758,6 @@ def: InstRW<[SKLWriteResGroup122], (instregex "(V?)ADDSDrm", "(V?)MULSSrm", "(V?)SUBSDrm", "(V?)SUBSSrm")>; -def: InstRW<[SKLWriteResGroup122], - (instregex "VF(N)?M(ADD|SUB)(132|213|231)S(D|S)m")>; def SKLWriteResGroup123 : SchedWriteRes<[SKLPort23,SKLPort01]> { let Latency = 9; diff --git a/llvm/lib/Target/X86/X86SchedSkylakeServer.td b/llvm/lib/Target/X86/X86SchedSkylakeServer.td index afe255667e7e..e361029f51ab 100755 --- a/llvm/lib/Target/X86/X86SchedSkylakeServer.td +++ b/llvm/lib/Target/X86/X86SchedSkylakeServer.td @@ -3615,8 +3615,6 @@ def SKXWriteResGroup137 : SchedWriteRes<[SKXPort23,SKXPort015]> { let NumMicroOps = 2; let ResourceCycles = [1,1]; } -def: InstRW<[SKXWriteResGroup137], - (instregex "VF(N)?M(ADD|SUB)(132|213|231)S(D|S)m")>; def: InstRW<[SKXWriteResGroup137], (instregex "ADDSDrm", "ADDSSrm", "CMPSDrm", diff --git a/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s b/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s index 6b54ee2e5c53..7e071e4f66f7 100644 --- a/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s +++ b/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s @@ -12,8 +12,8 @@ vfmadd213ps (%rdi), %xmm1, %xmm2 # HASWELL: [0,0] DeeeER . .. vaddps %xmm0, %xmm0, %xmm1 # HASWELL-NEXT: [0,1] D===eeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2 -# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1 -# BDWELL-NEXT: [0,1] D===eeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2 +# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm1 +# BDWELL-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2 # SKYLAKE: [0,0] DeeeeER . .. vaddps %xmm0, %xmm0, %xmm1 # SKYLAKE-NEXT: [0,1] D====eeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2 diff --git a/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s b/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s index 6b6e06826b17..d4d1d20f750d 100644 --- a/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s +++ b/llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s @@ -12,8 +12,8 @@ vfmadd213ps (%rdi), %xmm1, %xmm2 # HASWELL: [0,0] DeeeER . .. vaddps %xmm0, %xmm0, %xmm2 # HASWELL-NEXT: [0,1] D===eeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2 -# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2 -# BDWELL-NEXT: [0,1] D===eeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2 +# BDWELL: [0,0] DeeeER . . vaddps %xmm0, %xmm0, %xmm2 +# BDWELL-NEXT: [0,1] DeeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2 # SKYLAKE: [0,0] DeeeeER . .. vaddps %xmm0, %xmm0, %xmm2 # SKYLAKE-NEXT: [0,1] D====eeeeeeeeeeER vfmadd213ps (%rdi), %xmm1, %xmm2