fix a bunch of failing tests now that MCContext::GetSection doesn't create sections.
llvm-svn: 77689
This commit is contained in:
parent
f332516136
commit
0f5a6fc38b
|
@ -17,6 +17,7 @@
|
|||
#include "llvm/ADT/Twine.h"
|
||||
#include "llvm/MC/MCContext.h"
|
||||
#include "llvm/MC/MCInst.h"
|
||||
#include "llvm/MC/MCSection.h"
|
||||
#include "llvm/MC/MCStreamer.h"
|
||||
#include "llvm/MC/MCSymbol.h"
|
||||
#include "llvm/Support/SourceMgr.h"
|
||||
|
@ -641,7 +642,12 @@ bool AsmParser::ParseDirectiveDarwinSection() {
|
|||
return TokError("unexpected token in '.section' directive");
|
||||
Lexer.Lex();
|
||||
|
||||
Out.SwitchSection(Ctx.GetSection(Section.c_str()));
|
||||
// FIXME: Arch specific.
|
||||
MCSection *S = Ctx.GetSection(Section);
|
||||
if (S == 0)
|
||||
S = MCSection::Create(Section, Ctx);
|
||||
|
||||
Out.SwitchSection(S);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
@ -657,7 +663,12 @@ bool AsmParser::ParseDirectiveSectionSwitch(const char *Section,
|
|||
SectionStr += Directives;
|
||||
}
|
||||
|
||||
Out.SwitchSection(Ctx.GetSection(Section));
|
||||
// FIXME: Arch specific.
|
||||
MCSection *S = Ctx.GetSection(Section);
|
||||
if (S == 0)
|
||||
S = MCSection::Create(Section, Ctx);
|
||||
|
||||
Out.SwitchSection(S);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "llvm/MC/MCContext.h"
|
||||
#include "llvm/MC/MCSection.h"
|
||||
#include "llvm/MC/MCStreamer.h"
|
||||
#include "llvm/ADT/OwningPtr.h"
|
||||
#include "llvm/Support/CommandLine.h"
|
||||
|
@ -189,8 +190,8 @@ static int AssembleInput(const char *ProgName) {
|
|||
OwningPtr<MCStreamer> Str(createAsmStreamer(Ctx, outs()));
|
||||
|
||||
// FIXME: Target hook & command line option for initial section.
|
||||
Str.get()->SwitchSection(Ctx.GetSection("__TEXT,__text,"
|
||||
"regular,pure_instructions"));
|
||||
Str.get()->SwitchSection(MCSection::Create("__TEXT,__text,"
|
||||
"regular,pure_instructions", Ctx));
|
||||
|
||||
AsmParser Parser(SrcMgr, Ctx, *Str.get());
|
||||
OwningPtr<TargetAsmParser> TAP(GetTargetAsmParser(ProgName, Parser));
|
||||
|
|
Loading…
Reference in New Issue