diff options
author | Bill Wendling <isanbard@gmail.com> | 2011-06-23 05:13:28 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2011-06-23 05:13:28 +0000 |
commit | 4c0c446d7458ffcfbe108ea71f1915f387e150e7 (patch) | |
tree | 3186a506cfd7c5d774595193e844dc9e0f8d9de8 /lib | |
parent | 9dbbd87938a0dc2ffe23f4205ec61618e052ca92 (diff) | |
download | external_llvm-4c0c446d7458ffcfbe108ea71f1915f387e150e7.zip external_llvm-4c0c446d7458ffcfbe108ea71f1915f387e150e7.tar.gz external_llvm-4c0c446d7458ffcfbe108ea71f1915f387e150e7.tar.bz2 |
Use the presence of the __compact_unwind section to indicate that a target
supports compact unwind info instead of having a separate flag indicating this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133685 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/CodeGen/TargetLoweringObjectFileImpl.cpp | 17 | ||||
-rw-r--r-- | lib/MC/MCDwarf.cpp | 2 | ||||
-rw-r--r-- | lib/Target/TargetLoweringObjectFile.cpp | 1 |
3 files changed, 8 insertions, 12 deletions
diff --git a/lib/CodeGen/TargetLoweringObjectFileImpl.cpp b/lib/CodeGen/TargetLoweringObjectFileImpl.cpp index df42b2c..f2eb5cf 100644 --- a/lib/CodeGen/TargetLoweringObjectFileImpl.cpp +++ b/lib/CodeGen/TargetLoweringObjectFileImpl.cpp @@ -487,12 +487,8 @@ void TargetLoweringObjectFileMachO::Initialize(MCContext &Ctx, // .comm doesn't support alignment before Leopard. Triple T(((LLVMTargetMachine&)TM).getTargetTriple()); - if (T.isMacOSX()) { - if (T.isMacOSXVersionLT(10, 5)) - CommDirectiveSupportsAlignment = false; - if (!T.isMacOSXVersionLT(10, 6)) - SupportsCompactUnwindInfo = true; - } + if (T.isMacOSX() && T.isMacOSXVersionLT(10, 5)) + CommDirectiveSupportsAlignment = false; TargetLoweringObjectFile::Initialize(Ctx, TM); @@ -610,10 +606,11 @@ void TargetLoweringObjectFileMachO::Initialize(MCContext &Ctx, LSDASection = getContext().getMachOSection("__TEXT", "__gcc_except_tab", 0, SectionKind::getReadOnlyWithRel()); - CompactUnwindSection = - getContext().getMachOSection("__LD", "__compact_unwind", - MCSectionMachO::S_ATTR_DEBUG, - SectionKind::getReadOnly()); + if (T.isMacOSX() && !T.isMacOSXVersionLT(10, 6)) + CompactUnwindSection = + getContext().getMachOSection("__LD", "__compact_unwind", + MCSectionMachO::S_ATTR_DEBUG, + SectionKind::getReadOnly()); // Debug Information. DwarfAbbrevSection = diff --git a/lib/MC/MCDwarf.cpp b/lib/MC/MCDwarf.cpp index 937dad4..dd63c15 100644 --- a/lib/MC/MCDwarf.cpp +++ b/lib/MC/MCDwarf.cpp @@ -917,7 +917,7 @@ void MCDwarfFrameEmitter::Emit(MCStreamer &streamer, CIEKey key(frame.Personality, frame.PersonalityEncoding, frame.LsdaEncoding); const MCSymbol *&cieStart = isEH ? CIEStarts[key] : DummyDebugKey; - if (isEH && asmInfo.getSupportsCompactUnwindInfo() && + if (isEH && asmInfo.getCompactUnwindSection() && Emitter.EmitCompactUnwind(streamer, frame)) continue; diff --git a/lib/Target/TargetLoweringObjectFile.cpp b/lib/Target/TargetLoweringObjectFile.cpp index 130a553..9f87c07 100644 --- a/lib/Target/TargetLoweringObjectFile.cpp +++ b/lib/Target/TargetLoweringObjectFile.cpp @@ -61,7 +61,6 @@ TargetLoweringObjectFile::TargetLoweringObjectFile() : Ctx(0) { IsFunctionEHFrameSymbolPrivate = true; SupportsWeakOmittedEHFrame = true; - SupportsCompactUnwindInfo = false; } TargetLoweringObjectFile::~TargetLoweringObjectFile() { |