From bdee6dffa5c8d74f09198794a057722912592e7e Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Thu, 27 Aug 2009 23:58:10 +0000 Subject: [PATCH] Revert r80305, I forgot a dependent change. --- Reverse-merging r80305 into '.': U tools/llvm-mc/AsmParser.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80309 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/llvm-mc/AsmParser.cpp | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/tools/llvm-mc/AsmParser.cpp b/tools/llvm-mc/AsmParser.cpp index 9f219925b0f..2c855d950fd 100644 --- a/tools/llvm-mc/AsmParser.cpp +++ b/tools/llvm-mc/AsmParser.cpp @@ -1287,10 +1287,15 @@ 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(getMachOSection(Segment, Section, - MCSectionMachO::S_ZEROFILL, 0, - SectionKind())); + Out.EmitZerofill(S); return false; } @@ -1343,13 +1348,16 @@ bool AsmParser::ParseDirectiveDarwinZerofill() { if (!Sym->isUndefined()) return Error(IDLoc, "invalid symbol redefinition"); - // Create the zerofill Symbol with Size and Pow2Alignment - // // FIXME: Arch specific. - Out.EmitZerofill(getMachOSection(Segment, Section, - MCSectionMachO::S_ZEROFILL, 0, - SectionKind()), - Sym, Size, Pow2Alignment); + // 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); return false; }