diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2008-12-19 10:55:56 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2008-12-19 10:55:56 +0000 |
commit | 2f6fea90a54787d873cfc25f33668cb4cc7d6e1e (patch) | |
tree | 6f60253965df296ed5310198772ec2eeb0bd5a95 /lib/CodeGen | |
parent | d802be39d79fa31ea020f9af57830f8a20174b7b (diff) |
Fix bug 3202.
The EH_frame and .eh symbols are now private, except for darwin9 and earlier.
The patch also fixes the definition of PrivateGlobalPrefix on pcc linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61242 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen')
-rw-r--r-- | lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 3 | ||||
-rw-r--r-- | lib/CodeGen/AsmPrinter/DwarfWriter.cpp | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp index b640a589ba..e3cc3b0a27 100644 --- a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp +++ b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp @@ -239,7 +239,8 @@ std::string AsmPrinter::getCurrentFunctionEHName(const MachineFunction *MF) { std::string Name = MF->getFunction()->getName(); if (Name.empty()) Name = Mang->getValueName(MF->getFunction()); - return Mang->makeNameProper(Name + ".eh", TAI->getGlobalPrefix()); + return Mang->makeNameProper(TAI->getEHGlobalPrefix() + + Name + ".eh", TAI->getGlobalPrefix()); } void AsmPrinter::SetupMachineFunction(MachineFunction &MF) { diff --git a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp index e41e4cbb6e..88589d584d 100644 --- a/lib/CodeGen/AsmPrinter/DwarfWriter.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfWriter.cpp @@ -2962,7 +2962,7 @@ private: // Begin eh frame section. Asm->SwitchToTextSection(TAI->getDwarfEHFrameSection()); - O << "EH_frame" << Index << ":\n"; + O << TAI->getEHGlobalPrefix() << "EH_frame" << Index << ":\n"; EmitLabel("section_eh_frame", Index); // Define base labels. |