[PATCH] D50070: [X86] Improved sched models for X86 CMPXCHG* instructions

Andrew V. Tischenko via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 21 07:09:34 PDT 2018


avt77 added inline comments.


================
Comment at: lib/Target/X86/X86InstrInfo.td:2083
 
-let SchedRW = [WriteALULd, WriteRMW], mayLoad = 1, mayStore = 1,
+let SchedRW = [WriteCMPXCHGLd, WriteRMW], mayLoad = 1, mayStore = 1,
     hasSideEffects = 0 in {
----------------
RKSimon wrote:
> Wasn't the plan to add a WriteCMPXCHGRMW WriteSequence class?
It was not the plan because it's the same change. And even more: I tried to switch to WriteCMPXCHGRMW and it did not work here. Should I try it again?


================
Comment at: lib/Target/X86/X86SchedSandyBridge.td:956
 }
-def: InstRW<[SBWriteResGroup81], (instregex "CMPXCHG(8|16|32|64)rm")>;
+def: InstRW<[SBWriteResGroup81], (instregex "CMPXCHG(8|16)B")>;
 
----------------
RKSimon wrote:
> craig.topper wrote:
> > I didn't notice the regular expression here had changed. The information I gave was for WriteCMPXCHGLd
> Why has the regex changed?
Because we don't need this SBWriteResGroup81 any more. Maybe I would change the name but I kept it.


https://reviews.llvm.org/D50070





More information about the llvm-commits mailing list