[PATCH] D26986: MachineScheduler: Export function to construct "default" scheduler.

Matthias Braun via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 22 12:27:20 PST 2016


MatzeB created this revision.
MatzeB added a reviewer: atrick.
MatzeB added a subscriber: llvm-commits.
MatzeB set the repository for this revision to rL LLVM.
Herald added a reviewer: tstellarAMD.
Herald added subscribers: nhaehnle, mcrosier, arsenm.

This makes the createGenericSchedLive() function that constructs the
default scheduler available for the public API. This should help when
you want to get a scheduler and the default list of DAG mutations.

This also shrinks the list of default DAG mutations:
{Load|Store}ClusterDAGMutation and MacroFusionDAGMutation are no longer
added by default. Targets can easily add them if they need them. It also
makes it easier for targets to add alternative/custom macrofusion or
clustering mutations while staying with the default
createGenericSchedLive(). It also make the
TargetInstrInfo::enableClusterLoads()/enableClusterStores() callbacks unnecessary.


Repository:
  rL LLVM

https://reviews.llvm.org/D26986

Files:
  include/llvm/CodeGen/MachineScheduler.h
  include/llvm/Target/TargetInstrInfo.h
  lib/CodeGen/MachineScheduler.cpp
  lib/Target/AArch64/AArch64InstrInfo.cpp
  lib/Target/AArch64/AArch64InstrInfo.h
  lib/Target/AArch64/AArch64TargetMachine.cpp
  lib/Target/AMDGPU/AMDGPUInstrInfo.cpp
  lib/Target/AMDGPU/AMDGPUInstrInfo.h
  lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
  lib/Target/X86/X86InstrInfo.cpp
  lib/Target/X86/X86InstrInfo.h
  lib/Target/X86/X86TargetMachine.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26986.78924.patch
Type: text/x-patch
Size: 14702 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161122/f0921488/attachment.bin>


More information about the llvm-commits mailing list