[PATCH] D63496: [WIP] CodeGen: Prototype class for registers

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 18 08:54:09 PDT 2019


arsenm created this revision.
arsenm added reviewers: dsanders, aditya_nandakumar, bogner, aemerson.
Herald added subscribers: Petar.Avramovic, jsji, atanasyan, fedor.sergeev, kbarton, aheejin, jgravelle-google, sbc100, javed.absar, nhaehnle, wdng, jvesely, nemanjai, sdardis, jyknight, dschuff, qcolombet, MatzeB, jholewinski.

Avoids using a plain unsigned for registers throughoug codegen.
Doesn't attempt to change every register use, just something a little
more than the set needed to build after changing the return type of
MachineOperand::getReg().


https://reviews.llvm.org/D63496

Files:
  include/llvm/CodeGen/GlobalISel/CallLowering.h
  include/llvm/CodeGen/GlobalISel/IRTranslator.h
  include/llvm/CodeGen/GlobalISel/LegalizationArtifactCombiner.h
  include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
  include/llvm/CodeGen/GlobalISel/MIPatternMatch.h
  include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
  include/llvm/CodeGen/MachineOperand.h
  include/llvm/CodeGen/MachineRegisterInfo.h
  include/llvm/CodeGen/Register.h
  include/llvm/CodeGen/SwiftErrorValueTracking.h
  include/llvm/CodeGen/TargetRegisterInfo.h
  include/llvm/CodeGen/VirtRegMap.h
  lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp
  lib/CodeGen/GlobalISel/CallLowering.cpp
  lib/CodeGen/GlobalISel/IRTranslator.cpp
  lib/CodeGen/GlobalISel/LegalizerHelper.cpp
  lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
  lib/CodeGen/LiveDebugValues.cpp
  lib/CodeGen/MachineOperand.cpp
  lib/CodeGen/MachineRegisterInfo.cpp
  lib/CodeGen/RegAllocGreedy.cpp
  lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  lib/CodeGen/SwiftErrorValueTracking.cpp
  lib/CodeGen/TargetInstrInfo.cpp
  lib/Target/AArch64/AArch64CallLowering.cpp
  lib/Target/AArch64/AArch64CallLowering.h
  lib/Target/AArch64/AArch64FalkorHWPFFix.cpp
  lib/Target/AArch64/AArch64InstructionSelector.cpp
  lib/Target/AArch64/AArch64RedundantCopyElimination.cpp
  lib/Target/AArch64/AArch64RegisterInfo.cpp
  lib/Target/AArch64/AArch64RegisterInfo.h
  lib/Target/AMDGPU/AMDGPUCallLowering.cpp
  lib/Target/AMDGPU/AMDGPUCallLowering.h
  lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
  lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
  lib/Target/AMDGPU/AMDGPURegisterBankInfo.h
  lib/Target/AMDGPU/AMDGPURegisterInfo.cpp
  lib/Target/AMDGPU/R600Packetizer.cpp
  lib/Target/AMDGPU/R600RegisterInfo.cpp
  lib/Target/AMDGPU/R600RegisterInfo.h
  lib/Target/AMDGPU/SILowerControlFlow.cpp
  lib/Target/AMDGPU/SIRegisterInfo.cpp
  lib/Target/AMDGPU/SIRegisterInfo.h
  lib/Target/ARM/ARMBaseRegisterInfo.cpp
  lib/Target/ARM/ARMBaseRegisterInfo.h
  lib/Target/ARM/ARMCallLowering.cpp
  lib/Target/ARM/ARMCallLowering.h
  lib/Target/BPF/BPFRegisterInfo.cpp
  lib/Target/BPF/BPFRegisterInfo.h
  lib/Target/Hexagon/HexagonCopyToCombine.cpp
  lib/Target/Hexagon/HexagonGenMux.cpp
  lib/Target/Hexagon/HexagonGenPredicate.cpp
  lib/Target/Hexagon/HexagonRegisterInfo.cpp
  lib/Target/Hexagon/HexagonRegisterInfo.h
  lib/Target/Lanai/LanaiRegisterInfo.cpp
  lib/Target/Lanai/LanaiRegisterInfo.h
  lib/Target/MSP430/MSP430RegisterInfo.cpp
  lib/Target/MSP430/MSP430RegisterInfo.h
  lib/Target/Mips/MipsCallLowering.cpp
  lib/Target/Mips/MipsCallLowering.h
  lib/Target/Mips/MipsRegisterInfo.cpp
  lib/Target/Mips/MipsRegisterInfo.h
  lib/Target/Mips/MipsSEISelLowering.cpp
  lib/Target/NVPTX/NVPTXRegisterInfo.cpp
  lib/Target/NVPTX/NVPTXRegisterInfo.h
  lib/Target/PowerPC/PPCISelLowering.cpp
  lib/Target/PowerPC/PPCInstrInfo.cpp
  lib/Target/PowerPC/PPCRegisterInfo.cpp
  lib/Target/PowerPC/PPCRegisterInfo.h
  lib/Target/Sparc/SparcRegisterInfo.cpp
  lib/Target/Sparc/SparcRegisterInfo.h
  lib/Target/SystemZ/SystemZElimCompare.cpp
  lib/Target/SystemZ/SystemZISelLowering.cpp
  lib/Target/SystemZ/SystemZInstrInfo.cpp
  lib/Target/SystemZ/SystemZRegisterInfo.cpp
  lib/Target/SystemZ/SystemZRegisterInfo.h
  lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp
  lib/Target/WebAssembly/WebAssemblyRegisterInfo.h
  lib/Target/X86/X86CallLowering.cpp
  lib/Target/X86/X86CallLowering.h
  lib/Target/X86/X86FrameLowering.cpp
  lib/Target/X86/X86InstrInfo.cpp
  lib/Target/X86/X86RegisterInfo.cpp
  lib/Target/X86/X86RegisterInfo.h
  lib/Target/XCore/XCoreRegisterInfo.cpp
  lib/Target/XCore/XCoreRegisterInfo.h
  unittests/CodeGen/GlobalISel/GISelMITest.h
  unittests/CodeGen/GlobalISel/MachineIRBuilderTest.cpp
  unittests/CodeGen/GlobalISel/PatternMatchTest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63496.205367.patch
Type: text/x-patch
Size: 159712 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190618/21c14219/attachment-0001.bin>


More information about the llvm-commits mailing list