* m32c-tdep.c (m32c_banked_register): New function.
(m32c_banked_read): Use m32c_banked_register function to evaluate
real register number.
(m32c_banked_write): Ditto.
(m32c_virtual_frame_pointer): New function.
(m32c_gdbarch_init): Add set_gdbarch_virtual_frame_pointer call.
gdb/
* infcall.c (value_arg_coerce): Use value_cast_pointers for
references. Avoid value_cast to a reference type. Don't silently
convert pointers to references.
* valops.c (value_cast_pointers): New, based on value_cast.
(value_cast): Use it. Reject reference types.
(value_ref): New.
(typecmp): Use it.
* value.h (value_cast_pointers, value_ref): New prototypes.
gdb/testsuite/
* gdb.cp/ref-params.exp: New test.
* gdb.cp/ref-params.cc: New source file.
* gdb.cp/Makefile.in (EXECUTABLES): Add ref-params.
* dwarf2read.c (dwarf2_symbol_mark_computed): Handle corrupted
or missing location list information. Suggested by Jan
Kratochvil <lace@jankratochvil.net>.
gdb/
* remote.c (PACKET_qXfer_auxv): New, renamed from PACKET_qPart_auxv.
(remote_supported_packet): Remove #if 0.
(remote_protocol_features): Add qPart:auxv:read.
(remote_unescape_input): New function.
(readchar): Don't mask off the high bit.
(read_frame): Use fputstrn_filtered for packet data.
(getpkt_sane): Return the number of bytes read or -1. Use
fputstrn_unfiltered.
(remote_read_qxfer): New.
(remote_xfer_partial): Use it for TARGET_OBJECT_AUXV.
(_initialize_remote): Update packet registration.
* defs.h (fputstrn_filtered): New prototype.
* utils.c (fputstrn_filtered): New.
* NEWS: Mention qXfer.
gdb/doc/
* gdb.texinfo (OS Information): Update qPart reference to
qXfer.
(Remote configuration): Likewise.
(Overview): Move @cindex to the start of a paragraph. Talk
about binary data encoding.
(Packets): Refer to the overview for the details of the X
packet encoding.
(General Query Packets): Remove qPart description. Add qXfer
description. Add an anchor to qSupported. Correct feature
table title. Add a new feature for qXfer:auxv:read.
(Interrupts): Add a missing parenthesis.
gdb/gdbserver/
* server.c (decode_xfer_read, write_qxfer_response): New.
(handle_query): Take a packet length argument. Handle
qXfer:auxv:read instead of qPart:auxv:read. Mention it in
the qSupported response.
(main): Update call to handle_query.
* target.c (target_read): Stop if target_read_partial returns 0
when some bytes have already been read.
(target_write): Likewise for target_write_partial.
(target_read_partial, target_write_partial): Make static.
(target_read_alloc): New.
* target.h: Doc fixes.
(target_read_partial, target_write_partial): Delete prototypes.
(target_read_alloc): New prototype.
* arm-linux-tdep.c: Doc fixes.
(ARM_SIGCONTEXT_R0, ARM_UCONTEXT_SIGCONTEXT)
(ARM_OLD_RT_SIGFRAME_SIGINFO, ARM_OLD_RT_SIGFRAME_UCONTEXT)
(ARM_NEW_RT_SIGFRAME_UCONTEXT, ARM_NEW_SIGFRAME_MAGIC): New
constants.
(arm_linux_sigreturn_init, arm_linux_rt_sigreturn_init): Support
the new signal frame layouts.
H.J. Lu [Wed, 12 Jul 2006 15:45:33 +0000 (15:45 +0000)]
bfd/
2006-07-12 H.J. Lu <hongjiu.lu@intel.com>
PR ld/2884
* elflink.c (_bfd_elf_merge_symbol): Copy the symbol info from
the old versioned dynamic definition to the new one with
non-default visibility. Hide the symbol if it is hidden or
internal.
Nick Clifton [Wed, 12 Jul 2006 09:02:00 +0000 (09:02 +0000)]
* config/tc-sh.c (md_apply_fix): Do not allow the generic code in
fixup_segment() to repeat a range check on a value that have already
been checked here.
* gas/sh/basic.exp: Run "too_large" dump test.
* gas/sh/too_large.s: New test file. Check that .byte directives do not
generate a bogus overflow message.
* gas/sh/too_large.s: New test control file.
Mark Kettenis [Mon, 10 Jul 2006 19:40:27 +0000 (19:40 +0000)]
* alphaobsd-tdep.c: New file.
* alphanbsd-tdep.c (_initialize_alphanbsd_tdep): Do not register a
handler for GDB_OSABI_OPENBSD_ELF.
* Makefile.in (ALLDEPFILES): Add alphaobsd-tdep.c.
(alphaobsd-tdep.o): New target.
* config/alpha/obsd.mt: New file.
* configure.tgt (alpha*-*-openbsd*): Set gdb_target to obsd.
Mark Kettenis [Sun, 9 Jul 2006 22:01:59 +0000 (22:01 +0000)]
* alphabsd-tdep.h (alphanbsd_regset_from_core_section): New
prototype.
* alphanbsd-tdep.c (alphanbsd_regset_from_core_section): Handle
a.out-style core file format here. Make global.
(alphanbsd_regset_from_core_section): Remove.
(alphanbsd_sigtramp_offset): Make static.
(alphanbsd_aout_init_abi): Remove.
(alphanbsd_core_osabi_sniffer): Return GDB_OSABI_NETBSD_ELF for
a.out style core files.
(_initialize_alphanbsd_tdep): Do not register a handler for
GDB_OSABI_NETBSD_AOUT.
* config/tc-mips.c (s_is_linkonce): New function.
(mips16_mark_labels): Don't adjust mips16 symbol addresses for
weak, external, and linkonce symbols.
(pic_need_relax): Use s_is_linkonce.
* gas/mips/e32-rel2.d, gas/mips/e32-rel4.d: Use -mabi=32 for as.
* gas/mips/mips.exp: Move mips16e testcase to ELF only tests.
Run elf{el}-rel2 and elf-rel4 for all arches with gpr64. Run
e32-rel2 and e32-rel4 also for 64 bit configurations.
* gdb.base/huge.c: Allow CRASH_GDB to be set from command
line.
* gdb.base/huge.exp: Loop over compilation to find a size that
is acceptable.
* gdb.base/remote.exp: Correct expected strings.
* gdb.dwarf2/mac-fileno.S: Avoid # comments.
Nick Roberts [Fri, 30 Jun 2006 21:43:22 +0000 (21:43 +0000)]
(GDB/MI Compatibility with CLI): Qualify more carefully.
(GDB/MI Simple Examples): Use @subheading for "A Bad Command".
(GDB/MI Data Manipulation): Remove description of unimplemented
display related commands as variable objects perform this function
and are superior: -display-delete, -display-disable,
-display-enable, -display-insert and -display-list. Move
-environment-cd, -environment-directory, -environment-path
and -environment-pwd to "Program Context".
(GDB/MI Program Control): Rename to "Program Execution". Move
-exec-arguments -exec-abort to...
(GDB/MI Program Context): ...here. New node split from "Data
Manipulation".
Nick Clifton [Fri, 30 Jun 2006 13:38:57 +0000 (13:38 +0000)]
* dwarf.c (display_debug_frames): Catch a corrupt length field generating an
end of block address that is beyond the end of the section.
When encountering a corrupt CIE pointer do not reset the start pointer as
more data still has to be read.
Do not warn about user defined call frame instructions.
Nick Clifton [Tue, 27 Jun 2006 11:45:21 +0000 (11:45 +0000)]
* emultempl/pe.em (gld_$_open_dynamic_archive): Compute maximum length of
format strings in the libname_fmt[] array, rather than relying upon a
statically chosen value. Adjust xmalloc call to use this longest length.