forked from OSchip/llvm-project
Simplify the subtarget info, allow the asmwriter to do some target sensing
based on TargetType. llvm-svn: 24478
This commit is contained in:
parent
99be8f766f
commit
40f8c8450d
|
@ -16,11 +16,7 @@
|
||||||
using namespace llvm;
|
using namespace llvm;
|
||||||
|
|
||||||
X86Subtarget::X86Subtarget(const Module &M, const std::string &FS)
|
X86Subtarget::X86Subtarget(const Module &M, const std::string &FS)
|
||||||
: TargetSubtarget(), stackAlignment(8),
|
: stackAlignment(8), indirectExternAndWeakGlobals(false) {
|
||||||
indirectExternAndWeakGlobals(false), asmDarwinLinkerStubs(false),
|
|
||||||
asmLeadingUnderscore(false), asmAlignmentIsInBytes(false),
|
|
||||||
asmPrintDotLocalConstants(false), asmPrintDotLCommConstants(false),
|
|
||||||
asmPrintConstantAlignment(false) {
|
|
||||||
|
|
||||||
// Default to ELF unless otherwise specified.
|
// Default to ELF unless otherwise specified.
|
||||||
TargetType = isELF;
|
TargetType = isELF;
|
||||||
|
@ -46,17 +42,8 @@ X86Subtarget::X86Subtarget(const Module &M, const std::string &FS)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (TargetType) {
|
if (TargetType == isDarwin) {
|
||||||
case isCygwin:
|
|
||||||
asmLeadingUnderscore = true;
|
|
||||||
break;
|
|
||||||
case isDarwin:
|
|
||||||
stackAlignment = 16;
|
stackAlignment = 16;
|
||||||
indirectExternAndWeakGlobals = true;
|
indirectExternAndWeakGlobals = true;
|
||||||
asmDarwinLinkerStubs = true;
|
|
||||||
asmLeadingUnderscore = true;
|
|
||||||
asmPrintDotLCommConstants = true;
|
|
||||||
break;
|
|
||||||
default: break;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,13 +30,6 @@ protected:
|
||||||
/// Used by instruction selector
|
/// Used by instruction selector
|
||||||
bool indirectExternAndWeakGlobals;
|
bool indirectExternAndWeakGlobals;
|
||||||
|
|
||||||
/// Used by the asm printer
|
|
||||||
bool asmDarwinLinkerStubs;
|
|
||||||
bool asmLeadingUnderscore;
|
|
||||||
bool asmAlignmentIsInBytes;
|
|
||||||
bool asmPrintDotLocalConstants;
|
|
||||||
bool asmPrintDotLCommConstants;
|
|
||||||
bool asmPrintConstantAlignment;
|
|
||||||
public:
|
public:
|
||||||
enum {
|
enum {
|
||||||
isELF, isCygwin, isDarwin, isWindows
|
isELF, isCygwin, isDarwin, isWindows
|
||||||
|
|
Loading…
Reference in New Issue