| Index: opcodes/rx-decode.opc
|
| diff --git a/opcodes/rx-decode.opc b/opcodes/rx-decode.opc
|
| index a426b86416a0d1c415abbd222591a2a7320272e5..27ff5d43b457448683a268381738f9f9ac568144 100644
|
| --- a/opcodes/rx-decode.opc
|
| +++ b/opcodes/rx-decode.opc
|
| @@ -1,9 +1,8 @@
|
| /* -*- c -*- */
|
| +#include "sysdep.h"
|
| #include <stdio.h>
|
| #include <stdlib.h>
|
| #include <string.h>
|
| -
|
| -#include "config.h"
|
| #include "ansidecl.h"
|
| #include "opcode/rx.h"
|
|
|
| @@ -262,7 +261,20 @@ rx_decode_opcode (unsigned long pc AU,
|
| ID(mov); DR(rdst); SC(IMM (1)); F_____;
|
|
|
| /** 1111 10sd rdst im sz mov%s #%1, %0 */
|
| - ID(mov); sBWL (sz); DD(sd, rdst, sz); SC(IMMex(im)); F_____;
|
| + ID(mov); DD(sd, rdst, sz);
|
| + if ((im == 1 && sz == 0)
|
| + || (im == 2 && sz == 1)
|
| + || (im == 0 && sz == 2))
|
| + {
|
| + BWL (sz);
|
| + SC(IMM(im));
|
| + }
|
| + else
|
| + {
|
| + sBWL (sz);
|
| + SC(IMMex(im));
|
| + }
|
| + F_____;
|
|
|
| /** 0110 0110 immm rdst mov%s #%1, %0 */
|
| ID(mov); DR(rdst); SC(immm); F_____;
|
|
|