diff options
Diffstat (limited to 'contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp')
-rw-r--r-- | contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp b/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp index d701594..a6a4dc5 100644 --- a/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp +++ b/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp @@ -29,10 +29,27 @@ void SparcSubtarget::anchor() { } SparcSubtarget &SparcSubtarget::initializeSubtargetDependencies(StringRef CPU, StringRef FS) { IsV9 = false; + IsLeon = false; V8DeprecatedInsts = false; IsVIS = false; HasHardQuad = false; UsePopc = false; + UseSoftFloat = false; + + // Leon features + HasLeonCasa = false; + HasUmacSmac = false; + PerformSDIVReplace = false; + FixCallImmediates = false; + IgnoreZeroFlag = false; + InsertNOPDoublePrecision = false; + FixFSMULD = false; + ReplaceFMULS = false; + PreventRoundChange = false; + FixAllFDIVSQRT = false; + InsertNOPLoad = false; + FlushCacheLineSWAP = false; + InsertNOPsLoadStore = false; // Determine default and user specified characteristics std::string CPUName = CPU; @@ -50,9 +67,9 @@ SparcSubtarget &SparcSubtarget::initializeSubtargetDependencies(StringRef CPU, } SparcSubtarget::SparcSubtarget(const Triple &TT, const std::string &CPU, - const std::string &FS, TargetMachine &TM, + const std::string &FS, const TargetMachine &TM, bool is64Bit) - : SparcGenSubtargetInfo(TT, CPU, FS), Is64Bit(is64Bit), + : SparcGenSubtargetInfo(TT, CPU, FS), TargetTriple(TT), Is64Bit(is64Bit), InstrInfo(initializeSubtargetDependencies(CPU, FS)), TLInfo(TM, *this), FrameLowering(*this) {} @@ -64,7 +81,7 @@ int SparcSubtarget::getAdjustedFrameSize(int frameSize) const { frameSize += 128; // Frames with calls must also reserve space for 6 outgoing arguments // whether they are used or not. LowerCall_64 takes care of that. - frameSize = RoundUpToAlignment(frameSize, 16); + frameSize = alignTo(frameSize, 16); } else { // Emit the correct save instruction based on the number of bytes in // the frame. Minimum stack frame size according to V8 ABI is: @@ -77,7 +94,7 @@ int SparcSubtarget::getAdjustedFrameSize(int frameSize) const { // Round up to next doubleword boundary -- a double-word boundary // is required by the ABI. - frameSize = RoundUpToAlignment(frameSize, 8); + frameSize = alignTo(frameSize, 8); } return frameSize; } |