diff options
| author | Florian Mayer <fmayer@google.com> | 2024-08-07 14:00:51 -0700 |
|---|---|---|
| committer | Florian Mayer <fmayer@google.com> | 2024-08-07 14:00:51 -0700 |
| commit | 10fbc246b146dbdf6b7cd9083bf392505c534fbc (patch) | |
| tree | 898a2504a8bc941166603c77021937fd995e79ce /llvm/lib/Target/X86/X86DomainReassignment.cpp | |
| parent | 191d02015fba3458bdf6381ee93c32e485daf25e (diff) | |
| parent | a05fa131db58f2d66a1f9e68fea74068f9218c2b (diff) | |
Created using spr 1.3.4
Diffstat (limited to 'llvm/lib/Target/X86/X86DomainReassignment.cpp')
| -rw-r--r-- | llvm/lib/Target/X86/X86DomainReassignment.cpp | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/llvm/lib/Target/X86/X86DomainReassignment.cpp b/llvm/lib/Target/X86/X86DomainReassignment.cpp index 6289b3a1df1f..831944cce3af 100644 --- a/llvm/lib/Target/X86/X86DomainReassignment.cpp +++ b/llvm/lib/Target/X86/X86DomainReassignment.cpp @@ -41,13 +41,6 @@ static cl::opt<bool> DisableX86DomainReassignment( namespace { enum RegDomain { NoDomain = -1, GPRDomain, MaskDomain, OtherDomain, NumDomains }; -static bool isGPR(const TargetRegisterClass *RC) { - return X86::GR64RegClass.hasSubClassEq(RC) || - X86::GR32RegClass.hasSubClassEq(RC) || - X86::GR16RegClass.hasSubClassEq(RC) || - X86::GR8RegClass.hasSubClassEq(RC); -} - static bool isMask(const TargetRegisterClass *RC, const TargetRegisterInfo *TRI) { return X86::VK16RegClass.hasSubClassEq(RC); @@ -55,7 +48,7 @@ static bool isMask(const TargetRegisterClass *RC, static RegDomain getDomain(const TargetRegisterClass *RC, const TargetRegisterInfo *TRI) { - if (isGPR(RC)) + if (TRI->isGeneralPurposeRegisterClass(RC)) return GPRDomain; if (isMask(RC, TRI)) return MaskDomain; @@ -797,7 +790,8 @@ bool X86DomainReassignment::runOnMachineFunction(MachineFunction &MF) { continue; // GPR only current source domain supported. - if (!isGPR(MRI->getRegClass(Reg))) + if (!MRI->getTargetRegisterInfo()->isGeneralPurposeRegisterClass( + MRI->getRegClass(Reg))) continue; // Register already in closure. |
