enable zArch (64-bit) instructions enable disassembler for both s390 and s390x
Signed-off-by: Ulrich Hecht <u...@suse.de> --- configure | 2 +- disas.c | 3 +++ s390-dis.c | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/configure b/configure index ca6d45c..350c742 100755 --- a/configure +++ b/configure @@ -2386,7 +2386,7 @@ for i in $ARCH $TARGET_BASE_ARCH ; do ppc*) echo "CONFIG_PPC_DIS=y" >> $config_target_mak ;; - s390) + s390*) echo "CONFIG_S390_DIS=y" >> $config_target_mak ;; sh4) diff --git a/disas.c b/disas.c index ce342bc..14c8901 100644 --- a/disas.c +++ b/disas.c @@ -195,6 +195,9 @@ void target_disas(FILE *out, target_ulong code, target_ulong size, int flags) #elif defined(TARGET_CRIS) disasm_info.mach = bfd_mach_cris_v32; print_insn = print_insn_crisv32; +#elif defined(TARGET_S390X) + disasm_info.mach = bfd_mach_s390_64; + print_insn = print_insn_s390; #elif defined(TARGET_MICROBLAZE) disasm_info.mach = bfd_arch_microblaze; print_insn = print_insn_microblaze; diff --git a/s390-dis.c b/s390-dis.c index 86dd84f..9a73a57 100644 --- a/s390-dis.c +++ b/s390-dis.c @@ -191,10 +191,10 @@ init_disasm (struct disassemble_info *info) // switch (info->mach) // { // case bfd_mach_s390_31: - current_arch_mask = 1 << S390_OPCODE_ESA; +// current_arch_mask = 1 << S390_OPCODE_ESA; // break; // case bfd_mach_s390_64: -// current_arch_mask = 1 << S390_OPCODE_ZARCH; + current_arch_mask = 1 << S390_OPCODE_ZARCH; // break; // default: // abort (); -- 1.6.2.1