summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
diff options
context:
space:
mode:
authorEric Christopher <echristo@gmail.com>2013-09-04 21:36:52 +0000
committerEric Christopher <echristo@gmail.com>2013-09-04 21:36:52 +0000
commitc9f1e785d55cbc47a0ae33a49b8ea2c45b442d2b (patch)
tree2b05429e0aaa3e4b4c48a6b1641ac52a647ad8a3 /llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
parentb72ef638f4e205ce488d59255024b60ff38fd214 (diff)
downloadbcm5719-llvm-c9f1e785d55cbc47a0ae33a49b8ea2c45b442d2b.tar.gz
bcm5719-llvm-c9f1e785d55cbc47a0ae33a49b8ea2c45b442d2b.zip
Revert "Revert r189902 as the workaround shouldn't be necessary anymore."
Needs testcase updates. llvm-svn: 190000
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
index 535b094f168..6835f40cd8e 100644
--- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
+++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
@@ -161,8 +161,12 @@ DIType DbgVariable::getType() const {
/// Return Dwarf Version by checking module flags.
static unsigned getDwarfVersionFromModule(const Module *M) {
Value *Val = M->getModuleFlag("Dwarf Version");
+ // If we don't have a value in the module go ahead and use the default in
+ // dwarf::DWARF_VERSION.
+ // FIXME: Apple ld has a problem parsing compilation units that specify a
+ // dwarf version of greater than 3.
if (!Val)
- return dwarf::DWARF_VERSION;
+ return Triple(M->getTargetTriple()).isOSDarwin() ? 3 : dwarf::DWARF_VERSION;
return cast<ConstantInt>(Val)->getZExtValue();
}
OpenPOWER on IntegriCloud