diff options
Diffstat (limited to 'opcodes/or1k-opc.c')
-rw-r--r-- | opcodes/or1k-opc.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/opcodes/or1k-opc.c b/opcodes/or1k-opc.c index 1ec127f..3e1df59 100644 --- a/opcodes/or1k-opc.c +++ b/opcodes/or1k-opc.c @@ -59,6 +59,10 @@ static const CGEN_IFMT ifmt_l_trap ATTRIBUTE_UNUSED = { 32, 32, 0xffff0000, { { F (F_OPCODE) }, { F (F_OP_25_5) }, { F (F_RESV_20_5) }, { F (F_UIMM16) }, { 0 } } }; +static const CGEN_IFMT ifmt_l_msync ATTRIBUTE_UNUSED = { + 32, 32, 0xffffffff, { { F (F_OPCODE) }, { F (F_OP_25_5) }, { F (F_RESV_20_21) }, { 0 } } +}; + static const CGEN_IFMT ifmt_l_rfe ATTRIBUTE_UNUSED = { 32, 32, 0xffffffff, { { F (F_OPCODE) }, { F (F_RESV_25_26) }, { 0 } } }; @@ -226,6 +230,24 @@ static const CGEN_OPCODE or1k_cgen_insn_opcode_table[MAX_INSNS] = { { MNEM, ' ', OP (UIMM16), 0 } }, & ifmt_l_trap, { 0x20000000 } }, +/* l.msync */ + { + { 0, 0, 0, 0 }, + { { MNEM, 0 } }, + & ifmt_l_msync, { 0x22000000 } + }, +/* l.psync */ + { + { 0, 0, 0, 0 }, + { { MNEM, 0 } }, + & ifmt_l_msync, { 0x22800000 } + }, +/* l.csync */ + { + { 0, 0, 0, 0 }, + { { MNEM, 0 } }, + & ifmt_l_msync, { 0x23000000 } + }, /* l.rfe */ { { 0, 0, 0, 0 }, |