From 0d734b5d062af63d3043cabecaf28250db427cc9 Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Thu, 5 Nov 2009 00:38:45 +0000 Subject: [PATCH] [opcodes] * rx-decode.opc (rx_decode_opcode) (mvtipl): Add. (mvtcp, mvfcp, opecp): Remove. * rx-decode.c: Regenerate. * rx-dis.c (cpen): Remove. [gas] * config/rx-parse.y (MVTIPL): Update bit pattern. (cpen): Remove. [include/opcode] * rx.h (rx_decode_opcode) (mvtipl): Add. (mvtcp, mvfcp, opecp): Remove. --- gas/ChangeLog | 5 +++++ gas/config/rx-parse.y | 4 ++-- include/opcode/ChangeLog | 5 +++++ include/opcode/rx.h | 5 +---- opcodes/ChangeLog | 7 +++++++ opcodes/rx-decode.opc | 12 +++--------- opcodes/rx-dis.c | 2 +- 7 files changed, 24 insertions(+), 16 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 6fd42b8c77e..0efc8f2847e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2009-11-04 DJ Delorie + + * config/rx-parse.y (MVTIPL): Update bit pattern. + (cpen): Remove. + 2009-11-04 Daniel Jacobowitz Maxim Kuvyrkov diff --git a/gas/config/rx-parse.y b/gas/config/rx-parse.y index 0bcafc81afe..0e1093a9d1c 100644 --- a/gas/config/rx-parse.y +++ b/gas/config/rx-parse.y @@ -532,7 +532,7 @@ statement : /* ---------------------------------------------------------------------- */ | MVTIPL '#' EXPR - { B2 (0x7f, 0x98); FE ($3, 13, 3); } + { B3 (0x75, 0x70, 0x00); FE ($3, 20, 4); } /* ---------------------------------------------------------------------- */ @@ -939,7 +939,7 @@ token_table[] = { "pc", CREG, 1 }, { "usp", CREG, 2 }, { "fpsw", CREG, 3 }, - { "cpen", CREG, 4 }, + /* reserved */ /* reserved */ /* reserved */ { "wr", CREG, 7 }, diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog index dacf3ee1c71..8bf077d146a 100644 --- a/include/opcode/ChangeLog +++ b/include/opcode/ChangeLog @@ -1,3 +1,8 @@ +2009-11-04 DJ Delorie + + * rx.h (rx_decode_opcode) (mvtipl): Add. + (mvtcp, mvfcp, opecp): Remove. + 2009-11-02 Paul Brook * arm.h (FPU_VFP_EXT_V3xD, FPU_VFP_EXT_FP16, FPU_NEON_EXT_FMA, diff --git a/include/opcode/rx.h b/include/opcode/rx.h index 7081ccce53e..a1e6c45c77e 100644 --- a/include/opcode/rx.h +++ b/include/opcode/rx.h @@ -139,10 +139,7 @@ typedef enum RXO_clrpsw, /* flag index in d */ RXO_setpsw, /* flag index in d */ - - RXO_mvtcp, /* cop# in s2, cop[d] = s */ - RXO_mvfcp, /* cop# in s2, d = cop[s] */ - RXO_opecp, /* cop# in s2, do cop[s] */ + RXO_mvtipl, /* new IPL in s */ RXO_rtfi, RXO_rte, diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 715cea50c9a..2cfaf15e230 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,10 @@ +2009-11-04 DJ Delorie + + * rx-decode.opc (rx_decode_opcode) (mvtipl): Add. + (mvtcp, mvfcp, opecp): Remove. + * rx-decode.c: Regenerate. + * rx-dis.c (cpen): Remove. + 2009-11-03 Doug Evans * m32c-desc.c: Regenerate. diff --git a/opcodes/rx-decode.opc b/opcodes/rx-decode.opc index 8cf225234b0..c5c34d68e2f 100644 --- a/opcodes/rx-decode.opc +++ b/opcodes/rx-decode.opc @@ -920,6 +920,9 @@ rx_decode_opcode (unsigned long pc AU, /** 0111 1111 1010 rdst setpsw %0 */ ID(setpsw); DF(rdst); +/** 0111 0101 0111 0000 0000 immm mvtipl #%1 */ + ID(mvtipl); SC(immm); + /** 0111 1110 111 crdst popc %0 */ ID(mov); OP(1, RX_Operand_Postinc, 0, 0); DR(crdst + 16); @@ -935,15 +938,6 @@ rx_decode_opcode (unsigned long pc AU, /** 1111 1101 0110 101s rsrc rdst mvfc %1, %0 */ ID(mov); SR((s*16+rsrc) + 16); DR(rdst); -/*?* 1111 1101 1111 1010 01cp rsrc mvtcp #%2, %1, #%0 */ - ID(mvtcp); S2C(cp); SR(rsrc); DC (IMM (WSIZE)); - -/*?* 1111 1101 1111 1011 01cp rdst mvfcp #%2, %0, #%1 */ - ID(mvfcp); S2C(cp); DR(rdst); SC (IMM (WSIZE)); - -/*?* 1111 1101 1111 1001 01cp 0000 opecp #%2, #%1 */ - ID(opecp); S2C(cp); SC (IMM (WSIZE)); - /*----------------------------------------------------------------------*/ /* INTERRUPTS */ diff --git a/opcodes/rx-dis.c b/opcodes/rx-dis.c index 3413b1d8ec9..8d5bb144a5f 100644 --- a/opcodes/rx-dis.c +++ b/opcodes/rx-dis.c @@ -63,7 +63,7 @@ static char const * register_names[] = "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15", /* control register */ - "psw", "pc", "usp", "fpsw", "cpen", "", "", "wr", + "psw", "pc", "usp", "fpsw", "", "", "", "wr", "bpsw", "bpc", "isp", "fintv", "intb", "", "", "", "pbp", "pben", "", "", "", "", "", "", "bbpsw", "bbpc", "", "", "", "", "", "" -- 2.30.2