/* Disassemble SH instructions.
- Copyright 1993, 1994, 1995, 1997, 1998, 2000
+ Copyright 1993, 1994, 1995, 1997, 1998, 2000, 2001
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
#define LITTLE_BIT 2
+static void print_movxy
+ PARAMS ((sh_opcode_info *, int, int, fprintf_ftype, void *));
+static void print_insn_ddt PARAMS ((int, struct disassemble_info *));
+static void print_dsp_reg PARAMS ((int, fprintf_ftype, void *));
+static void print_insn_ppi PARAMS ((int, struct disassemble_info *));
+static int print_insn_shx PARAMS ((bfd_vma, struct disassemble_info *));
+
static void
print_movxy (op, rn, rm, fprintf_fn, stream)
sh_opcode_info *op;
case bfd_mach_sh4:
target_arch = arch_sh4;
break;
+ case bfd_mach_sh5:
+ /* When we get here for sh64, it's because we want to disassemble
+ SHcompact, i.e. arch_sh4. */
+ target_arch = arch_sh4;
+ break;
default:
abort ();
}
if ((rn & 0xc) != 4)
goto fail;
rn = rn & 0x3;
- rn |= (rn & 2) << 1;
+ rn |= (!(rn & 2)) << 2;
break;
case PPI:
case REPEAT: