summaryrefslogtreecommitdiff
path: root/gdb/armnbsd-tdep.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <dan@debian.org>2005-04-14 18:40:26 +0000
committerDaniel Jacobowitz <dan@debian.org>2005-04-14 18:40:26 +0000
commit699d13ebb548bb0283276f819b4872de75c439e5 (patch)
treefad0111947755b22c1cfe28093318c3e173b408e /gdb/armnbsd-tdep.c
parentbf16f6aa7bf606ce077a8633ad8e3b4000bb5ce0 (diff)
downloadgdb-699d13ebb548bb0283276f819b4872de75c439e5.tar.gz
* arm-tdep.c (fp_model_strings): Add terminating NULL.
(arm_abi_strings, arm_abi_global, arm_abi_string): New variables. (arm_extract_return_value, arm_store_return_value): Don't use arm_get_fp_model. (arm_get_fp_model, arm_set_fp): Delete. (arm_update_current_architecture): New function. (set_fp_model_sfunc): Call arm_update_current_architecture. (show_fp_model): Update output messages. (arm_set_abi, arm_show_abi): New functions. (arm_elf_osabi_sniffer): Only handle ELFOSABI_ARM. (arm_gdbarch_init): Infer the object's ABI separately from its OSABI. Search for a matching architecture. Honor the global ABI and FPU settings. Set floating point format based on the architecture. (arm_init_abi_eabi_v1, arm_init_abi_eabi_v2, arm_init_abi_apcs): Delete. (_initialize_arm_tdep): Don't call gdbarch_register_osabi. Create "arm set abi" command. * arm-tdep.h (arm_get_fp_model): Delete prototype. (enum arm_abi_kind): New type. (struct gdbarch_tdep): Add arm_abi field. * arm-linux-tdep.c (arm_linux_init_abi): Only override tdep->fp_model if it is ARM_FLOAT_AUTO. * armnbsd-tdep.c (arm_netbsd_aout_init_abi): Likewise. (arm_netbsd_elf_init_abi): Likewise. * defs.h (enum gdb_osabi): Delete ARM-specific OSABIs. * osabi.c (gdb_osabi_name): Likewise.
Diffstat (limited to 'gdb/armnbsd-tdep.c')
-rw-r--r--gdb/armnbsd-tdep.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gdb/armnbsd-tdep.c b/gdb/armnbsd-tdep.c
index d5ac9e81fa6..9f2a346cb28 100644
--- a/gdb/armnbsd-tdep.c
+++ b/gdb/armnbsd-tdep.c
@@ -78,7 +78,8 @@ arm_netbsd_aout_init_abi (struct gdbarch_info info,
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
arm_netbsd_init_abi_common (info, gdbarch);
- tdep->fp_model = ARM_FLOAT_SOFT_FPA;
+ if (tdep->fp_model == ARM_FLOAT_AUTO)
+ tdep->fp_model = ARM_FLOAT_SOFT_FPA;
}
static void
@@ -92,7 +93,8 @@ arm_netbsd_elf_init_abi (struct gdbarch_info info,
set_solib_svr4_fetch_link_map_offsets (gdbarch,
nbsd_ilp32_solib_svr4_fetch_link_map_offsets);
- tdep->fp_model = ARM_FLOAT_SOFT_VFP;
+ if (tdep->fp_model == ARM_FLOAT_AUTO)
+ tdep->fp_model = ARM_FLOAT_SOFT_VFP;
}
static enum gdb_osabi