diff options
-rw-r--r-- | cris-dis.c | 9 | ||||
-rw-r--r-- | dis-asm.h | 1 | ||||
-rw-r--r-- | disas.c | 9 |
3 files changed, 15 insertions, 4 deletions
diff --git a/cris-dis.c b/cris-dis.c index afd775c29b..5fa67d9f29 100644 --- a/cris-dis.c +++ b/cris-dis.c @@ -2767,7 +2767,6 @@ print_insn_cris_generic (bfd_vma memaddr, } /* Disassemble, prefixing register names with `$'. CRIS v0..v10. */ -#if 0 static int print_insn_cris_with_register_prefix (bfd_vma vma, disassemble_info *info) @@ -2777,7 +2776,6 @@ print_insn_cris_with_register_prefix (bfd_vma vma, return -1; return print_insn_cris_generic (vma, info, true); } -#endif /* Disassemble, prefixing register names with `$'. CRIS v32. */ static int @@ -2843,6 +2841,13 @@ print_insn_crisv10_v32_without_register_prefix (bfd_vma vma, #endif int +print_insn_crisv10 (bfd_vma vma, + disassemble_info *info) +{ + return print_insn_cris_with_register_prefix(vma, info); +} + +int print_insn_crisv32 (bfd_vma vma, disassemble_info *info) { @@ -397,6 +397,7 @@ extern int print_insn_tic30 (bfd_vma, disassemble_info*); extern int print_insn_ppc (bfd_vma, disassemble_info*); extern int print_insn_s390 (bfd_vma, disassemble_info*); extern int print_insn_crisv32 (bfd_vma, disassemble_info*); +extern int print_insn_crisv10 (bfd_vma, disassemble_info*); extern int print_insn_microblaze (bfd_vma, disassemble_info*); extern int print_insn_ia64 (bfd_vma, disassemble_info*); @@ -208,8 +208,13 @@ void target_disas(FILE *out, target_ulong code, target_ulong size, int flags) disasm_info.mach = bfd_mach_alpha; print_insn = print_insn_alpha; #elif defined(TARGET_CRIS) - disasm_info.mach = bfd_mach_cris_v32; - print_insn = print_insn_crisv32; + if (flags != 32) { + disasm_info.mach = bfd_mach_cris_v0_v10; + print_insn = print_insn_crisv10; + } else { + disasm_info.mach = bfd_mach_cris_v32; + print_insn = print_insn_crisv32; + } #elif defined(TARGET_MICROBLAZE) disasm_info.mach = bfd_arch_microblaze; print_insn = print_insn_microblaze; |