2003-09-17 Andrew Cagney <cagney@redhat.com>
* ppcnbsd-tdep.c (ppcnbsd_use_struct_convention): New function. (ppcnbsd_init_abi): Set "use_struct_convention" to "ppcnbsd_use_struct_convention".
This commit is contained in:
parent
8ff944f699
commit
957e27ac30
@ -1,3 +1,9 @@
|
||||
2003-09-17 Andrew Cagney <cagney@redhat.com>
|
||||
|
||||
* ppcnbsd-tdep.c (ppcnbsd_use_struct_convention): New function.
|
||||
(ppcnbsd_init_abi): Set "use_struct_convention" to
|
||||
"ppcnbsd_use_struct_convention".
|
||||
|
||||
2003-09-17 Mark Kettenis <kettenis@gnu.org>
|
||||
|
||||
* gdbarch.sh (DEPRECATED_REG_STRUCT_HAS_ADDR): Add comment.
|
||||
|
@ -204,12 +204,30 @@ ppcnbsd_pc_in_sigtramp (CORE_ADDR pc, char *func_name)
|
||||
return (nbsd_pc_in_sigtramp (pc, func_name));
|
||||
}
|
||||
|
||||
/* NetBSD is confused. It appears that 1.5 was using the correct SVr4
|
||||
convention but, 1.6 switched to the below broken convention. For
|
||||
the moment use the broken convention. Ulgh!. */
|
||||
|
||||
static int
|
||||
ppcnbsd_use_struct_convention (int gcc_p, struct type *value_type)
|
||||
{
|
||||
if ((TYPE_LENGTH (value_type) == 16 || TYPE_LENGTH (value_type) == 8)
|
||||
&& TYPE_VECTOR (value_type))
|
||||
return 0;
|
||||
|
||||
return !(TYPE_LENGTH (value_type) == 1
|
||||
|| TYPE_LENGTH (value_type) == 2
|
||||
|| TYPE_LENGTH (value_type) == 4
|
||||
|| TYPE_LENGTH (value_type) == 8);
|
||||
}
|
||||
|
||||
static void
|
||||
ppcnbsd_init_abi (struct gdbarch_info info,
|
||||
struct gdbarch *gdbarch)
|
||||
{
|
||||
set_gdbarch_pc_in_sigtramp (gdbarch, ppcnbsd_pc_in_sigtramp);
|
||||
|
||||
set_gdbarch_use_struct_convention (gdbarch, ppcnbsd_use_struct_convention);
|
||||
set_solib_svr4_fetch_link_map_offsets (gdbarch,
|
||||
nbsd_ilp32_solib_svr4_fetch_link_map_offsets);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user