[all-commits] [llvm/llvm-project] 35d429: [X86][SchedModels] Fix missing ReadAdvance for MUL...

Andrea Di Biagio via All-commits all-commits at lists.llvm.org
Fri Aug 20 09:40:19 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 35d4292a734b83e63c19f4f390f47e5a18094204
      https://github.com/llvm/llvm-project/commit/35d4292a734b83e63c19f4f390f47e5a18094204
  Author: Andrea Di Biagio <andrea.dibiagio at sony.com>
  Date:   2021-08-20 (Fri, 20 Aug 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrArithmetic.td
    M llvm/lib/Target/X86/X86SchedBroadwell.td
    M llvm/lib/Target/X86/X86SchedHaswell.td
    M llvm/lib/Target/X86/X86SchedSandyBridge.td
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/lib/Target/X86/X86SchedSkylakeServer.td
    M llvm/lib/Target/X86/X86Schedule.td
    M llvm/lib/Target/X86/X86ScheduleAtom.td
    M llvm/lib/Target/X86/X86ScheduleBdVer2.td
    M llvm/lib/Target/X86/X86ScheduleBtVer2.td
    M llvm/lib/Target/X86/X86ScheduleSLM.td
    M llvm/lib/Target/X86/X86ScheduleZnver1.td
    M llvm/lib/Target/X86/X86ScheduleZnver2.td
    M llvm/lib/Target/X86/X86ScheduleZnver3.td
    M llvm/test/tools/llvm-mca/X86/Haswell/adcx-adox-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Haswell/mulx-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Znver1/resources-bmi2.s
    M llvm/test/tools/llvm-mca/X86/Znver2/adcx-adox-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Znver2/mulx-read-advance.s
    M llvm/test/tools/llvm-mca/X86/Znver2/resources-bmi2.s

  Log Message:
  -----------
  [X86][SchedModels] Fix missing ReadAdvance for MULX and ADCX/ADOX (PR51494)

Before this patch, instructions MULX32rm and MULX64rm were missing a ReadAdvance
for the implicit read of register EDX/RDX.  This patch fixes the issue, and it
also introduces a new SchedWrite for the two variants of MULX. The general idea
behind this last change is to eventually decrease the number of InstRW in the
scheduling models.

This patch also adds a ReadAdvance for the implicit read of EFLAGS in ADCX/ADOX.

Differential Revision: https://reviews.llvm.org/D108372




More information about the All-commits mailing list