aboutsummaryrefslogtreecommitdiff
path: root/tools/llvm-mc/AsmParser.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-08-28 05:48:29 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-08-28 05:48:29 +0000
commit2e15292659f174376ef10fac1172c9ef1a605c8a (patch)
tree277939aefaebe383c6cf36d5e8be204b0e761b47 /tools/llvm-mc/AsmParser.cpp
parent8751b94ffbd9c49df8949a37f78d6bd0be87b256 (diff)
llvm-mc: Unique zero fill sections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80342 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-mc/AsmParser.cpp')
-rw-r--r--tools/llvm-mc/AsmParser.cpp26
1 files changed, 9 insertions, 17 deletions
diff --git a/tools/llvm-mc/AsmParser.cpp b/tools/llvm-mc/AsmParser.cpp
index 2c855d950f..9f219925b0 100644
--- a/tools/llvm-mc/AsmParser.cpp
+++ b/tools/llvm-mc/AsmParser.cpp
@@ -1287,15 +1287,10 @@ bool AsmParser::ParseDirectiveDarwinZerofill() {
// If this is the end of the line all that was wanted was to create the
// the section but with no symbol.
if (Lexer.is(AsmToken::EndOfStatement)) {
- // FIXME: CACHE THIS.
- MCSection *S = 0; //Ctx.GetSection(Section);
- if (S == 0)
- S = MCSectionMachO::Create(Segment, Section,
- MCSectionMachO::S_ZEROFILL, 0,
- SectionKind(), Ctx);
-
// Create the zerofill section but no symbol
- Out.EmitZerofill(S);
+ Out.EmitZerofill(getMachOSection(Segment, Section,
+ MCSectionMachO::S_ZEROFILL, 0,
+ SectionKind()));
return false;
}
@@ -1348,16 +1343,13 @@ bool AsmParser::ParseDirectiveDarwinZerofill() {
if (!Sym->isUndefined())
return Error(IDLoc, "invalid symbol redefinition");
- // FIXME: Arch specific.
- // FIXME: CACHE.
- MCSection *S = 0; //Ctx.GetSection(Section);
- if (S == 0)
- S = MCSectionMachO::Create(Segment, Section,
- MCSectionMachO::S_ZEROFILL, 0,
- SectionKind(), Ctx);
-
// Create the zerofill Symbol with Size and Pow2Alignment
- Out.EmitZerofill(S, Sym, Size, Pow2Alignment);
+ //
+ // FIXME: Arch specific.
+ Out.EmitZerofill(getMachOSection(Segment, Section,
+ MCSectionMachO::S_ZEROFILL, 0,
+ SectionKind()),
+ Sym, Size, Pow2Alignment);
return false;
}