aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/Mips/MipsAsmPrinter.cpp
diff options
context:
space:
mode:
authorJack Carter <jcarter@mips.com>2013-01-30 02:16:36 +0000
committerJack Carter <jcarter@mips.com>2013-01-30 02:16:36 +0000
commitdba14301f0098f9fc5c0d244bf334f55a6a21960 (patch)
tree12e6d9123a7a7eaa3394a440bf423d1a2767e6c0 /lib/Target/Mips/MipsAsmPrinter.cpp
parent9a7bf438b50fed2c77f0e2bc835defa5b4728f82 (diff)
This patch implements runtime Mips specific
setting of ELF header e_flags. Contributer: Jack Carter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173884 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsAsmPrinter.cpp')
-rw-r--r--lib/Target/Mips/MipsAsmPrinter.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Target/Mips/MipsAsmPrinter.cpp b/lib/Target/Mips/MipsAsmPrinter.cpp
index e3c34297ce..df6baaf474 100644
--- a/lib/Target/Mips/MipsAsmPrinter.cpp
+++ b/lib/Target/Mips/MipsAsmPrinter.cpp
@@ -15,6 +15,7 @@
#define DEBUG_TYPE "mips-asm-printer"
#include "InstPrinter/MipsInstPrinter.h"
#include "MCTargetDesc/MipsBaseInfo.h"
+#include "MCTargetDesc/MipsELFStreamer.h"
#include "Mips.h"
#include "MipsAsmPrinter.h"
#include "MipsInstrInfo.h"
@@ -545,9 +546,13 @@ void MipsAsmPrinter::EmitStartOfAsmFile(Module &M) {
void MipsAsmPrinter::EmitEndOfAsmFile(Module &M) {
+ if (OutStreamer.hasRawTextSupport()) return;
+
// Emit Mips ELF register info
Subtarget->getMReginfo().emitMipsReginfoSectionCG(
OutStreamer, getObjFileLowering(), *Subtarget);
+ MipsELFStreamer & MES = static_cast<MipsELFStreamer &>(OutStreamer);
+ MES.emitELFHeaderFlagsCG(*Subtarget);
}
MachineLocation