SparcSubtarget.cpp (261991) | SparcSubtarget.cpp (262613) |
---|---|
1//===-- SparcSubtarget.cpp - SPARC Subtarget Information ------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 17 unchanged lines hidden (view full) --- 26 27SparcSubtarget::SparcSubtarget(const std::string &TT, const std::string &CPU, 28 const std::string &FS, bool is64Bit) : 29 SparcGenSubtargetInfo(TT, CPU, FS), 30 IsV9(false), 31 V8DeprecatedInsts(false), 32 IsVIS(false), 33 Is64Bit(is64Bit), | 1//===-- SparcSubtarget.cpp - SPARC Subtarget Information ------------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 17 unchanged lines hidden (view full) --- 26 27SparcSubtarget::SparcSubtarget(const std::string &TT, const std::string &CPU, 28 const std::string &FS, bool is64Bit) : 29 SparcGenSubtargetInfo(TT, CPU, FS), 30 IsV9(false), 31 V8DeprecatedInsts(false), 32 IsVIS(false), 33 Is64Bit(is64Bit), |
34 HasHardQuad(false) { | 34 HasHardQuad(false), 35 UsePopc(false) { |
35 36 // Determine default and user specified characteristics 37 std::string CPUName = CPU; | 36 37 // Determine default and user specified characteristics 38 std::string CPUName = CPU; |
38 if (CPUName.empty()) { 39 if (is64Bit) 40 CPUName = "v9"; 41 else 42 CPUName = "v8"; 43 } 44 IsV9 = CPUName == "v9"; | 39 if (CPUName.empty()) 40 CPUName = (is64Bit) ? "v9" : "v8"; |
45 46 // Parse features string. 47 ParseSubtargetFeatures(CPUName, FS); | 41 42 // Parse features string. 43 ParseSubtargetFeatures(CPUName, FS); |
44 45 // Popc is a v9-only instruction. 46 if (!IsV9) 47 UsePopc = false; |
|
48} 49 50 51int SparcSubtarget::getAdjustedFrameSize(int frameSize) const { 52 53 if (is64Bit()) { 54 // All 64-bit stack frames must be 16-byte aligned, and must reserve space 55 // for spilling the 16 window registers at %sp+BIAS..%sp+BIAS+128. --- 20 unchanged lines hidden --- | 48} 49 50 51int SparcSubtarget::getAdjustedFrameSize(int frameSize) const { 52 53 if (is64Bit()) { 54 // All 64-bit stack frames must be 16-byte aligned, and must reserve space 55 // for spilling the 16 window registers at %sp+BIAS..%sp+BIAS+128. --- 20 unchanged lines hidden --- |