aboutsummaryrefslogtreecommitdiff
path: root/qtmips_machine/instruction.cpp
diff options
context:
space:
mode:
authorPavel Pisa <pisa@cmp.felk.cvut.cz>2019-02-15 15:23:56 +0100
committerPavel Pisa <pisa@cmp.felk.cvut.cz>2019-02-15 15:23:56 +0100
commiteb217996098ffb5706cfe0ca8ffa4478b73ceb8e (patch)
treeb968a4edf276d5f2cf9db422f455774bf7a7061d /qtmips_machine/instruction.cpp
parentab9ddf2beb8a266dd31e31178c53616b79ce4428 (diff)
downloadqtmips-eb217996098ffb5706cfe0ca8ffa4478b73ceb8e.tar.gz
qtmips-eb217996098ffb5706cfe0ca8ffa4478b73ceb8e.tar.bz2
qtmips-eb217996098ffb5706cfe0ca8ffa4478b73ceb8e.zip
Implement EXT instruction used in GLIBC startup.
It requires one more field to pass to ALU. Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Diffstat (limited to 'qtmips_machine/instruction.cpp')
-rw-r--r--qtmips_machine/instruction.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/qtmips_machine/instruction.cpp b/qtmips_machine/instruction.cpp
index 417d940..b26cc9b 100644
--- a/qtmips_machine/instruction.cpp
+++ b/qtmips_machine/instruction.cpp
@@ -252,7 +252,8 @@ static const struct InstructionMap special2_instruction_map[] = {
};
static const struct InstructionMap special3_instruction_map[] = {
- IM_UNKNOWN, // 0
+ {"EXT", IT_I, ALU_OP_EXT, NOMEM, nullptr,
+ .flags = IMF_SUPPORTED | IMF_REGWRITE | IMF_ALU_REQ_RS},
IM_UNKNOWN, // 1
IM_UNKNOWN, // 2
IM_UNKNOWN, // 3