diff options
author | Petar Jovanovic <petar.jovanovic@mips.com> | 2018-04-27 09:12:08 +0000 |
---|---|---|
committer | Petar Jovanovic <petar.jovanovic@mips.com> | 2018-04-27 09:12:08 +0000 |
commit | d4349f3bf676c0fcb4242b5abe8f5f6043ed4b34 (patch) | |
tree | da1d4b030f24702932f2e94539dd63f05496dfc1 /llvm/lib/Target/Mips/MipsTargetStreamer.h | |
parent | 21dc68fe7b4cd06b2ac194a66467352ddc2c4ecb (diff) | |
download | bcm5719-llvm-d4349f3bf676c0fcb4242b5abe8f5f6043ed4b34.tar.gz bcm5719-llvm-d4349f3bf676c0fcb4242b5abe8f5f6043ed4b34.zip |
[mips] Add support for Virtualization ASE
This includes
Instructions: tlbginv, tlbginvf, tlbgp, tlbgr, tlbgwi, tlbgwr, hypcall
mfgc0, mtgc0, mfhgc0, mthgc0, dmfgc0, dmtgc0,
Assembler directives: .set virt, .set novirt, .module virt, .module novirt
Attribute: virt
.MIPS.abiflags: VZ (0x100)
Patch by Vladimir Stefanovic.
Differential Revision: https://reviews.llvm.org/D44905
llvm-svn: 331024
Diffstat (limited to 'llvm/lib/Target/Mips/MipsTargetStreamer.h')
-rw-r--r-- | llvm/lib/Target/Mips/MipsTargetStreamer.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/llvm/lib/Target/Mips/MipsTargetStreamer.h b/llvm/lib/Target/Mips/MipsTargetStreamer.h index 0447436f499..f9714d2b439 100644 --- a/llvm/lib/Target/Mips/MipsTargetStreamer.h +++ b/llvm/lib/Target/Mips/MipsTargetStreamer.h @@ -44,6 +44,8 @@ public: virtual void emitDirectiveSetNoMt(); virtual void emitDirectiveSetCRC(); virtual void emitDirectiveSetNoCRC(); + virtual void emitDirectiveSetVirt(); + virtual void emitDirectiveSetNoVirt(); virtual void emitDirectiveSetAt(); virtual void emitDirectiveSetAtWithArg(unsigned RegNo); virtual void emitDirectiveSetNoAt(); @@ -107,6 +109,8 @@ public: virtual void emitDirectiveSetNoOddSPReg(); virtual void emitDirectiveModuleCRC(); virtual void emitDirectiveModuleNoCRC(); + virtual void emitDirectiveModuleVirt(); + virtual void emitDirectiveModuleNoVirt(); void emitR(unsigned Opcode, unsigned Reg0, SMLoc IDLoc, const MCSubtargetInfo *STI); @@ -219,6 +223,8 @@ public: void emitDirectiveSetNoMt() override; void emitDirectiveSetCRC() override; void emitDirectiveSetNoCRC() override; + void emitDirectiveSetVirt() override; + void emitDirectiveSetNoVirt() override; void emitDirectiveSetAt() override; void emitDirectiveSetAtWithArg(unsigned RegNo) override; void emitDirectiveSetNoAt() override; @@ -286,6 +292,8 @@ public: void emitDirectiveModuleMT() override; void emitDirectiveModuleCRC() override; void emitDirectiveModuleNoCRC() override; + void emitDirectiveModuleVirt() override; + void emitDirectiveModuleNoVirt() override; void emitDirectiveSetFp(MipsABIFlagsSection::FpABIKind Value) override; void emitDirectiveSetOddSPReg() override; void emitDirectiveSetNoOddSPReg() override; |