diff options
| author | Nate Begeman <natebegeman@mac.com> | 2005-10-18 00:56:42 +0000 |
|---|---|---|
| committer | Nate Begeman <natebegeman@mac.com> | 2005-10-18 00:56:42 +0000 |
| commit | e74dfbb9ce97d5b6dad65abede56b8013418e970 (patch) | |
| tree | 11a628170503822f709ac41c5eac3c60357ed109 /llvm/lib/Target/PowerPC/PPCSubtarget.cpp | |
| parent | 0b71e007ef8943022b384832de0fe88804d18296 (diff) | |
| download | llvm-e74dfbb9ce97d5b6dad65abede56b8013418e970.zip llvm-e74dfbb9ce97d5b6dad65abede56b8013418e970.tar.gz llvm-e74dfbb9ce97d5b6dad65abede56b8013418e970.tar.bz2 | |
Do the right thing and enable 64 bit regs under the control of a subtarget
option. Currently the only way to enable this is to specify the
64bitregs mattr flag. It is never enabled by default on any config yet.
llvm-svn: 23779
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCSubtarget.cpp')
| -rw-r--r-- | llvm/lib/Target/PowerPC/PPCSubtarget.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCSubtarget.cpp b/llvm/lib/Target/PowerPC/PPCSubtarget.cpp index b0861d7..c07b33e 100644 --- a/llvm/lib/Target/PowerPC/PPCSubtarget.cpp +++ b/llvm/lib/Target/PowerPC/PPCSubtarget.cpp @@ -36,6 +36,7 @@ enum PowerPCFeature { PowerPCFeatureAltivec = 1 << 1, PowerPCFeatureFSqrt = 1 << 2, PowerPCFeatureGPUL = 1 << 3, + PowerPCFeature64BRegs = 1 << 4 }; /// Sorted (by key) array of values for CPU subtype. @@ -73,6 +74,7 @@ static const unsigned PowerPCSubTypeKVSize = sizeof(PowerPCSubTypeKV) /// Sorted (by key) array of values for CPU features. static SubtargetFeatureKV PowerPCFeatureKV[] = { { "64bit" , "Should 64 bit instructions be used" , PowerPCFeature64Bit }, + { "64bitregs", "Should 64 bit registers be used" , PowerPCFeature64BRegs }, { "altivec", "Should Altivec instructions be used" , PowerPCFeatureAltivec }, { "fsqrt" , "Should the fsqrt instruction be used", PowerPCFeatureFSqrt }, { "gpul" , "Should GPUL instructions be used" , PowerPCFeatureGPUL } @@ -134,6 +136,7 @@ PPCSubtarget::PPCSubtarget(const Module &M, const std::string &FS) IsGigaProcessor = (Bits & PowerPCFeatureGPUL ) != 0; Is64Bit = (Bits & PowerPCFeature64Bit) != 0; HasFSQRT = (Bits & PowerPCFeatureFSqrt) != 0; + Has64BitRegs = (Bits & PowerPCFeature64BRegs) != 0; // Set the boolean corresponding to the current target triple, or the default // if one cannot be determined, to true. |
