Alan Modra [Tue, 8 May 2001 13:13:56 +0000 (13:13 +0000)]
More fallout from 2001-03-30 changes.
* config/tc-m68k.c (md_estimate_size_before_relax): Set fr_var
from md_relax_table, and combine some switch cases.
Keith Seitz [Mon, 7 May 2001 20:34:45 +0000 (20:34 +0000)]
* lib/gdb.exp (gdbtk_initialize_display): New proc which will
set up the display for testing.
(gdbtk_start): Convert all paths to paths that tcl will like.
Export target information to environment.
(_gdbtk_xvfb_init): New proc to start Xvfb if available and
necessary.
(_gdbtk_xvfb_exit): New proc to kill Xvfb if necessary.
(to_tcl_path): New proc to convert a given pathname into
a path acceptible as an argument to a tcl command.
(_gdbtk_export_target_info): New proc to export target info
into the environment for gdbtk testing.
(gdbtk_done): New proc to signal end-of-test.
[opcodes/ChangeLog]
2001-05-07 Frank Ch. Eigler <fche@redhat.com>
* cgen-dis.in (default_print_insn): Tolerate min<base instructions
even at end of a section.
* cgen-ibld.in (extract_normal): Tolerate min!=base!=max instructions
by ignoring precariously-unpacked insn_value in favor of raw buffer.
[cgen/ChangeLog]
2001-05-07 Frank Ch. Eigler <fche@redhat.com>
* iformat.scm (compute-insn-base-mask-length): Rewrite to tolerate
various-base-length instruction sets.
Mark Kettenis [Sun, 6 May 2001 17:00:44 +0000 (17:00 +0000)]
Implement attach/detach for multi-threaded programs on Linux.
* thread-db.c (keep_thread_db): Adjust comment.
(deactivate_target): Removed.
(thread_db_new_objfile): Don't call deactivate_target. Implement
guts of deactivate_target inline instead.
(attach_thread): Call ATTACH_LWP unconditionally if defined.
(thread_db_attach): New function.
(thread_db_detach): Don't call deactivate_target. Do necessary
cleanup inline instead. Set inferior_ptid to LWP corresponding to
the current user-level thread.
(thread_db_kill): Set inferior_ptid to LWP corresponding to the
current user-level thread.
(thread_db_create_inferior): Deactivate target vector if
KEEP_THREAD_DB is zero.
(thread_db_mourn_inferior): Don't call deactivate_target. Do
necessary cleanup inline instead.
(init_thread_db_ops): Initialize to_attach field to
thread_db_attach.
* lin-lwp.c (lin_lwp_mourn_inferior): Remove prototype.
(stop_wait_callback): Add prototype.
(init_lwp_list): Add comment about when to re-initialize the LWP
list.
(lin_lwp_attach_lwp): Only call ptrace for cloned processes.
Avoid adding publicates to the LWP list. Only mark an LWP as
signalled if it doesn't correspond to a cloned process.
(lin_lwp_attach): Add initial process to the LWP list. Make sure
it's stopped and fake a SIGSTOP.
(detach_callback): New function.
(lin_lwp_detach): Implement.
(lin_lwp_create_inferior): Don't re-initialize LWP list here.
Call child_ops.to_create_inferior directly instead of via
target_beneath local.
(lin_lwp_mourn_inferior): Call child_ops.to_mourn_inferior
directly instead of via target_beneath local.
Eli Zaretskii [Sun, 6 May 2001 06:07:20 +0000 (06:07 +0000)]
* symtab.c (lookup_symtab_1, lookup_partial_symtab): Use basename
instead of non-portable search for `/'. Use FILENAME_CMP instead
of STREQ, to account for case-insensitive filesystems.
(top-level): #include "filenames.h".
Jim Blandy [Sun, 6 May 2001 01:35:57 +0000 (01:35 +0000)]
* breakpoint.c (check_duplicates): Use the breakpoint's type, not
its address, to decide whether it's a watchpoint or not. Zero
is a valid code address.
(update_breakpoints_after_exec): Admonishing comments.
* breakpoint.h (struct breakpoint): Doc fixes.
Michael Snyder [Fri, 4 May 2001 21:07:01 +0000 (21:07 +0000)]
2001-05-03 Michael Snyder <msnyder@redhat.com>
* config/sid.exp (gdb_target_sid): Check for error messages.
On error or timeout, don't make expect exit (which will terminate
all subsequent tests); instead just make gdb exit.
(gdb_load): Check for error messages. On error or timeout,
return a negative value.
* m32r-dis.c, -asm.c, -ibld.c: Regenerated with disassembler fixes.
2001-05-04 Frank Ch. Eigler <fche@redhat.com>
* cgen-dis.in (print_insn): Remove call to read_insn. Instead,
assume incoming buffer already has the base insn loaded. Handle
case of smaller-than-base instructions for variable-length case.
H.J. Lu [Thu, 3 May 2001 06:26:26 +0000 (06:26 +0000)]
2001-05-03 H.J. Lu <hjl@gnu.org>
* emultempl/elf32.em: Include "libiberty.h".
(gld${EMULATION_NAME}_vercheck): Call basename () to get the
basename of the bfd filename.
(gld${EMULATION_NAME}_stat_needed): Likewise.
(gld${EMULATION_NAME}_try_needed): Likewise.
(gld${EMULATION_NAME}_open_dynamic_archive): Likewise.
H.J. Lu [Thu, 3 May 2001 06:18:09 +0000 (06:18 +0000)]
2001-05-03 H.J. Lu <hjl@gnu.org>
* elfcode.h: Include "libiberty.h".
* elflink.h (elf_link_add_object_symbols): Set
elf_dt_name (abfd) to basename of the bfd filename.
(NAME(bfd_elf,size_dynamic_sections)): Set vn_file to basename
of the bfd filename.
Nicholas Duffek [Tue, 1 May 2001 19:36:11 +0000 (19:36 +0000)]
* config/rs6000/tm-rs6000.h (IN_SOLIB_RETURN_TRAMPOLINE): Define.
(rs6000_in_solib_return_trampoline): Declare.
* rs6000-tdep.c (rs6000_in_solib_return_trampoline): New
function.
(rs6000_skip_trampoline_code): Skip bigtoc fixup code.
* xcoffread.c (read_xcoff_symtab): Perform the ISFCN function
check after the CSECT check rather than before it. Allocate
separate symtabs for CSECTs whose names begin with '@'.
(scan_xcoff_symtab): Don't ignore symbols beginning with '@'.
Activate the misc_func_recorded mechanism for whose names begin
with '@'.
* ppcnbsd-nat.c (fetch_inferior_registers)
(store_inferior_registers, fetch_core_registers): Changed to use
fpreg[] instead of r_regs[] to access floating point registers.
Elena Zannoni [Mon, 30 Apr 2001 20:57:31 +0000 (20:57 +0000)]
2001-04-30 Elena Zannoni <ezannoni@redhat.com>
* sh-tdep.c: Get rid of the function prototypes.
(sh_sh4_build_float_register_type): Move earlier in file.
(fv_reg_base_num): Ditto.
(dr_reg_base_num): Ditto.
Michael Snyder [Mon, 30 Apr 2001 20:25:07 +0000 (20:25 +0000)]
2001-04-30 Michael Snyder <msnyder@redhat.com>
* thread-db.c: Revert 2001-04-26 change for debugging output.
* lin-lwp.c: Ditto.
* lin-lwp.c: Add set/show debug lin-lwp command. Use this
command to turn extra debugging output on / off.
Andreas Jaeger [Sun, 29 Apr 2001 13:42:45 +0000 (13:42 +0000)]
* elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Only swap
out handled entries.
(elf64_x86_64_finish_dynamic_symbol): Set up GOT entries.
(elf64_x86_64_relocate_section): Fix GOTPCREL calculation.
(elf64_x86_64_relocate_section): Merge entries for GOTPCREL and
GOT32.
Don Howard [Fri, 27 Apr 2001 16:06:53 +0000 (16:06 +0000)]
(Changes from Kevin Buettner, with minor update by Don Howard.)
* i387-nat.c (i387_supply_fxsave, i387_fill_fxsave, i387_tag): Fix
typos in which hexadecimal constants were really intended to be
binary constants.
(i387_tag): Swap logic regarding zero vs non-zero exponents.
Jim Blandy [Fri, 27 Apr 2001 00:19:09 +0000 (00:19 +0000)]
(Changes from Daniel Berlin, with revisions by Jim Blandy.)
Abstract out operations specific to particular C++ ABI's, and
invoke them through a function table. This removes the C++ ABI
dependencies scattered throughout the code, and allows us to
cleanly add support for new C++ ABI's.
* cp-abi.h, cp-abi.h, gnu-v2-abi.c, hpacc-abi.c: New files.
* c-typeprint.c, c-valprint.c, dbxread.c, eval.c, gdbtypes.c,
jv-typeprint.c, linespec.c, symtab.c, typeprint.c, valops.c:
#include "cp-abi.h". These files all use functions now declared
there.
* symtab.h (OPNAME_PREFIX_P, VTBL_PREFIX_P, DESTRUCTOR_PREFIX_P):
Deleted. These services are now provided by functions declared in
cp-abi.h.
* value.h (value_rtti_type, value_virtual_fn_field): Same.
* values.c (value_virtual_fn_field): Same, for this definition.
* valops.c (value_rtti_type): Same.
* c-typeprint.c (c_type_print_base): Use the functions from
"cp-abi.h", instead of the old macros, or hard-coded ABI-specific
tests.
* dbxread.c (record_minimal_symbol): Same.
* gdbtypes.c (get_destructor_fn_field, virtual_base_index,
virtual_base_index_skip_primaries): Same.
* jv-typeprint.c (java_type_print_base): Same.
* linespec.c (find_methods, decode_line_1): Same.
* symtab.c (gdb_mangle_name): Same.
* Makefile.in (SFILES): Add the new .c files mentioned above.
(cp_abi_h): New variable.
(COMMON_OBS): Add gnu-v2-abi.o, hpacc-abi.o, and cp-abi.o.
(cp-abi.o, gnu-v2-abi.o, hpacc-abi.o): New targets.
(c-typeprint.o, c-valprint.o, dbxread.o, eval.o, gdbtypes.o,
jv-typeprint.o, symtab.o, linespec.o, typeprint.o, valops.o): Add
dependency on $(cp_abi_h).
Michael Snyder [Thu, 26 Apr 2001 23:14:20 +0000 (23:14 +0000)]
2001-04-26 Michael Snyder <msnyder@redhat.com>
* thread-db.c (_initialize_thread_db): Add set/show command
"debug-linux-threads" for debugging output.
* lin-lwp.c (various): Use global "debug_linux_threads to
turn on extra debugging output.
Jakub Jelinek [Tue, 24 Apr 2001 17:55:57 +0000 (17:55 +0000)]
* merge.c (struct sec_merge_hash_entry): Add alignment field.
(struct sec_merge_hash): Remove alignment_power.
(sec_merge_hash_newfunc): Clear alignment.
(sec_merge_hash_lookup): Pass alignment as argument.
Use hashp->root.next, not hashp->next to walk the hash chain.
If a string already in the hashtable does not have required
alignment, create a new hashtable entry.
(sec_merge_init): Remove alignment_power argument.
(sec_merge_add): Add alignment argument.
(sec_merge_emit): Alignment is now a per-entity thing, not per
section.
(_bfd_merge_section): Sanity check even non-SEC_STRINGS sections
for proper alignment.
Pass alignment information to sec_merge_add.
Jim Blandy [Tue, 24 Apr 2001 17:47:42 +0000 (17:47 +0000)]
* gdb.c++/templates.exp: If we see the prompt for the overload
list, but we haven't recognized any of the longer patterns,
arrange for this test to fail, not hang.