[PATCH] D86836: Support a list of CostPerUse values

Christudasan Devadasan via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Aug 29 05:23:25 PDT 2020


cdevadas created this revision.
cdevadas added reviewers: stoklund, arsenm.
Herald added subscribers: llvm-commits, danielkiss, luismarques, apazos, sameer.abuasal, pzheng, s.egerton, lenary, Jim, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, niosHD, sabuasal, simoncook, johnrusso, rbar, asb, hiraditya, tpr, qcolombet, MatzeB.
Herald added a project: LLVM.
cdevadas requested review of this revision.
Herald added subscribers: MaskRay, wdng.

This patch allows targets to define multiple cost
values for each register so that the cost model
can be more flexible and better used during the
register allocation as per the target requirements.

For AMDGPU the VGPR allocation will be more efficient
if the register cost can be associated dynamically
based on the calling convention.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D86836

Files:
  llvm/include/llvm/CodeGen/RegisterClassInfo.h
  llvm/include/llvm/CodeGen/TargetRegisterInfo.h
  llvm/include/llvm/Target/Target.td
  llvm/lib/CodeGen/RegAllocGreedy.cpp
  llvm/lib/CodeGen/RegisterClassInfo.cpp
  llvm/lib/Target/ARC/ARCRegisterInfo.td
  llvm/lib/Target/ARM/ARMRegisterInfo.td
  llvm/lib/Target/RISCV/RISCVRegisterInfo.td
  llvm/lib/Target/X86/X86RegisterInfo.td
  llvm/utils/TableGen/CodeGenRegisters.cpp
  llvm/utils/TableGen/CodeGenRegisters.h
  llvm/utils/TableGen/RegisterInfoEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D86836.288770.patch
Type: text/x-patch
Size: 17925 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200829/12733c18/attachment.bin>


More information about the llvm-commits mailing list