summaryrefslogtreecommitdiff
path: root/opcodes/mips-dis.c
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@imgtec.com>2016-12-14 21:27:00 +0000
committerMaciej W. Rozycki <macro@imgtec.com>2016-12-14 22:09:08 +0000
commit8184783a4069e04deb2e43b4ad0d66d80f1ad2df (patch)
treee1594e29bc1f44a7275573b9caa498d9a02cd8e3 /opcodes/mips-dis.c
parenteefc3365838ed15c02bd7da39fbc31c00d07b398 (diff)
downloadbinutils-gdb-8184783a4069e04deb2e43b4ad0d66d80f1ad2df.tar.gz
MIPS/opcodes: Reorder ELF file header flag handling in disassembler
Move ELF file header flag interpretation code, used to set disassembler options, beyond architecture setup. No functional change as the effects of both code sections are disjoint from each other, but this provides for a further expansion of ELF file header flag interpretation. opcodes/ * mips-dis.c (set_default_mips_dis_options): Reorder ELF file header flag interpretation code.
Diffstat (limited to 'opcodes/mips-dis.c')
-rw-r--r--opcodes/mips-dis.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/opcodes/mips-dis.c b/opcodes/mips-dis.c
index b3daacd1c65..380a675b9dc 100644
--- a/opcodes/mips-dis.c
+++ b/opcodes/mips-dis.c
@@ -785,19 +785,6 @@ set_default_mips_dis_options (struct disassemble_info *info)
mips_hwr_names = mips_hwr_names_numeric;
no_aliases = 0;
- /* Update settings according to the ELF file header flags. */
- if (info->flavour == bfd_target_elf_flavour && info->section != NULL)
- {
- Elf_Internal_Ehdr *header;
-
- header = elf_elfheader (info->section->owner);
- /* If an ELF "newabi" binary, use the n32/(n)64 GPR names. */
- if (is_newabi (header))
- mips_gpr_names = mips_gpr_names_newabi;
- /* If a microMIPS binary, then don't use MIPS16 bindings. */
- micromips_ase = is_micromips (header);
- }
-
/* Set ISA, architecture, and cp0 register names as best we can. */
#if ! SYMTAB_AVAILABLE
/* This is running out on a target machine, not in a host tool.
@@ -819,6 +806,19 @@ set_default_mips_dis_options (struct disassemble_info *info)
mips_hwr_names = chosen_arch->hwr_names;
}
#endif
+
+ /* Update settings according to the ELF file header flags. */
+ if (info->flavour == bfd_target_elf_flavour && info->section != NULL)
+ {
+ Elf_Internal_Ehdr *header;
+
+ header = elf_elfheader (info->section->owner);
+ /* If an ELF "newabi" binary, use the n32/(n)64 GPR names. */
+ if (is_newabi (header))
+ mips_gpr_names = mips_gpr_names_newabi;
+ /* If a microMIPS binary, then don't use MIPS16 bindings. */
+ micromips_ase = is_micromips (header);
+ }
}
static void