diff options
author | Douglas Leung <douglas.leung@imgtec.com> | 2015-02-27 19:05:03 -0800 |
---|---|---|
committer | Andreas Gampe <agampe@google.com> | 2015-03-20 16:51:56 -0700 |
commit | 027f0ff64c2512b9a5f1f54f3fea1bec481eb0f5 (patch) | |
tree | 9202535f219d7343b4c26d5c43f0bcb7c31650df /disassembler | |
parent | 6cc763c8b8157fb42dd44e1dfb84812546500dc1 (diff) | |
download | art-027f0ff64c2512b9a5f1f54f3fea1bec481eb0f5.zip art-027f0ff64c2512b9a5f1f54f3fea1bec481eb0f5.tar.gz art-027f0ff64c2512b9a5f1f54f3fea1bec481eb0f5.tar.bz2 |
ART: Add Mips32r6 backend support
Add Mips32r6 compiler support.
Don't use deprecated Mips32r2 instructions if running in Mips32r6
mode.
Change-Id: I54e689aa8c026ccb75c4af515aa2794f471c9f67
Diffstat (limited to 'disassembler')
-rw-r--r-- | disassembler/disassembler_mips.cc | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/disassembler/disassembler_mips.cc b/disassembler/disassembler_mips.cc index 3d8a567..b27b555 100644 --- a/disassembler/disassembler_mips.cc +++ b/disassembler/disassembler_mips.cc @@ -71,10 +71,14 @@ static const MipsInstruction gMipsInstructions[] = { { kRTypeMask, 17, "mthi", "S", }, { kRTypeMask, 18, "mflo", "D", }, { kRTypeMask, 19, "mtlo", "S", }, - { kRTypeMask, 24, "mult", "ST", }, - { kRTypeMask, 25, "multu", "ST", }, - { kRTypeMask, 26, "div", "ST", }, - { kRTypeMask, 27, "divu", "ST", }, + { kRTypeMask | (0x1f << 6), 24, "mult", "ST", }, + { kRTypeMask | (0x1f << 6), 25, "multu", "ST", }, + { kRTypeMask | (0x1f << 6), 26, "div", "ST", }, + { kRTypeMask | (0x1f << 6), 27, "divu", "ST", }, + { kRTypeMask | (0x1f << 6), 24 + (2 << 6), "mul", "DST", }, + { kRTypeMask | (0x1f << 6), 24 + (3 << 6), "muh", "DST", }, + { kRTypeMask | (0x1f << 6), 26 + (2 << 6), "div", "DST", }, + { kRTypeMask | (0x1f << 6), 26 + (3 << 6), "mod", "DST", }, { kRTypeMask, 32, "add", "DST", }, { kRTypeMask, 33, "addu", "DST", }, { kRTypeMask, 34, "sub", "DST", }, |