diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-01-26 06:57:13 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-01-26 06:57:13 +0000 |
commit | cb1953f6d963e7000b064a59e10ed8fc992c0aa6 (patch) | |
tree | f1f6758d00a75181c6773fa2fe6a35e7321fca7c /llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp | |
parent | 9e6d27d037368b97d976402cd7072cc801ba1345 (diff) | |
download | bcm5719-llvm-cb1953f6d963e7000b064a59e10ed8fc992c0aa6.tar.gz bcm5719-llvm-cb1953f6d963e7000b064a59e10ed8fc992c0aa6.zip |
Implement the missing bits corresponding to .mips_hack_elf_flags.
These were:
* noreorder handling on the target object streamer and asm parser.
* setting the initial flag bits based on the enabled features.
* setting the elf header flag for micromips
It is *really* depressing I am the one doing this instead of someone at
mips actually taking the time to understand the infrastructure.
llvm-svn: 200138
Diffstat (limited to 'llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp')
-rw-r--r-- | llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp b/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp index aae2dcd16e7..74e4fffceea 100644 --- a/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp +++ b/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp @@ -194,7 +194,6 @@ class MipsAsmParser : public MCTargetAsmParser { bool isEvaluated(const MCExpr *Expr); bool parseDirectiveSet(); - bool parseDirectiveMipsHackELFFlags(); bool parseDirectiveOption(); bool parseSetAtDirective(); @@ -2311,6 +2310,7 @@ bool MipsAsmParser::parseSetNoReorderDirective() { return false; } Options.setNoreorder(); + getTargetStreamer().emitDirectiveSetNoReorder(); Parser.Lex(); // Consume the EndOfStatement. return false; } @@ -2429,17 +2429,6 @@ bool MipsAsmParser::parseDirectiveSet() { return true; } -bool MipsAsmParser::parseDirectiveMipsHackELFFlags() { - int64_t Flags = 0; - if (Parser.parseAbsoluteExpression(Flags)) { - TokError("unexpected token"); - return false; - } - - getTargetStreamer().emitMipsHackELFFlags(Flags); - return false; -} - /// parseDirectiveWord /// ::= .word [ expression (, expression)* ] bool MipsAsmParser::parseDirectiveWord(unsigned Size, SMLoc L) { @@ -2558,9 +2547,6 @@ bool MipsAsmParser::ParseDirective(AsmToken DirectiveID) { return false; } - if (IDVal == ".mips_hack_elf_flags") - return parseDirectiveMipsHackELFFlags(); - if (IDVal == ".option") return parseDirectiveOption(); |