diff options
| author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2009-08-13 23:30:21 +0000 |
|---|---|---|
| committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2009-08-13 23:30:21 +0000 |
| commit | 0ff6effb21071dfb4b99c02bbd743bd14cefab37 (patch) | |
| tree | 08f88c07f62f402320663b559c9f558a75849877 /lib/Target | |
| parent | 02f7bd5a38a6712f438cbee3cbcf7ef0b1f0618d (diff) | |
| download | external_llvm-0ff6effb21071dfb4b99c02bbd743bd14cefab37.zip external_llvm-0ff6effb21071dfb4b99c02bbd743bd14cefab37.tar.gz external_llvm-0ff6effb21071dfb4b99c02bbd743bd14cefab37.tar.bz2 | |
Remove HasCrazyBSS and add a flag in TAI to indicate that '.section'
must be emitted for PowerPC-Linux '.bss' section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78958 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
| -rw-r--r-- | lib/Target/PowerPC/PPCISelLowering.cpp | 2 | ||||
| -rw-r--r-- | lib/Target/PowerPC/PPCTargetAsmInfo.cpp | 3 | ||||
| -rw-r--r-- | lib/Target/TargetAsmInfo.cpp | 1 | ||||
| -rw-r--r-- | lib/Target/TargetLoweringObjectFile.cpp | 4 |
4 files changed, 7 insertions, 3 deletions
diff --git a/lib/Target/PowerPC/PPCISelLowering.cpp b/lib/Target/PowerPC/PPCISelLowering.cpp index 569026f..7ad81f8 100644 --- a/lib/Target/PowerPC/PPCISelLowering.cpp +++ b/lib/Target/PowerPC/PPCISelLowering.cpp @@ -60,7 +60,7 @@ cl::desc("enable preincrement load/store generation on PPC (experimental)"), static TargetLoweringObjectFile *CreateTLOF(const PPCTargetMachine &TM) { if (TM.getSubtargetImpl()->isDarwin()) return new TargetLoweringObjectFileMachO(); - return new TargetLoweringObjectFileELF(true); + return new TargetLoweringObjectFileELF(); } diff --git a/lib/Target/PowerPC/PPCTargetAsmInfo.cpp b/lib/Target/PowerPC/PPCTargetAsmInfo.cpp index 36cf2a5..864475b 100644 --- a/lib/Target/PowerPC/PPCTargetAsmInfo.cpp +++ b/lib/Target/PowerPC/PPCTargetAsmInfo.cpp @@ -30,6 +30,9 @@ PPCLinuxTargetAsmInfo::PPCLinuxTargetAsmInfo(bool is64Bit) { PrivateGlobalPrefix = ".L"; UsedDirective = "\t# .no_dead_strip\t"; WeakRefDirective = "\t.weak\t"; + + // Uses '.section' before '.bss' directive + UsesELFSectionDirectiveForBSS = true; // Debug Information AbsoluteDebugSectionOffsets = true; diff --git a/lib/Target/TargetAsmInfo.cpp b/lib/Target/TargetAsmInfo.cpp index 253d72c..20a5849 100644 --- a/lib/Target/TargetAsmInfo.cpp +++ b/lib/Target/TargetAsmInfo.cpp @@ -50,6 +50,7 @@ TargetAsmInfo::TargetAsmInfo() { Data32bitsDirective = "\t.long\t"; Data64bitsDirective = "\t.quad\t"; SunStyleELFSectionSwitchSyntax = false; + UsesELFSectionDirectiveForBSS = false; AlignDirective = "\t.align\t"; AlignmentIsInBytes = true; TextAlignFillValue = 0; diff --git a/lib/Target/TargetLoweringObjectFile.cpp b/lib/Target/TargetLoweringObjectFile.cpp index edc9ed3..7cb87ef 100644 --- a/lib/Target/TargetLoweringObjectFile.cpp +++ b/lib/Target/TargetLoweringObjectFile.cpp @@ -298,8 +298,8 @@ getELFSection(StringRef Section, unsigned Type, unsigned Flags, const MCSectionELF *&Entry = Map[Section]; if (Entry) return Entry; - return Entry = MCSectionELF::Create(Section, Type, Flags, Kind, HasCrazyBSS, - IsExplicit, getContext()); + return Entry = MCSectionELF::Create(Section, Type, Flags, Kind, IsExplicit, + getContext()); } void TargetLoweringObjectFileELF::Initialize(MCContext &Ctx, |
