summaryrefslogtreecommitdiff
path: root/lib/Target/Mips/MipsSubtarget.h
diff options
context:
space:
mode:
authorDaniel Sanders <daniel.sanders@imgtec.com>2014-05-09 09:46:21 +0000
committerDaniel Sanders <daniel.sanders@imgtec.com>2014-05-09 09:46:21 +0000
commit32650944eb3ba5ba57db50bb7a98d1c89396f4f3 (patch)
treeed50574986911367232efd4cb7fb96f8201a0d40 /lib/Target/Mips/MipsSubtarget.h
parent6b68224e9ab550807265bb9f45dcd9611c6fc539 (diff)
downloadllvm-32650944eb3ba5ba57db50bb7a98d1c89396f4f3.tar.gz
llvm-32650944eb3ba5ba57db50bb7a98d1c89396f4f3.tar.bz2
llvm-32650944eb3ba5ba57db50bb7a98d1c89396f4f3.tar.xz
[mips][mips64r6] Add experimental support for MIPS32r6 and MIPS64r6
Summary: Adds MIPS32r6/MIPS64r6 and checks the compatibility requirements for these processors. I've also included comments to describe removed and re-encoded instructions, along with placeholder def's for the new instructions but there are no functional changes to codegen at this point. Reviewers: jkolek, vmedic Reviewed By: vmedic Differential Revision: http://reviews.llvm.org/D3622 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208399 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MipsSubtarget.h')
-rw-r--r--lib/Target/Mips/MipsSubtarget.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/Target/Mips/MipsSubtarget.h b/lib/Target/Mips/MipsSubtarget.h
index 7aa2904969..0976ffb3f7 100644
--- a/lib/Target/Mips/MipsSubtarget.h
+++ b/lib/Target/Mips/MipsSubtarget.h
@@ -37,8 +37,10 @@ public:
};
protected:
- enum MipsArchEnum { Mips1, Mips2, Mips32, Mips32r2, Mips3, Mips4, Mips5,
- Mips64, Mips64r2 };
+ enum MipsArchEnum {
+ Mips1, Mips2, Mips32, Mips32r2, Mips32r6, Mips3, Mips4, Mips5, Mips64,
+ Mips64r2, Mips64r6
+ };
// Mips architecture version
MipsArchEnum MipsArchVersion;
@@ -156,8 +158,11 @@ public:
bool hasMips32() const { return MipsArchVersion >= Mips32; }
bool hasMips32r2() const { return MipsArchVersion == Mips32r2 ||
MipsArchVersion == Mips64r2; }
+ bool hasMips32r6() const { return MipsArchVersion == Mips32r6 ||
+ MipsArchVersion == Mips64r6; }
bool hasMips64() const { return MipsArchVersion >= Mips64; }
bool hasMips64r2() const { return MipsArchVersion == Mips64r2; }
+ bool hasMips64r6() const { return MipsArchVersion == Mips64r6; }
bool hasCnMips() const { return HasCnMips; }