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), 35 UsePopc(false) { |
36 37 // Determine default and user specified characteristics 38 std::string CPUName = CPU; |
39 if (CPUName.empty()) 40 CPUName = (is64Bit) ? "v9" : "v8"; |
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 --- |