forked from OSchip/llvm-project
[X86][Broadwell] HWPort5 should not be added to BroadwellModelProcResources.
The BroadwellModelProcResources had an entry for HWPort5, which is a Haswell resource, and not a Broadwell processor resource. That entry was added to the Broadwell model because variable blends were consuming it. This was clearly a typo (the resource name should have been BWPort5), which unfortunately was never caught before. It was not reported as an error because HWPort5 is a resource defined by the Haswell model. It has been found when testing some code with llvm-mca: the list of resources in the resource pressure view was odd. This patch fixes the issue; now variable blend instructions consume 2 cycles on BWPort5 instead of HWPort5. This is enough to get rid of the extra (spurious) entry in the BroadWellModelProcResources table. llvm-svn: 329686
This commit is contained in:
parent
44f2f4ec45
commit
486358c153
|
@ -163,7 +163,7 @@ defm : BWWriteResPair<WriteFRsqrt, [BWPort0], 5>; // Floating point reciprocal s
|
|||
defm : BWWriteResPair<WriteFMA, [BWPort01], 5>; // Fused Multiply Add.
|
||||
defm : BWWriteResPair<WriteFShuffle, [BWPort5], 1>; // Floating point vector shuffles.
|
||||
defm : BWWriteResPair<WriteFBlend, [BWPort015], 1>; // Floating point vector blends.
|
||||
defm : BWWriteResPair<WriteFVarBlend, [HWPort5], 2, [2]>; // Fp vector variable blends.
|
||||
defm : BWWriteResPair<WriteFVarBlend, [BWPort5], 2, [2]>; // Fp vector variable blends.
|
||||
|
||||
// FMA Scheduling helper class.
|
||||
// class FMASC { X86FoldableSchedWrite Sched = WriteFAdd; }
|
||||
|
|
Loading…
Reference in New Issue