mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-28 14:10:41 +00:00
Fix llvm-gcc bootstrap with gnu ld.
The problem was codegen guessing the wrong values and printing .section .eh_frame,"aMS",@progbits,4 It is not clear at all if Codegen should try to guess, MC is the one that should know the default flags. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126421 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
3a96275200
commit
0412d5b40a
@ -178,6 +178,10 @@ const MCSection *TargetLoweringObjectFileELF::getEHFrameSection() const {
|
||||
|
||||
static SectionKind
|
||||
getELFKindForNamedSection(StringRef Name, SectionKind K) {
|
||||
// FIXME: Why is this here? Codegen is should not be in the business
|
||||
// of figuring section flags. If the user wrote section(".eh_frame"),
|
||||
// we should just pass that to MC which will defer to the assembly
|
||||
// or use its default if producing an object file.
|
||||
if (Name.empty() || Name[0] != '.') return K;
|
||||
|
||||
// Some lame default implementation based on some magic section names.
|
||||
@ -203,6 +207,9 @@ getELFKindForNamedSection(StringRef Name, SectionKind K) {
|
||||
Name.startswith(".llvm.linkonce.tb."))
|
||||
return SectionKind::getThreadBSS();
|
||||
|
||||
if (Name == ".eh_frame")
|
||||
return SectionKind::getDataRel();
|
||||
|
||||
return K;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user