aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/PowerPC/PPCSubtarget.cpp
diff options
context:
space:
mode:
authorNate Begeman <natebegeman@mac.com>2005-10-18 00:56:42 +0000
committerNate Begeman <natebegeman@mac.com>2005-10-18 00:56:42 +0000
commit9d2b817fcbad2ee615be323c38f1ed66d81964dc (patch)
treea62fd226ac5e5fcc2d50fd22d89ad4c77abe48a2 /lib/Target/PowerPC/PPCSubtarget.cpp
parent1d9d7427c4a4e3c7bdcfd1f725447f355e509c20 (diff)
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23779 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/PPCSubtarget.cpp')
-rw-r--r--lib/Target/PowerPC/PPCSubtarget.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/PPCSubtarget.cpp b/lib/Target/PowerPC/PPCSubtarget.cpp
index b0861d7345..c07b33ec8f 100644
--- a/lib/Target/PowerPC/PPCSubtarget.cpp
+++ b/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.