diff options
| author | Evan Cheng <evan.cheng@apple.com> | 2010-07-19 22:15:08 +0000 |
|---|---|---|
| committer | Evan Cheng <evan.cheng@apple.com> | 2010-07-19 22:15:08 +0000 |
| commit | d70f57b254114841892425a40944268d38ae0bcd (patch) | |
| tree | a0ecece58a2f27bc4732c896c9b51fb171f59fb4 /include | |
| parent | bd3c63c70ed5e146e6d057cb842d4c2eec4f1cf8 (diff) | |
ARM has to provide its own TargetLowering::findRepresentativeClass because its scalar floating point registers alias its vector registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108761 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
| -rw-r--r-- | include/llvm/Target/TargetLowering.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/include/llvm/Target/TargetLowering.h b/include/llvm/Target/TargetLowering.h index 67ecb72219..926efc4eb7 100644 --- a/include/llvm/Target/TargetLowering.h +++ b/include/llvm/Target/TargetLowering.h @@ -993,6 +993,11 @@ protected: Synthesizable[VT.getSimpleVT().SimpleTy] = isSynthesizable; } + /// findRepresentativeClass - Return the largest legal super-reg register class + /// of the specified register class. + virtual const TargetRegisterClass * + findRepresentativeClass(const TargetRegisterClass *RC) const; + /// computeRegisterProperties - Once all of the register classes are added, /// this allows us to compute derived properties we expose. void computeRegisterProperties(); @@ -1698,12 +1703,7 @@ private: /// hasLegalSuperRegRegClasses - Return true if the specified register class /// has one or more super-reg register classes that are legal. - bool hasLegalSuperRegRegClasses(const TargetRegisterClass *RC); - - /// findRepresentativeClass - Return the largest legal super-reg register class - /// of the specified register class. - const TargetRegisterClass * - findRepresentativeClass(const TargetRegisterClass *RC); + bool hasLegalSuperRegRegClasses(const TargetRegisterClass *RC) const; }; /// GetReturnInfo - Given an LLVM IR type and return type attributes, |
