projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Tidied up target triple OS detection. NFC
[oota-llvm.git]
/
lib
/
Target
/
X86
/
MCTargetDesc
/
X86MCAsmInfo.cpp
diff --git
a/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
b/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
index 5a3f28c3f70670bd29e80340aca01e15cb044c98..db7f0ae914eb48c8771a786c1275005b670acaf2 100644
(file)
--- a/
lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
+++ b/
lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
@@
-72,10
+72,10
@@
X86MCAsmInfoDarwin::X86MCAsmInfoDarwin(const Triple &T) {
if (T.isMacOSX() && T.isMacOSXVersionLT(10, 6))
HasWeakDefCanBeHiddenDirective = false;
if (T.isMacOSX() && T.isMacOSXVersionLT(10, 6))
HasWeakDefCanBeHiddenDirective = false;
- //
FIXME: this should not depend on the target OS version, but on the ld64
- //
version in use. From at least >= ld64-97.17 (Xcode 3.2.6) the abs-ified
- //
FDE relocs may be used
.
- DwarfFDESymbolsUseAbsDiff =
T.isMacOSX() && !T.isMacOSXVersionLT(10, 6)
;
+ //
Assume ld64 is new enough that the abs-ified FDE relocs may be used
+ //
(actually, must, since otherwise the non-extern relocations we produce
+ //
overwhelm ld64's tiny little mind and it fails)
.
+ DwarfFDESymbolsUseAbsDiff =
true
;
UseIntegratedAssembler = true;
}
UseIntegratedAssembler = true;
}
@@
-102,9
+102,6
@@
X86ELFMCAsmInfo::X86ELFMCAsmInfo(const Triple &T) {
TextAlignFillValue = 0x90;
TextAlignFillValue = 0x90;
- // Set up DWARF directives
- HasLEB128 = true; // Target asm supports leb128 directives (little-endian)
-
// Debug Information
SupportsDebugInformation = true;
// Debug Information
SupportsDebugInformation = true;
@@
-113,8
+110,7
@@
X86ELFMCAsmInfo::X86ELFMCAsmInfo(const Triple &T) {
// OpenBSD and Bitrig have buggy support for .quad in 32-bit mode, just split
// into two .words.
// OpenBSD and Bitrig have buggy support for .quad in 32-bit mode, just split
// into two .words.
- if ((T.getOS() == Triple::OpenBSD || T.getOS() == Triple::Bitrig) &&
- T.getArch() == Triple::x86)
+ if ((T.isOSOpenBSD() || T.isOSBitrig()) && T.getArch() == Triple::x86)
Data64bitsDirective = nullptr;
// Always enable the integrated assembler by default.
Data64bitsDirective = nullptr;
// Always enable the integrated assembler by default.
@@
-133,19
+129,14
@@
X86_64MCAsmInfoDarwin::getExprForPersonalitySymbol(const MCSymbol *Sym,
return MCBinaryExpr::CreateAdd(Res, Four, Context);
}
return MCBinaryExpr::CreateAdd(Res, Four, Context);
}
-const MCSection *X86ELFMCAsmInfo::
-getNonexecutableStackSection(MCContext &Ctx) const {
- return Ctx.getELFSection(".note.GNU-stack", ELF::SHT_PROGBITS,
- 0, SectionKind::getMetadata());
-}
-
void X86MCAsmInfoMicrosoft::anchor() { }
X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft(const Triple &Triple) {
if (Triple.getArch() == Triple::x86_64) {
PrivateGlobalPrefix = ".L";
PointerSize = 8;
void X86MCAsmInfoMicrosoft::anchor() { }
X86MCAsmInfoMicrosoft::X86MCAsmInfoMicrosoft(const Triple &Triple) {
if (Triple.getArch() == Triple::x86_64) {
PrivateGlobalPrefix = ".L";
PointerSize = 8;
- ExceptionsType = ExceptionHandling::Win64;
+ WinEHEncodingType = WinEH::EncodingType::Itanium;
+ ExceptionsType = ExceptionHandling::ItaniumWinEH;
}
AssemblerDialect = AsmWriterFlavor;
}
AssemblerDialect = AsmWriterFlavor;
@@
-164,7
+155,8
@@
X86MCAsmInfoGNUCOFF::X86MCAsmInfoGNUCOFF(const Triple &Triple) {
if (Triple.getArch() == Triple::x86_64) {
PrivateGlobalPrefix = ".L";
PointerSize = 8;
if (Triple.getArch() == Triple::x86_64) {
PrivateGlobalPrefix = ".L";
PointerSize = 8;
- ExceptionsType = ExceptionHandling::Win64;
+ WinEHEncodingType = WinEH::EncodingType::Itanium;
+ ExceptionsType = ExceptionHandling::ItaniumWinEH;
} else {
ExceptionsType = ExceptionHandling::DwarfCFI;
}
} else {
ExceptionsType = ExceptionHandling::DwarfCFI;
}