* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Check the selected
authorDaniel Jacobowitz <drow@false.org>
Tue, 30 Oct 2007 19:35:35 +0000 (19:35 +0000)
committerDaniel Jacobowitz <drow@false.org>
Tue, 30 Oct 2007 19:35:35 +0000 (19:35 +0000)
commit55eddb0f7a5dce5897c8f2128ba8cffb43531f0c
tree652c7450ca2e5fd88c9a5a7307998408153ac8e4
parent7020f05c275a933720905bc7e4a2446175f28b0f
* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Check the selected
soft float and vector ABIs.  Support the generic vector ABI for
AltiVec types.
(do_ppc_sysv_return_value): Likewise.  Correct argument types and
casts.
(ppc64_sysv_abi_push_dummy_call): Assert that floating point is
supported.
* ppc-tdep.h (enum powerpc_vector_abi): New.
(struct gdbarch_tdep): Add soft_float and vector_abi.
* rs6000-tdep.c (setpowerpccmdlist, showpowerpccmdlist)
(powerpc_soft_float_global, powerpc_vector_strings)
(powerpc_vector_abi_global, powerpc_vector_abi_string): New.
(rs6000_gdbarch_init): Check for soft-float and vector ABI markings.
(set_powerpc_command, show_powerpc_command, powerpc_set_soft_float)
(powerpc_set_vector_abi): New.
(_initialize_rs6000_tdep): Register "set powerpc" and "show powerpc"
commands.
* Makefile.in (elf_ppc_h): New.
(rs6000-tdep.o): Update.

* gdb.texinfo (PowerPC): Document "set powerpc vector-abi" and "set
powerpc soft-float".

* gdb.arch/altivec-abi.exp: Run multiple times for GCC on GNU/Linux.
Test "set powerpc vector-abi".  Skip auto-detection tests for old
toolchains.
gdb/ChangeLog
gdb/Makefile.in
gdb/doc/ChangeLog
gdb/doc/gdb.texinfo
gdb/ppc-sysv-tdep.c
gdb/ppc-tdep.h
gdb/rs6000-tdep.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.arch/altivec-abi.exp