summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/MipsTargetStreamer.h
diff options
context:
space:
mode:
authorPetar Jovanovic <petar.jovanovic@mips.com>2018-04-27 09:12:08 +0000
committerPetar Jovanovic <petar.jovanovic@mips.com>2018-04-27 09:12:08 +0000
commitd4349f3bf676c0fcb4242b5abe8f5f6043ed4b34 (patch)
treeda1d4b030f24702932f2e94539dd63f05496dfc1 /llvm/lib/Target/Mips/MipsTargetStreamer.h
parent21dc68fe7b4cd06b2ac194a66467352ddc2c4ecb (diff)
downloadbcm5719-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.h8
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;
OpenPOWER on IntegriCloud