diff --git a/tools/llc/llc.cpp b/tools/llc/llc.cpp index d34a3ed745a..bb426a9de8c 100644 --- a/tools/llc/llc.cpp +++ b/tools/llc/llc.cpp @@ -278,6 +278,18 @@ int main(int argc, char **argv) { if (DisableDotLoc) Target.setMCUseLoc(false); + if (TheTriple.getOS() == Triple::Darwin) { + switch (TheTriple.getDarwinMajorNumber()) { + case 7: + case 8: + case 9: + // disable .loc support for older darwin OS. + Target.setMCUseLoc(false); + break; + default: + break; + } + } // Figure out where we are going to send the output... OwningPtr Out