mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-16 12:24:03 +00:00
Make the big switch: Change MCSectionMachO to represent a section *semantically*
instead of syntactically as a string. This means that it keeps track of the segment, section, flags, etc directly and asmprints them in the right format. This also includes parsing and validation support for llvm-mc and "attribute(section)", so we should now start getting errors about invalid section attributes from the compiler instead of the assembler on darwin. Still todo: 1) Uniquing of darwin mcsections 2) Move all the Darwin stuff out to MCSectionMachO.[cpp|h] 3) there are a few FIXMEs, for example what is the syntax to get the S_GB_ZEROFILL segment type? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78547 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -186,11 +186,10 @@ static int AssembleInput(const char *ProgName) {
|
||||
OwningPtr<MCStreamer> Str(createAsmStreamer(Ctx, outs()));
|
||||
|
||||
// FIXME: Target hook & command line option for initial section.
|
||||
Str.get()->SwitchSection(MCSectionMachO::Create("__TEXT,__text,"
|
||||
"regular,pure_instructions",
|
||||
false,
|
||||
SectionKind::getText(),
|
||||
Ctx));
|
||||
Str.get()->SwitchSection(MCSectionMachO::Create("__TEXT","__text",
|
||||
MCSectionMachO::S_ATTR_PURE_INSTRUCTIONS,
|
||||
0, SectionKind::getText(),
|
||||
Ctx));
|
||||
|
||||
AsmParser Parser(SrcMgr, Ctx, *Str.get());
|
||||
OwningPtr<TargetAsmParser> TAP(GetTargetAsmParser(ProgName, Parser));
|
||||
|
Reference in New Issue
Block a user