diff options
author | Jack Carter <jack.carter@imgtec.com> | 2014-01-06 23:27:31 +0000 |
---|---|---|
committer | Jack Carter <jack.carter@imgtec.com> | 2014-01-06 23:27:31 +0000 |
commit | 0cd3c19f33a7bf73511a1a498ef489d07265ef35 (patch) | |
tree | 0943cbc22b4adc7971ac937533038262fe9ccb1d /llvm/lib/Target/Mips/MipsTargetStreamer.h | |
parent | b2166d8ef3b8456a50e425a7cf2ed1bd6ad93319 (diff) | |
download | bcm5719-llvm-0cd3c19f33a7bf73511a1a498ef489d07265ef35.tar.gz bcm5719-llvm-0cd3c19f33a7bf73511a1a498ef489d07265ef35.zip |
[Mips] TargetStreamer Support for .abicalls and .set pic0.
This patch adds .abicalls and .set pic0 support which
affects the ELF ABI and its flags. In addition the patch uses
a common interface for both the MipsTargetSteamer and
MipsObjectStreamer that both the integrated and standalone
assemblers will use for the output for these directives.
llvm-svn: 198646
Diffstat (limited to 'llvm/lib/Target/Mips/MipsTargetStreamer.h')
-rw-r--r-- | llvm/lib/Target/Mips/MipsTargetStreamer.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/llvm/lib/Target/Mips/MipsTargetStreamer.h b/llvm/lib/Target/Mips/MipsTargetStreamer.h index 96966fd7cbc..8c53cb5bc2d 100644 --- a/llvm/lib/Target/Mips/MipsTargetStreamer.h +++ b/llvm/lib/Target/Mips/MipsTargetStreamer.h @@ -20,6 +20,8 @@ class MipsTargetStreamer : public MCTargetStreamer { public: virtual void emitMipsHackELFFlags(unsigned Flags) = 0; virtual void emitMipsHackSTOCG(MCSymbol *Sym, unsigned Val) = 0; + virtual void emitDirectiveAbiCalls() = 0; + virtual void emitDirectiveOptionPic0() = 0; }; // This part is for ascii assembly output @@ -30,15 +32,20 @@ public: MipsTargetAsmStreamer(formatted_raw_ostream &OS); virtual void emitMipsHackELFFlags(unsigned Flags); virtual void emitMipsHackSTOCG(MCSymbol *Sym, unsigned Val); + virtual void emitDirectiveAbiCalls(); + virtual void emitDirectiveOptionPic0(); }; // This part is for ELF object output class MipsTargetELFStreamer : public MipsTargetStreamer { public: MCELFStreamer &getStreamer(); + MipsTargetELFStreamer(); + // FIXME: emitMipsHackELFFlags() will be removed from this class. virtual void emitMipsHackELFFlags(unsigned Flags); virtual void emitMipsHackSTOCG(MCSymbol *Sym, unsigned Val); + virtual void emitDirectiveAbiCalls(); + virtual void emitDirectiveOptionPic0(); }; } - #endif |