Richard Henderson [Mon, 2 Jun 2003 16:14:54 +0000 (16:14 +0000)]
* alpha-tdep.c (alpha_register_convert_to_virtual): Tidy use of
deprecated interfaces; use ALPHA_REGISTER_SIZE instead of gdbarch
macros where appropriate.
(alpha_register_convert_to_raw): Similarly. Use unpack_long.
(alpha_convert_flt_dbl, alpha_convert_dbl_flt): New.
Richard Henderson [Mon, 2 Jun 2003 16:13:58 +0000 (16:13 +0000)]
* alpha-tdep.c (alpha_register_virtual_type): Use void_data_ptr
for SP, GP; void_func_ptr for PC; non-language-specific types
for all others.
* alpha-tdep.h (ALPHA_GP_REGNUM): New.
Richard Henderson [Mon, 2 Jun 2003 16:02:59 +0000 (16:02 +0000)]
* top.h (lim_at_start): Declare.
* main.c (captured_main): Set it.
* top.c (lim_at_start): Define.
(command_loop): Use it instead of &environ.
* event-top.c (command_handler): Likewise.
* gdb.base/selftest.exp: Next over lim_at_start initialization.
Richard Henderson [Mon, 2 Jun 2003 15:51:24 +0000 (15:51 +0000)]
* gdb.base/dump.exp [alpha*-*-*]: Add -taso linker switch.
Alan Modra [Mon, 2 Jun 2003 15:03:20 +0000 (15:03 +0000)]
* macro.c (sub_actual): Don't lose string if it turns out that
&string wasn't an arg.
Jason Thorpe [Mon, 2 Jun 2003 14:45:13 +0000 (14:45 +0000)]
* objcopy.c (redefine_list_append): Add an argument that
indicates the context from which this function is being
called. Change all callers.
(copy_options): Add a new option, --redefine-syms.
(copy_usage): Document new option.
(copy_main): Handle the --redefine-syms option.
* doc/binutils.text (objcopy): Document new option.
Nick Clifton [Mon, 2 Jun 2003 09:11:01 +0000 (09:11 +0000)]
Add new test for cygwin target: building an executable with an export table.
Nick Clifton [Mon, 2 Jun 2003 08:43:37 +0000 (08:43 +0000)]
Scan table pe_dll->exports, which is sorted alphabetically, instead of
exported_symbols, which is sorted by ordinal.
Jason Thorpe [Mon, 2 Jun 2003 04:58:26 +0000 (04:58 +0000)]
* mipsnbsd-tdep.c: Update copyright years.
(fetch_core_registers): Correct arguments to mipsnbsd_supply_fpreg.
Richard Henderson [Mon, 2 Jun 2003 04:34:37 +0000 (04:34 +0000)]
* Makefile.in (ALLDEPFILES): Add alpha-mdebug-tdep.c.
(alpha-linux-tdep.o): Update dependencies.
(alpha-nat.o, alpha-tdep.o, alpha-mdebug-tdep.o): Likewise.
* alpha-mdebug-tdep.c: Remove unneeded includes.
Richard Henderson [Mon, 2 Jun 2003 04:32:19 +0000 (04:32 +0000)]
* alpha-tdep.c (alpha_register_reggroup_p): New.
(alpha_gdbarch_init): Register it.
Andrew Cagney [Mon, 2 Jun 2003 04:16:24 +0000 (04:16 +0000)]
2003-06-01 Andrew Cagney <cagney@redhat.com>
* dwarfread.c: Eliminate "register"
(decode_die_type): Eliminate assignment within "if".
(struct_type, decode_array_element_type): Ditto.
(dwarf_read_array_type, read_tag_pointer_type): Ditto.
(read_subroutine_type, enum_type, add_enum_psymbol): Ditto.
(decode_modified_type, completedieinfo): Ditto.
* block.c: Eliminate "register".
(blockvector_for_pc_sect): Eliminate assignment within "if".
* cp-support.h (struct symbol): Opaque declaration.
* breakpoint.c (handle_gnu_v3_exceptions): Use xfree, not free.
Richard Henderson [Mon, 2 Jun 2003 03:38:09 +0000 (03:38 +0000)]
* alpha-tdep.c (alpha_gdbarch_init): Use set_gdbarch_print_insn ...
(_initialize_alpha_tdep): ... not deprecated_tm_print_insn.
Daniel Jacobowitz [Mon, 2 Jun 2003 03:09:32 +0000 (03:09 +0000)]
* gdb.asm/asm-source.exp: Dissassemble from &globalvar instead
of globalvar.
Adam Fedor [Mon, 2 Jun 2003 02:54:35 +0000 (02:54 +0000)]
* gdbarch.sh (function_list): Add FETCH_POINTER_ARGUMENT.
* gdbarch.[ch]: Regenerate.
* hppa-tdep.c (hppa_fetch_pointer_argument): New function.
(hppa_gdbarch_init): Set it in the gdbarch vector.
* i386-tdep.c (i386_fetch_pointer_argument): New
(i386_gdbarch_init): Set it into gdbarch.
* rs6000-tdep.c (rs6000_fetch_pointer_argument): New.
(rs6000_gdbarch_init): Set it in gdbarch.
* sparc-tdep.c (sparc_fetch_pointer_argument): New
(sparc_gdbarch_init): Set it in gdbarch.
Andrew Cagney [Mon, 2 Jun 2003 02:09:40 +0000 (02:09 +0000)]
2003-06-01 Andrew Cagney <cagney@redhat.com>
* defs.h (extract_address): Delete declaration.
* findvar.c (extract_address): Delete function.
* xstormy16-tdep.c (xstormy16_extract_return_value): Replace
extract_address with the inline equivalent,
extract_unsigned_integer.
(xstormy16_extract_struct_value_address): Ditto.
(xstormy16_pointer_to_address): Ditto.
* vax-tdep.c (vax_extract_struct_value_address): Ditto.
* v850-tdep.c (v850_push_arguments): Ditto.
(v850_extract_return_value): Ditto.
(v850_extract_struct_value_address): Ditto.
* sparcnbsd-tdep.c (sparcnbsd_get_longjmp_target_32): Ditto.
(sparcnbsd_get_longjmp_target_64): Ditto.
* sparc-tdep.c (sparc_frame_saved_pc): Ditto.
(get_longjmp_target): Ditto.
* sh-tdep.c (sh_extract_struct_value_address): Ditto.
(sh64_extract_struct_value_address): Ditto.
(sh_push_arguments): Ditto.
(sh64_push_arguments): Ditto.
* remote-vxsparc.c (vx_read_register): Ditto.
* ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Ditto.
* ns32k-tdep.c (ns32k_extract_struct_value_address): Ditto.
* mn10300-tdep.c (mn10300_extract_struct_value_address): Ditto.
* mipsv4-nat.c (get_longjmp_target): Ditto.
* mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Ditto.
* mips-nat.c (get_longjmp_target): Ditto.
* mips-linux-tdep.c (mips_linux_get_longjmp_target): Ditto.
* mcore-tdep.c (mcore_extract_struct_value_address): Ditto.
* m68k-tdep.c (m68k_get_longjmp_target): Ditto.
* m68hc11-tdep.c (m68hc11_extract_struct_value_address): Ditto.
* irix5-nat.c (get_longjmp_target): Ditto.
* irix4-nat.c (get_longjmp_target): Ditto.
* ia64-tdep.c (generic_elf_find_global_pointer): Ditto.
(ia64_push_arguments): Ditto.
* hpux-thread.c (hpux_thread_store_registers): Ditto.
* h8300-tdep.c (h8300_push_arguments): Ditto.
(h8300_store_return_value): Ditto.
(h8300_extract_struct_value_address): Ditto.
* frv-tdep.c (frv_extract_struct_value_address): Ditto.
(frv_push_arguments): Ditto.
* avr-tdep.c (avr_pointer_to_address): Ditto.
(avr_push_arguments): Ditto.
* arm-tdep.c (arm_push_dummy_call): Ditto.
(arm_get_longjmp_target): Ditto.
* arm-linux-tdep.c (arm_linux_push_arguments): Ditto.
* alpha-tdep.c (alpha_extract_struct_value_address): Ditto.
(alpha_get_longjmp_target): Ditto.
Alan Modra [Mon, 2 Jun 2003 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Mon, 2 Jun 2003 00:00:01 +0000 (00:00 +0000)]
*** empty log message ***
Andrew Cagney [Sun, 1 Jun 2003 23:05:43 +0000 (23:05 +0000)]
2003-06-01 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Add "func_addr"
parameter to "push_dummy_call". Rename "dummy_addr" to "bp_addr".
Andrew Cagney [Sun, 1 Jun 2003 23:00:55 +0000 (23:00 +0000)]
2003-06-01 Andrew Cagney <cagney@redhat.com>
* solib-irix.c (extract_mips_address): Inline extract_address,
replacing it with extract_signed_integer.
* solib-svr4.c (SOLIB_EXTRACT_ADDRESS): Ditto.
(LM_NAME, IGNORE_FIRST_LINK_MAP_ENTRY): Ditto.
(first_link_map_member, open_symbol_file_object): Ditto.
(svr4_fetch_objfile_link_map, svr4_fetch_objfile_link_map): Ditto.
* solib-sunos.c (SOLIB_EXTRACT_ADDRESS): Ditto.
(LM_NEXT, LM_NAME): Ditto.
Andrew Cagney [Sun, 1 Jun 2003 22:30:30 +0000 (22:30 +0000)]
Oops, really commit. Part of:
* infcall.c (call_function_by_hand): Update comment on
DEPRECATED_DUMMY_WRITE_SP.
* mips-tdep.c (mips_gdbarch_init): Do not set
deprecated_dummy_write_sp.
(mips_eabi_push_dummy_call): Set the SP register.
(mips_o64_push_dummy_call): Set the SP register.
(mips_o32_push_dummy_call): Set the SP register.
(mips_n32n64_push_dummy_call): Set the SP register.
Richard Henderson [Sun, 1 Jun 2003 21:46:37 +0000 (21:46 +0000)]
* alpha-tdep.h (ALPHA_FP_REGNUM): Remove.
* alpha-tdep.c (alpha_register_name): Remove vfp entry.
(alpha_cannot_fetch_register): Remove ALPHA_FP_REGNUM.
(alpha_cannot_store_register): Likewise.
* alphabsd-nat.c (fetch_inferior_registers): Don't set FP_REGNUM.
* alpha-nat.c (supply_gregset): Likewise.
* alphanbsd-tdep.c (fetch_core_registers): Likewise.
Andrew Cagney [Sun, 1 Jun 2003 19:02:19 +0000 (19:02 +0000)]
2003-06-01 Andrew Cagney <cagney@redhat.com>
* infcall.c (call_function_by_hand): Update comment on
DEPRECATED_DUMMY_WRITE_SP.
* mips-tdep.c (mips_gdbarch_init): Do not set
deprecated_dummy_write_sp.
(mips_eabi_push_dummy_call): Set the SP register.
(mips_o64_push_dummy_call): Set the SP register.
(mips_o32_push_dummy_call): Set the SP register.
(mips_n32n64_push_dummy_call): Set the SP register.
Richard Henderson [Sun, 1 Jun 2003 18:44:13 +0000 (18:44 +0000)]
* alpha-nat.c (fetch_osf_core_registers): Use ALPHA_REGISTER_SIZE
instead of ALPHA_MAX_REGISTER_RAW_SIZE.
(supply_gregset): Likewise.
* alpha-tdep.c (alpha_store_return_value): Likewise.
(alpha_get_longjmp_target): Likewise.
(alpha_register_name): Constify array.
(alpha_gdbarch_init): Remove deprecated_fp_regnum,
deprecated_register_size, deprecated_register_bytes,
deprecated_max_register_raw_size, deprecated_max_register_virtual_size.
* alpha-tdep.h (ALPHA_MAX_REGISTER_RAW_SIZE): Remove.
(ALPHA_MAX_REGISTER_VIRTUAL_SIZE): Remove.
Richard Henderson [Sun, 1 Jun 2003 18:42:30 +0000 (18:42 +0000)]
* alpha-tdep.c (alpha_push_dummy_call): Store sp. Tidy copies
from arg_reg_buffer to regcache to avoid double conversion.
Mark Kettenis [Sun, 1 Jun 2003 16:45:02 +0000 (16:45 +0000)]
* i386-linux-nat.c (child_resume): Use I386_ESP_REGNUM instead of
SP_REGNUM.
* i386-linux-tdep.c (i386_linux_sigcontext_addr): Likewise.
* i386bsd-tdep.c (i386bsd_sigcontext_addr): Likewise.
Richard Henderson [Sun, 1 Jun 2003 16:08:54 +0000 (16:08 +0000)]
* dwarf2-frame.c (struct dwarf2_cie): Add saw_z_augmentation.
(decode_frame_entry): Set it. Skip FDE augmentation.
Richard Henderson [Sun, 1 Jun 2003 16:04:50 +0000 (16:04 +0000)]
* dwarf2-frame.c (dwarf2_frame_cache): Handle retaddr_column
not overlapping PC_REGNUM.
Richard Henderson [Sun, 1 Jun 2003 16:02:50 +0000 (16:02 +0000)]
* alpha-tdep.c (alpha_push_dummy_call): Transmography from
alpha_push_arguments. Don't dump argument register data to
the target stack. Fix float and 128-bit long double semantics.
Store $t12 and $ra as specified by the ABI. Use regcache everywhere.
(alpha_fix_call_dummy): Remove.
(alpha_call_dummy_words): Remove.
(alpha_gdbarch_init): Kill deprecated call hooks; add push_dummy_call.
Richard Henderson [Sun, 1 Jun 2003 15:53:56 +0000 (15:53 +0000)]
* alpha-linux-tdep.c (alpha_linux_init_abi): Install dwarf2 unwinder.
Andrew Cagney [Sun, 1 Jun 2003 15:45:57 +0000 (15:45 +0000)]
2003-06-01 Andrew Cagney <cagney@redhat.com>
* mips-tdep.c (is_mips16_addr): New function.
(make_mips16_addr, unmake_mips16_addr): New functions.
(pc_is_mips16, mips_fetch_instruction): Use.
(gdb_print_insn_mips, mips_breakpoint_from_pc): Use.
(gdb_print_insn_mips): Eliminate TM_PRINT_INSN_MACH.
(mips_dump_tdep): Delete print of TM_PRINT_INSN_MACH,
UNMAKE_MIPS16_ADDR, MAKE_MIPS16_ADDR, IS_MIPS16_ADDR and
TARGET_MIPS.
* config/mips/tm-mips.h: Update copyright.
(TARGET_MIPS, TM_PRINT_INSN_MACH): Delete.
(DEPRECATED_REGISTER_SIZE, DEPRECATED_REGISTER_BYTES): Delete.
(IS_MIPS16_ADDR, MAKE_MIPS16_ADDR, UNMAKE_MIPS16_ADDR): Delete.
* config/mips/tm-irix6.h (DEPRECATED_REGISTER_BYTES): Delete.
(TM_PRINT_INSN_MACH): Delete.
* config/mips/tm-irix5.h (DEPRECATED_REGISTER_BYTES): Delete.
Andrew Cagney [Sun, 1 Jun 2003 14:45:28 +0000 (14:45 +0000)]
2003-06-01 Andrew Cagney <cagney@redhat.com>
* configure.tgt: Replace mips64*vr4xxx*el-*-elf*,
mips64*vr4xxx*-*-elf*, mips64*vr4300*el-*-elf*,
mips64*vr4300*-*-elf*, mips64*vr4100*el-*-elf*,
mips64*vr4100*-*-elf*, mips64*vr5000*el-*-elf*, and
mips64*vr5000*-*-elf* with mips64 mips64*vr*-*-elf*. Delete
mips*tx39*el*-elf*. Map mips*-sony-* and mips64*-big-* onto
mips64. Map mips*-dec-*, mips*-big-*, mips*-little-*,
mips*-*-riscos* and mips*-*-sysv* onto mips.
* config/mips/mips64.mt: New file.
* config/mips/mips.mt: New file.
* config/mips/littlemips.mt: Delete file.
* config/mips/decstation.mt: Delete file.
* config/mips/vr4300el.mt: Delete file.
* config/mips/vr5000el.mt: Delete file.
* config/mips/vr5000.mt: Delete file.
* config/mips/vr4100.mt: Delete file.
* config/mips/vr4xxxel.mt: Delete file.
* config/mips/vr4300.mt: Delete file.
* config/mips/vr4xxx.mt: Delete file.
* config/mips/bigmips.mt: Delete file.
* config/mips/bigmips64.mt: Delete file.
* config/mips/tx39l.mt (TM_FILE): Set to "tm-tx39.h".
* config/mips/embedl64.mt (TM_FILE): Set to "tm-mips64.h".
* config/mips/embed64.mt (TM_FILE): Set to "tm-mips64.h"
* config/mips/embedl.mt (TM_FILE): Set to "tm-mips.h".
* config/mips/tm-tx39.h: Include "tm-mips.h" instead of
"tm-bigmips.h".
* config/mips/tm-irix3.h: Ditto.
* config/mips/tm-mipsv4.h: Ditto.
* config/mips/tm-embed.h: Ditto.
* config/mips/tm-irix6.h: Include "tm-mips64.h" instead of
"tm-bigmips64.h".
* config/mips/tm-vr5000el.h: Delete file.
* config/mips/tm-tx39l.h: Delete file.
* config/mips/tm-vr4300el.h: Delete file.
* config/mips/tm-vr4xxxel.h: Delete file.
* config/mips/tm-vr4300.h: Delete file.
* config/mips/tm-vr4100.h: Delete file.
* config/mips/tm-vr4xxx.h: Delete file.
* config/mips/tm-vr5000.h: Delete file.
* config/mips/tm-embedl64.h: Delete file.
* config/mips/tm-embedl.h: Delete file.
* config/mips/tm-embed64.h: Delete file.
* config/mips/tm-bigmips64.h: Delete file.
* config/mips/tm-bigmips.h: Delete file.
Mark Kettenis [Sun, 1 Jun 2003 12:31:26 +0000 (12:31 +0000)]
Fix gdb/1216.
* shnbsd-nat.c: Include "sh-tdep.h".
Mark Kettenis [Sun, 1 Jun 2003 11:37:34 +0000 (11:37 +0000)]
* gdb.asm/asm-source.exp: Check for memory read errors in
disassembler test on *BSD too.
Mark Kettenis [Sun, 1 Jun 2003 09:19:40 +0000 (09:19 +0000)]
From Richard Henderson <rth@redhat.com>:
* dwarf2-frame.c (dwarf2_frame_state_alloc_regs): Fix ptr arithmetic.
Richard Henderson [Sun, 1 Jun 2003 07:16:05 +0000 (07:16 +0000)]
* gdb.asm/alpha.inc (gdbasm_enter): Use numeric register names
for .frame.
(gdbasm_call): Lose ldgp.
(gdbasm_startup): Add frame information.
* gdb.asm/asm-source.exp (alpha*-*): Add -no-mdebug to asm-flags.
Andrew Cagney [Sun, 1 Jun 2003 01:36:34 +0000 (01:36 +0000)]
2003-05-31 Andrew Cagney <cagney@redhat.com>
* mips-tdep.c (set_reg_offset): Add saved_regs parameter. Add
forward declaration.
(mips16_heuristic_proc_desc): Pass temp_saved_regs.
(mips16_heuristic_proc_desc): Pass temp_saved_regs.
(mips_find_saved_regs): Use set_reg_offset.
(mips_frame_init_saved_regs): Delete function.
(mips_pop_frame): Call mips_find_saved_regs instead of
DEPRECATED_FRAME_INIT_SAVED_REGS.
Alan Modra [Sun, 1 Jun 2003 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Sun, 1 Jun 2003 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Andrew Cagney [Sat, 31 May 2003 22:56:29 +0000 (22:56 +0000)]
2003-05-31 Andrew Cagney <cagney@redhat.com>
* mips-tdep.c (mips_gdbarch_init): Do not set
deprecated_max_register_raw_size, register_virtual_size, and
deprecated_max_register_virtual_size.
Mark Kettenis [Sat, 31 May 2003 21:13:20 +0000 (21:13 +0000)]
* i386-tdep.c: Include "dwarf2-frame.h".
(i386_gdbarch_init): Hook in the DWARF CFI frame unwinder.
* Makefile.in (i386-tdep.o): Update dependencies.
Mark Kettenis [Sat, 31 May 2003 19:48:39 +0000 (19:48 +0000)]
* gdb.base/float.exp: Expect similar output for x86_64-*-* as for
i?86-*-*.
Richard Henderson [Sat, 31 May 2003 19:36:45 +0000 (19:36 +0000)]
* dw2gencfi.c (output_fde): Use fix_new to emit pc-relative reloc.
(cfi_finish): Set flag_traditional_format around .eh_frame data.
* gas/alpha/elf-reloc-8.d: Correct .eh_frame relocs.
* gas/cfi/cfi-alpha-2.d: New.
* gas/cfi/cfi-alpha-2.s: New.
* gas/cfi/cfi.exp: Run it.
Richard Henderson [Sat, 31 May 2003 19:29:19 +0000 (19:29 +0000)]
* readelf.c (byte_get_signed): New.
(get_encoded_value): New.
(display_debug_frames): Use it. Always pre-process opcodes.
Mark Kettenis [Sat, 31 May 2003 19:18:05 +0000 (19:18 +0000)]
* dwarf2-frame.c, dwarf2-frame.h: New files.
* Makefile.in (SFILES): Add dwarf2-frame.c.
(dwarf2_frame_h): Define.
(COMMON_OBS): Add dwarf2-frame.o.
(dwarf2-frame.o): Add dependencies.
Andreas Jaeger [Sat, 31 May 2003 18:00:04 +0000 (18:00 +0000)]
* x86-64-linux-nat.c: Fix comment.
Mark Kettenis [Sat, 31 May 2003 16:54:18 +0000 (16:54 +0000)]
* x86-64-tdep.c (x86_64_push_dummy_call): Adjust for changed
function signature.
Mark Kettenis [Sat, 31 May 2003 16:49:18 +0000 (16:49 +0000)]
* i386-tdep.c (i386_sigtramp_frame_p): Only handle frames if we
have a sigcontext_addr handler.
* x86-64-tdep.c (x86_64_sigtramp_frame_p): Assert that we have a
sigcontext_addr handler.
Andrew Cagney [Sat, 31 May 2003 16:36:28 +0000 (16:36 +0000)]
2003-05-31 Andrew Cagney <cagney@redhat.com>
* mips-tdep.c (print_gp_register_row): Replace do_gp_register_row.
(print_fp_register_row): Replace do_fp_register_row.
(mips_print_fp_register): Add "file" and "frame" parameters.
(mips_print_register): Add "file" and "frame" parameters.
(mips_print_registers_info): Replace mips_do_registers_info.
(mips_gdbarch_init): Set print_registers_info instead of
deprecated_do_registers_info.
(mips_read_fp_register_single): Add "frame" parameter.
(mips_read_fp_register_double): Add "frame" parameter.
Mark Kettenis [Sat, 31 May 2003 16:25:13 +0000 (16:25 +0000)]
* i386-tdep.c (i386_register_name): Check for MMX registers first.
Fixes a bug where GDB would print the wrong register names for
targets without SSE.
Mark Kettenis [Sat, 31 May 2003 16:11:47 +0000 (16:11 +0000)]
* x86-64-tdep.c (X86_64_NUM_SAVED_REGS): Set to X86_64_NUM_GREGS.
(x86_64_sigtramp_frame_cache): Use `sc_reg_offset' to find saved
registers.
* x86-64-linux-tdep.c (x86_64_linux_sc_reg_offset): New variable.
(x86_64_linux_init_abi): Initialize TDEP->sc_reg_offset and
TDEP->sc_num_regs instead of TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
Mark Kettenis [Sat, 31 May 2003 16:08:06 +0000 (16:08 +0000)]
From Michal Ludvig <mludvig@suse.cz>:
* i386-tdep.h (struct gdbarch_tdep): Add members `sc_reg_offset'
and `sc_num_regs'.
(I386_EAX_REGNUM, I386_EDX_REGNUM, I386_ESP_REGNUM,
I386_EBP_REGNUM, I386_EIP_REGNUM, I386_EFLAGS_REGNUM,
I386_ST0_REGNUM): Move here from...
* i386-tdep.c: ... here.
(I386_NUM_SAVED_REGS): Define to I386_NUM_REGS.
(i386_sigtramp_frame_cache): Use `sc_reg_offset' to find saved
registers if possible.
(i386_gdbarch_init): Initialize TDEP->sc_reg_offset.
* i386bsd-tdep.c (i386bsd_sc_pc_offset, i386bsd_sc_sp_offset):
Remove variables.
(i386bsd_sc_reg_offset): New variable.
(i386bsd_init_abi): Initialize TDEP->sc_reg_offset and
TDEP->sc_num_regs instead of TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
(i386fbsd_sc_reg_offset): New variable.
(i386fbsdaout_init_abi): Initialize TDEP->sc_reg_offset and
TDEP->sc_num_regs.
(i386fbsd4_sc_pc_offset, i386fbsd4_sc_sp_offset): Remove
variables.
(i386fbsd4_sc_reg_offset): New variable.
(i3864bsd4_init_abi): Initialize TDEP->sc_reg_offset and
TDEP->sc_num_regs instead of TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
* i386-linux-tdep.c (i386_linux_sc_reg_offset): New variable.
(i386_linux_init_abi): Set TDEP->sc_reg_offset and TDEP->sc_num_regs.
* i386nbsd-tdep.c (i386nbsd_sc_pc_offset, i386nbsd_sc_sp_offset):
Remove variables.
(i386nbsd_sc_reg_offset): New variable.
(i386nbsd_init_abi): Initialize TDEP->sc_reg_offset and
TDEP->sc_num_regs instead of TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
* i386obsd-tdep.c (i386obsd_sc_pc_offset, i386obsd_sc_sp_offset):
Remove variables.
(i386obsd_sc_reg_offset): New variable.
(i386obsd_init_abi): Initialize TDEP->sc_reg_offset and
TDEP->sc_num_regs instead of TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
* i386bsd-nat.c (_initialize_i386bsd_nat): Adjust for changes in
i386bsd-tdep.c, i386nbsd-tdep.c and i386obsd-tdep.c. Add check
for frame pointer offset in `struct sigcontext'.
Andrew Cagney [Sat, 31 May 2003 15:17:05 +0000 (15:17 +0000)]
2003-05-31 Andrew Cagney <cagney@redhat.com>
* mips-tdep.c (mips_gdbarch_init): Do not set the deprecated
architecture methods call_dummy_words, sizeof_call_dummy_words,
push_return_address, store_struct_return, and fix_call_dummy. Set
push_dummy_call instead of deprecated_push_arguments.
(mips_store_struct_return): Delete function.
(mips_fix_call_dummy): Delete function.
(mips_push_return_address): Delete function.
(mips_eabi_push_dummy_call): Replace mips_eabi_push_arguments, set
RA_REGNUM and T9_REGNUM.
(mips_n32n64_push_dummy_call): Ditto for
mips_n32n64_push_arguments.
(mips_o32_push_dummy_call): Ditto for mips_o32_push_arguments.
(mips_o64_push_dummy_call): Ditto for mips_o64_push_arguments.
Andrew Cagney [Sat, 31 May 2003 14:20:31 +0000 (14:20 +0000)]
2003-05-31 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh (PUSH_DUMMY_CALL): Add "func_addr" parameter. Rename
"dummy_addr" to "bp_addr".
* infcall.c (call_function_by_hand): Pass "funaddr" to
gdbarch_push_dummy_call.
* gdbarch.h, gdbarch.c: Re-generate.
* i386-tdep.c (i386_push_dummy_call): Update.
* arm-tdep.c (arm_push_dummy_call): Update.
* d10v-tdep.c (d10v_push_dummy_call): Update.
Mark Kettenis [Sat, 31 May 2003 08:15:38 +0000 (08:15 +0000)]
* x86-64-tdep.h (x86_64_num_regs, x86_64_num_gregs): Remove
variable declarations.
(x86_64_register_number, x86_64_register_name): Remove prototypes.
(x86_64_linux_frame_saved_pc, x86_64_linux+saved_pc_after_call,
x86_64_linux_in_sigtramp, x86_64_linux_frame_chain,
x86_64_init_frame_pc, x86_64_init_frame_pc,
x86_64_function_has_prologue): Remove prototypes.
(X86_64_NUM_GREGS): New define.
(x86_64_supply_fxsave, x86_64_fill_fxsave): New prototypes.
* x86-64-tdep.c: Don't include "dwarf2cfi.h". Include
"dummy_frame.h", "frame.h", "frame-base.h", "frame-unwind.h".
(RAX_REGNUM, RDX_REGNUM, RDI_REGNUM, EFLAGS_REGNUM, ST0_REGNUM,
XMM1_REGNUM): Remove defines.
(X86_64_RAX_REGNUM, X86_64_RDX_REGNUM, X86_64_RDI_REGNUM,
X86_64_RBP_REGNUM, X86_64_RSP_REGNUM, X86_64_RIP_REGNUM,
X86_64_EFLAGS_REGNUM, X86_64_ST0_REGNUM, X86_64_XMM0_REGNUM,
X86_64_XMM1_REGNUM): New defines.
(struct x86_64_register_info): Renamed from `struct
register_info'. Remove `size' member.
(x86_64_register_info_table): Remove variable.
(x86_64_register_info): New variable.
(X86_64_NUM_REGS): New define.
(X86_64_NUM_GREGS): Remove define.
(x86_64_num_regs, x86_64_num_gregs): Remove variables.
(x86_64_dwarf2gdb_regno_map, x86_64_dwarf2gdb_regno_map_length):
Remove variables.
(x86_54_dwarf2_reg_to_regnum): Remove function.
(x86_64_dwarf_regmap, x86_64_dwarf_regmap_len): New variables.
(x86_64_dwarf_reg_to_regnum): New function.
(x86_64_register_name): Rewrite.
(x86_64_register_raw_size): Remove function.
(x86_64_register_byte_table): Remove variable.
(x86_64_register_byte): Remove function.
(x86_64_register_virtual_type): Remove function.
(x86_64_register_type): New function.
(x86_64_register_convertible, x86_64_register_convert_to_virtual,
x86_64_register_convert_to_raw): Remove functions.
(x86_64_push_return_address, x86_64_pop_frame): Remove functon.
(x86_64_use_struct_convention): Make static. Adjust for renamed
defines.
(x86_64_frame_init_saved_regs): Remove function.
(x86_64_push_arguments): Make static. Change to accept a regcache
as argument.
(x86_64_store_return_value, x86_64_extract_return_value): Make
static. Rewrite based on i386 counterparts.
(x86_64_push_dummy_call): New function.
(X86_64_NUM_SAVED_REGS): New define.
(x86_64_register_number): Remove function.
(x86_64_store_struct_return): Remove function.
(x86_64_frameless_function_invocation,
x86_64_function_has_prologue): Remove functions.
(PROLOG_BUFSIZE): Remove define.
(struct x86_64_frame_cache): New structure.
(x86_64_alloc_frame_cache, x86_64_analyze_prologue,
x86_64_frame_cache, x86_64_frame_this_id,
x86_64_frame_prev_register, x86_64_frame_p,
x86_64_sigtramp_frame_cache, x86_64_sigtramp_frame_this_id,
x86_64_sigtramp_frame_prev_register, x86_sigtramp_frame_p): New
functions.
(x86_64_frame_unwind, x86_64_sigtramp_frame_unwind): New
variables.
(x86_64_skip_prologue): Rewrite in terms of
x86_64_analyze_prologue.
(x86_64_frame_base_address): New function.
(x86_64_frame_base): New variable.
(x86_64_save_dummy_frame_tos, x86_64_unwind_dummy_id): Rewrite.
(x86_64_init_abi): Set register_type and push_dummy_call. Don't
set deprecated_fp_regnum, deprecated_register_size,
deprecated_register_bytes, register_raw_size, register_byte,
register_virtual_type, register_convertiable,
register_convert_to_virtual, convert_to_raw,
deprecated_get_saved_register, deprecated_target_read_fp,
deprecated_push_arguments, deprecated_push_return_address,
deprecated_pop_frame, deprecated_store_struct_return,
deprecated_frame_init_saved_regs, deprecated_frame_chain,
frameless_function_invocation, deprecated_frame_saved_pc,
deprecated_saved_pc_after_call, frame_num_args, pc_in_sigtramp,
dwarf2_build_frame_info, deprecated_init_extra_frame_info,
deprecated_init_frame_pc and virtual_frame_pointer. Call
frame_unwind_append_predicate to register x86_64_sigtramp_frame_p
and x86_64_frame_p. Call frame_base_set_default to register
x86_64_frame_base.
(I387_FISEG_REGNUM, I387_FOSEG_REGNUM): New defines.
(x86_64_supply_fxsave, x86_64_fill_fxsave): New functions.
(_initialize_x86_64_tdep): Remove function.
* x86-64-linux-tdep.c: Don't include "dwarf2cfi.h".
(LINUX_SIGINFO_SIZE, LINUX_UCONTEXT_SIGCONTEXT_OFFSET,
LINUX_SIGCONTEXT_PC_OFFSET, LINUX_SIGCONTEXT_FP_OFFSET): Don't
define.
(X86_64_LINUX_UCONTEXT_SIGCONTEXT_OFFSET): Define.
(x86_64_linux_sigcontext_addr): Rewrite.
(x86_64_linux_sigtramp_saved_pc, x86_64_linux_saved_pc_after_call,
x86_64_linux_frame_saved_pc): Remove functions.
(x86_64_linux_pc_in_sigtramp): Renamed from
x86_64_linux_in_sigtramp. Try harder to recognize a signal
trampoline.
(x86_64_linux_frame_chain, x86_64_init_frame_pc):
Remove_functions.
(x86_64_linux_init_abi): Set pc_in_sigtramp. Initialize
TDEP->sigcontext_addr, TDEP->sc_pc_offset and TDEP->sc_sp_offset.
* x86-64-linux-nat.c: Sync with i386-linux-tdep.c.
(x86_64_regmap): Rename to regmap.
(GETREGS_SUPPLIES): Use X86_64_NUM_GREGS instead of
x86_64_num_gregs.
(supply_gregset, fill_gregset): Likewise. Use regmap instead of
x86_64_regmap.
(x86_64_fxsave_offset): Remove function.
(supply_fpregset): Simply call x86_64_supply_fxsave.
(fill_fpregset): Simply call x86_64_fill_fxsave.
(fetch_inferior_registers, store_inferior_registers): Avoid
asignment in if-statement.
(LINUX_SYSCALL_LEN, LINUX_SYSCALL_REGNUM, SYS_Sigreturn,
SYS_rt_sigreturn, LINUX_SIGCONTEXT_EFLAGS_OFFSET,
LINUX_UCONTEXT_SIGCONTEXT_OFFSET): Remove defines.
(fetch_core_registers): Remove function.
(linux_elf_core_fns): Remove.
(offsetoff): Don't define.
(_initialize_x86_64_linux_nat, kernel_u_size): Remove functions.
* config/i386/x86-64linux.mt (TDEPFILES): Add i386-linux-tdep.o.
* config/i386/x86-64linux.mh (NATDEPFILES): Remove core-aout.o,
add core-regset.o.
* config/i386/nm-x86-64linux.h: Use NM_X86_64_LINUX_H for
protection against multiple includes instead of NM_X86_64_h. Add
various comments. Include "config/nm-linux.h". Don't include
<signal.h>.
(REGISTER_U_ADDR, KERNEL_U_SIZE, U_REGS_OFFSET, KERN_U_ADDR,
GET_THREAD_SIGNALS): Remove defines.
(x86_64_register_u_addr, kernel_u_size,
lin_thread_get_thread_signals): Remove prototypes.
(PTRACE_ARG3_TYPE, PTRACE_XFER_TYPE): Define to `long'.
[HAVE_LINK_H]: Don't include "solib.h".
[HAVE_LINK_H] (SVR4_SHARED_LIBS): Remove define.
* config/i386/tm-x86-64linux.h: Fix comments.
* Makefile.in (x86-64-linux-nat.o, x86_64-linux-tdep.o,
x86-64-tdep.o): Update dependencies.
Jakub Jelinek [Sat, 31 May 2003 07:55:10 +0000 (07:55 +0000)]
* elf32-ppc.c (allocate_dynrelocs): Use single slot for first 8192
plt entries, not just 8191.
Andrew Cagney [Sat, 31 May 2003 03:42:58 +0000 (03:42 +0000)]
2003-05-30 Andrew Cagney <cagney@redhat.com>
* config/sparc/tm-sparc.h (sparc_extract_struct_value_address):
Change parameter type to a "struct regcache *".
Andrew Cagney [Sat, 31 May 2003 03:23:47 +0000 (03:23 +0000)]
2003-05-30 Andrew Cagney <cagney@redhat.com>
* gdbarch.sh: Regardless of the multi-arch level, always define
the macro when not already defined.
* gdbarch.h, gdbarch.c: Re-generate.
Alan Modra [Sat, 31 May 2003 00:57:55 +0000 (00:57 +0000)]
daily update
Richard Henderson [Sat, 31 May 2003 00:27:46 +0000 (00:27 +0000)]
* alpha-mdebug-tdep.c (alpha_mdebug_frame_p): Reject prologues.
(alpha_mdebug_frame_unwind_cache): Don't call the heuristic unwinder.
(alpha_mdebug_frame_this_id): Likewise.
(alpha_mdebug_frame_prev_register): Likewise.
(alpha_mdebug_frame_base_address): Likewise.
(alpha_mdebug_frame_locals_address): Likewise.
(alpha_mdebug_frame_args_address): Likewise.
(struct alpha_mdebug_unwind_cache): Remove in_prologue_cache.
* alpha-tdep.c (alpha_heuristic_proc_start): Use get_pc_function_start.
(alpha_heuristic_frame_unwind_cache): Make static; add missing
loop increment.
(alpha_heuristic_frame_this_id): Make static.
(alpha_heuristic_frame_prev_register): Likewise.
(alpha_heuristic_frame_base_address): Likewise.
* alpha-tdep.h: Update.
gdbadmin [Sat, 31 May 2003 00:00:03 +0000 (00:00 +0000)]
*** empty log message ***
Mark Kettenis [Fri, 30 May 2003 19:24:30 +0000 (19:24 +0000)]
* i386-tdep.h (i386bsd_sigcontext_addr): Remove prototype.
(I386_SIZEOF_GREGS, I386_SIZEOF_FREGS, I386_SIZEOF_XREGS): Remove
defenitions.
(IS_FP_REGNUM, IS_SSE_REGNUM): Remove definitions.
* i386-tdep.c: Mark functions that are 64-bit safe as such.
(I386_EAX_REGNUM, I386_EDX_REGNUM, I386_ESP_REGNUM,
I386_EBP_REGNUM, I386_EIP_REGNUM, I386_EFLAGS_REGNUM,
I386_ST0_REGNUM): New defines.
(CODESTREAM_BUFSIZ, codestream_tell, codestream_peek,
codestream_get): Remove define.
(codestream_next_addr, condestream_addr, condestream_buf,
codestream_off, codestream_cnt): Remove variables.
(codestream_fill, codestream_seek, codestream_read): Remove
functions.
(i386_follow_jump): Rewrite to avoid usage of removed codestream
functionality.
(i386_get_frame_setup, i386_frameless_signal_p, i386_frame_chain,
i386_sigtramp_saved_pc, i386_sigtramp_saved_sp,
i386_frame_saved_pc, i386_saved_pc_after_call,
i386_frame_num_args, i386_frame_init_saved_regs,
i386_push_return_address, i386_do_pop_frame, i386_pop_frame,
i386_push_arguments): Remove functions.
(i386_skip_prologue): Rewrite to avoid usage of removed codestream
functionality. Use i386_analyze_prologue instead of
i386_get_frame_setup.
(I386_NUM_SAVED_REGS): New define.
(struct i386_frame_cache): New structure.
(i386_alloc_frame_cache, i386_analyze_struct_return,
i386_skip_probe, i386_analyze_frame_setup,
i386_analyze_register_saves, i386_analyze_prologue,
i386_unwind_pc, i386_frame_cache, i386_frame_this_id,
i386_frame_prev_register, i386_sigtramp_frame_cache,
i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register,
i386_frame_p, i386_sigtramp_frame_p, i386_frame_base_address,
i386_unwind_dummy_id, i386_save_dummy_tos, i386_push_dummy_call):
New functions.
(i386_frame_unwind, i386_sigtramp_frame_unwind, i386_frame_base):
New variables.
(LOW_RETURN_REGNUM, HIGH_RETURN_REGNUM): Define in terms of
I386_EAX_REGNUM and I386_EDX_REGNUM.
(i386_extract_return_value, i386_store_return_value): Use
I386_ST0_REGNUM where appropriate.
(i386_extract_struct_value_address): Rewrite to use extract_address.
(i386_svr4_pc_in_sigtramp): Add comment.
(i386_svr4_sigcontext_addr): Rewrite.
(i386_svr4_init_abi): Adjust TDEP->sc_pc_offset and
TDEP->sc_sp_offset.
(i386_gdbarch_init): Don't set deprecated_init_frame_pc. Set
sp_regnum, fp_regnum, pc_regnum, ps_regnum and fp0_regnum in terms
of new defines. Set push_dummy_call, don't set
deprecated_push_arguments, deprecated_push_return_address,
deprecated_pop_frame. Don't set parm_boundary. Don't set
deprecated_frame_chain, deprecated_frame_saved_pc,
deprecated_saved_pc_after_call. Set unwind_dummy_id,
save_dummy_frame_tos, unwind_pc. Call
frame_unwind_append_predicate and frame_base_set_default. Don't
set deprecated_dummy_write_pc. Don't set deprecated_fp_regnum.
Don't set frameless_function_invocation. Don't set
deprecated_register_bytes, deprecated_register_size,
deprecated_call_dummy_words and deprecated_sizeof_call_dummy.
* i386-linux-tdep.c: Fix formatting in some comments.
(LINUX_SIGTRAMP_INSN0, LINUX_SIGTRAMP_OFFSET0,
LINUX_SIGTRAMP_INSN1, LINUX_SIGTRAMP_OFFSET1,
LINUX_SIGTRAMP_INSN2, LINUX_SIGTRAMP_OFFSET2,
LINUX_RT_SIGTRAMP_INSN0, LINUX_RT_SIGTRAMP_OFFSET0,
LINUX_RT_SIGTRAMP_INSN1, LINUX_RT_SIGTRAMP_OFFSET1): Drop
redundant parentheses.
(I386_LINUX_UCONTEXT_SIGCONTEXT_OFFSET): New define.
(i386_linux_sigcontext_addr): Use it. Rewrite.
(find_minsym_and_objfile): Change name of second argument.
(skip_gnu_resolver): Renamed from skip_hurd_resolver. All callers
changed. Use frame_pc_unwind instead of
DEPRECATED_SAVED_PC_AFTER_CALL.
(i386_linux_init_abi): Don't set deprecated_register_bytes.
* i386bsd-tdep.c (i386bsd_sigcontext_addr): Rewrite.
* i386-nto-tdep.c (i386nto_sigcontext_addr): Adapt for new frame
unwinder.
* i386-cygwin-tdep.c: Don't include "gdbcore.h", "frame.h" and
"dummy-frame.h".
(i386_cygwin_frame_chain_valid, i386_cygwin_frame_chain): Removed.
(_initialize_i386_cygwin_tdep): New prototype.
(i386_cygwin_init_abi): Don't set deprecated_frame_chain and
deprecated_frame_chain_valid.
* i386-sol2-tdep.c (i386_sol2_init_abi): Don't set
TDEP->sigcontext_addr, TDEP->sc_pc_offset and TDEP->sc_sp_offset.
Rely on the SVR4 defaults.
* config/i386/i386sol2.mt (TDEPFILES): Remove i386bsd-tdep.o.
* Makefile.in (i386-tdep.o, i386-cygwin-tdep.o): Update dependencies.
Daniel Jacobowitz [Fri, 30 May 2003 19:13:36 +0000 (19:13 +0000)]
* elfxx-mips.c (_bfd_mips_elf_discard_info): Correct loop index.
Reported by Ken Faiczak <kfaiczak@SANDVINE.com>.
Andrew Cagney [Fri, 30 May 2003 18:43:38 +0000 (18:43 +0000)]
2003-05-30 Andrew Cagney <cagney@redhat.com>
* infcall.c (call_function_by_hand): Always call
DEPRECATED_FIX_CALL_DUMMY, even for AT_ENTRY_POINT case.
Richard Henderson [Fri, 30 May 2003 18:41:39 +0000 (18:41 +0000)]
* alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Fix loop increment.
Mark Kettenis [Fri, 30 May 2003 17:45:50 +0000 (17:45 +0000)]
* gdb.asm/asm-source.exp: Make sure the final link succeeds on
FreeBSD.
Jakub Jelinek [Fri, 30 May 2003 15:50:12 +0000 (15:50 +0000)]
bfd/
* elflink.h (elf_link_add_object_symbols): Use !info->executable
instead of info->shared where appropriate.
(bfd_elfNN_size_dynamic_sections, elf_link_output_extsym): Likewise.
* elflink.c (_bfd_elf_create_got_section): Likewise.
(_bfd_elf_link_create_dynamic_sections): Likewise.
(_bfd_elf_link_assign_sym_version): Likewise.
* elf32-i386.c (elf_i386_size_dynamic_sections): Create .interp section
and DT_DEBUG dynamic tag even for position independent executables.
* elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
* elf32-s390.c (elf_s390_size_dynamic_sections: Likewise.
* elf64-ppc.c (ppc64_elf_size_dynamic_sections: Likewise.
* elf64-s390.c (elf_s390_size_dynamic_sections: Likewise.
* elf64-x86-64.c (elf64_x86_64_size_dynamic_sections: Likewise.
* elfxx-ia64.c (elfNN_ia64_size_dynamic_sections: Likewise.
* elf32-sparc.c (elf32_sparc_size_dynamic_sections: Likewise.
* elf64-alpha.c (elf64_alpha_size_dynamic_sections: Likewise.
* elf64-sparc.c (sparc64_elf_size_dynamic_sections: Likewise.
include/
* bfdlink.h (struct bfd_link_info): Add pie and executable
bits.
ld/
* lexsup.c (OPTION_PIE): Define.
(ld_options): Add -pie and --pic-executable options.
(parse_args): Handle OPTION_PIE.
* ldmain.c (main): Initialize link_info.pie and
link_info.executable.
* genscripts.sh: Generate PIE scripts.
* ld.texinfo: Document -pie and --pic-executable options.
* emultempl/elf32.em (gld${EMULATION_NAME}_after_open):
(gld${EMULATION_NAME}_place_orphan): Likewise.
(gld${EMULATION_NAME}_get_script): Include PIE scripts.
* scripttempl/elf.sc: In PIE scripts set . the same way as in
shared scripts.
* emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Set to yes.
* emulparams/elf64_ia64.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf32ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64ppc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf_x86_64.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf32_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64_sparc.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64alpha.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf64_s390.sh (GENERATE_PIE_SCRIPT): Likewise.
* emulparams/elf_i386.sh (GENERATE_PIE_SCRIPT): Likewise.
H.J. Lu [Fri, 30 May 2003 13:23:25 +0000 (13:23 +0000)]
ld/
2003-05-30 H.J. Lu <hongjiu.lu@intel.com>
* genscripts.sh: Create tmpdir/libpath.exp.
ld/testsuite/
2003-05-30 H.J. Lu <hongjiu.lu@intel.com>
* config/default.exp: Load tmpdir/libpath.exp.
(gcc_ld_flag): Set from $libpath.
Nick Clifton [Fri, 30 May 2003 08:19:30 +0000 (08:19 +0000)]
(arm_elf_before_allocation): Replace ASSERT with a test for a NULL
bfd_for_interworking.
Nick Clifton [Fri, 30 May 2003 07:30:26 +0000 (07:30 +0000)]
Update URL
Jim Blandy [Fri, 30 May 2003 03:44:05 +0000 (03:44 +0000)]
Use gdbarch methods for solib stuff on PowerPC Linux.
* config/powerpc/tm-linux.h (IN_SOLIB_CALL_TRAMPOLINE,
SKIP_TRAMPOLINE_CODE): #undef these, so the gdbarch methods will
show through.
* ppc-linux-tdep.c (ppc_linux_init_abi): Register
IN_SOLIB_CALL_TRAMPOLINE and SKIP_TRAMPOLINE_CODE methods here,
giving the same effect as the #definitions above.
Richard Henderson [Fri, 30 May 2003 03:01:12 +0000 (03:01 +0000)]
* config/tc-alpha.c (alpha_cur_ent_sym): Remove.
(all_frame_data, plast_frame_data, cur_frame_data): New.
(s_alpha_ent): Record data for dwarf2 cfi.
(s_alpha_end, s_alpha_mask, s_alpha_frame, s_alpha_prologue): Likewise.[
(alpha_elf_md_end): Emit dwarf2 cfi for ecoff unwind directives.
* config/tc-alpha.h (md_end): New.
(DWARF2_DEFAULT_RETURN_COLUMN): New.
(DWARF2_CIE_DATA_ALIGNMENT): New.
* gas/alpha/elf-reloc-8.d: Add .eh_frame relocs.
* gas/cfi/cfi-alpha-1.d: New.
* gas/cfi/cfi-alpha-1.s: New.
* gas/cfi/cfi.exp: Run it.
Richard Henderson [Fri, 30 May 2003 02:51:46 +0000 (02:51 +0000)]
* gdb.asm/alpha.inc: New file.
* gdb.asm/asm-source.exp: Use it.
Adam Fedor [Fri, 30 May 2003 02:45:21 +0000 (02:45 +0000)]
* objc-lang.c (CONVERT_FUNCPTR): Remove macro
(find_implementation_from_class): Replace it with the standard
case i.e. do nothing.
gdbadmin [Fri, 30 May 2003 00:00:32 +0000 (00:00 +0000)]
*** empty log message ***
Alan Modra [Fri, 30 May 2003 00:00:04 +0000 (00:00 +0000)]
daily update
Alan Modra [Thu, 29 May 2003 23:50:04 +0000 (23:50 +0000)]
* elf.c (elfcore_grok_nto_status): Only set lwpid for the active or
signalled thread.
(elfcore_grok_nto_gregs): Only make .reg section for the active thread.
Richard Henderson [Thu, 29 May 2003 23:02:53 +0000 (23:02 +0000)]
* alpha-linux-tdep.c (alpha_linux_sigtramp_offset_1): New.
(alpha_linux_sigtramp_offset): Use it. Make static.
(alpha_linux_sigcontext_addr): Handle __NR_rt_sigreturn;
update for new frame model.
* alpha-mdebug-tdep.c: New file.
* alpha-osf1-tdep.c (alpha_call_dummy_address): Move from alpha-tdep.c.
(alpha_osf1_init_abi): Install it.
* alpha-tdep.c (PROC_*): Move to alpha-mdebug-tdep.c.
(linked_proc_desc_table): Remove.
(alpha_frame_past_sigtramp_frame): Remove.
(alpha_dynamic_sigtramp_offset): Remove.
(ALPHA_PROC_SIGTRAMP_MAGIC): Remove.
(alpha_proc_desc_is_dyn_sigtramp): Remove.
(alpha_set_proc_desc_is_dyn_sigtramp): Remove.
(push_sigtramp_desc): Remove.
(alpha_cannot_fetch_register): Use ALPHA_FP_REGNUM.
(alpha_cannot_store_register): Likewise.
(alpha_sigcontext_addr): Remove.
(alpha_find_saved_regs): Remove.
(alpha_frame_init_saved_regs): Remove.
(alpha_init_frame_pc_first): Remove.
(read_next_frame_reg): Remove.
(alpha_frame_saved_pc): Remove.
(alpha_saved_pc_after_call): Remove.
(temp_proc_desc, temp_saved_regs): Remove.
(alpha_about_to_return): Remove.
(cached_proc_desc): Remove.
(alpha_frame_chain): Remove.
(alpha_print_extra_frame_info): Remove.
(alpha_init_extra_frame_info): Remove.
(alpha_frame_locals_address): Remove.
(alpha_frame_args_address): Remove.
(alpha_push_arguments): Use ALPHA_REGISTER_BYTES not sizeof CORE_ADDR.
(alpha_push_dummy_frame): Remove.
(alpha_pop_frame): Remove.
(alpha_after_prologue): Rename from after_prologue; remove mdebug bits.
(alpha_read_insn): New.
(alpha_skip_prologue): Merge alpha_skip_prologue_internal; adjust
for different insn encodings.
(alpha_in_lenient_prologue): Remove.
(struct alpha_sigtramp_unwind_cache): New.
(alpha_sigtramp_frame_unwind_cache): New.
(alpha_sigtramp_register_address): New.
(alpha_sigtramp_frame_this_id): New.
(alpha_sigtramp_frame_prev_register): New.
(alpha_sigtramp_frame_unwind): New.
(alpha_sigtramp_frame_p): New.
(struct alpha_heuristic_unwind_cache): New.
(alpha_heuristic_proc_start): Rename from heuristic_proc_start;
don't count nop insns that occur between functions.
(alpha_heuristic_frame_unwind_cache): New; incorporate much of
heuristic_proc_desc, but without the mdebug wrapping.
(alpha_heuristic_frame_this_id): New.
(alpha_heuristic_frame_prev_register): New.
(alpha_heuristic_frame_unwind): New.
(alpha_heuristic_frame_p): New.
(alpha_heuristic_frame_base_address): New.
(alpha_heuristic_frame_base): New.
(alpha_unwind_dummy_id): New.
(alpha_unwind_pc): New.
(alpha_gdbarch_init): Don't set skip_sigtramp_frame. Kill use of
frame related deprecated initializations; install replacements.
(alpha_dump_tdep): Remove.
* alpha-tdep.h (struct gdbarch_tdep): Remove skip_sigtramp_frame.
(alpha_read_insn, alpha_after_prologue,
alpha_heuristic_frame_unwind_cache, alpha_heuristic_frame_this_id,
alpha_heuristic_frame_prev_register,
alpha_heuristic_frame_base_address, alpha_mdebug_init_abi): Declare.
* config/alpha/alpha-linux.mt (TDEPFILES): Add alpha-mdebug-tdep.o.
* config/alpha/tm-alpha.h (PRINT_EXTRA_FRAME_INFO): Remove.
* config/alpha/tm-alphalinux.h (SIGTRAMP_START, SIGTRAMP_END): Remove.
Jim Blandy [Thu, 29 May 2003 23:00:02 +0000 (23:00 +0000)]
* gdb.base/corefile.exp: Find corefiles on Linux, which names them
'core.PID'.
Jim Blandy [Thu, 29 May 2003 22:56:50 +0000 (22:56 +0000)]
* linux-low.c (usr_store_inferior_registers): Transfer buf in
PTRACE_XFER_TYPE-sized chunks, not int-sized chunks. Otherwise,
if 'int' is smaller than PTRACE_XFER_TYPE, you end up throwing
away part of the register's value.
Andrew Cagney [Thu, 29 May 2003 21:22:45 +0000 (21:22 +0000)]
2003-05-29 Andrew Cagney <cagney@redhat.com>
* gdb_assert.h (gdb_assert_fail): Provide different definitions
dependant on the availability of ASSERT_FUNCTION.
(ASSERT_FUNCTION): Do not define when there is no function name.
Kevin Buettner [Thu, 29 May 2003 19:47:14 +0000 (19:47 +0000)]
From Jimi X <jimix@watson.ibm.com>:
* rs6000-tdep.c (skip_prologue): Improve support for 64-bit code.
Nick Clifton [Thu, 29 May 2003 18:17:55 +0000 (18:17 +0000)]
Add i386-*-freebsd* entry.
Jason Thorpe [Thu, 29 May 2003 17:38:52 +0000 (17:38 +0000)]
* configure.host (*-*-netbsd*): Set HOSTING_CRT0 and HOSTING_LIBS
correctly for more recent versions of NetBSD.
(alpha*-*-netbsd*): Remove.
(i[3-7]86-*-netbsd*): Remove.
Nick Clifton [Thu, 29 May 2003 17:37:03 +0000 (17:37 +0000)]
Change Mitsubishi to Renesas
Nick Clifton [Thu, 29 May 2003 15:05:41 +0000 (15:05 +0000)]
Replace <ctype.h> with "safe-ctype.h"
Nick Clifton [Thu, 29 May 2003 14:02:04 +0000 (14:02 +0000)]
Import patch to add FreeBSD support.
Thiemo Seufer [Thu, 29 May 2003 02:28:32 +0000 (02:28 +0000)]
* elfxx-mips.c: Don't force symbols local unconditionally.
Jason Thorpe [Thu, 29 May 2003 00:16:46 +0000 (00:16 +0000)]
* ld-elf/elf.exp: Use if_elf_format.
* ld-elf/sec64k.exp: Likewise.
* ld-elfcomm/elfcomm.exp: Likewise.
* lib/ld-lib.exp (is_elf_format): Match hppa*64*-*-hpux*.
Alan Modra [Thu, 29 May 2003 00:00:05 +0000 (00:00 +0000)]
daily update
gdbadmin [Thu, 29 May 2003 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Jim Blandy [Wed, 28 May 2003 22:39:02 +0000 (22:39 +0000)]
* ppc-linux-nat.c (store_altivec_registers): Don't cast fourth
argument to ptrace to int; the system headers should give it the
right type, and pointers don't fit in ints on powerpc64-*-*.
H.J. Lu [Wed, 28 May 2003 20:27:51 +0000 (20:27 +0000)]
2003-05-28 Alan Modra <amodra@bigpond.net.au>
* elf32-hppa.c (elf32_hppa_relocate_section): Delete bogus
undefined_symbol call.
H.J. Lu [Wed, 28 May 2003 20:25:10 +0000 (20:25 +0000)]
2003-05-28 H.J. Lu <hongjiu.lu@intel.com>
* dwarf2read.c (process_die): Handle DW_TAG_try_block and
DW_TAG_catch_block.
DJ Delorie [Wed, 28 May 2003 19:16:29 +0000 (19:16 +0000)]
* Makefile.tpl: Make maybe-check-gcc .PHONY.
* Makefile.in: Regenerate.
Jeff Johnston [Wed, 28 May 2003 17:51:42 +0000 (17:51 +0000)]
2003-05-28 Jeff Johnston <jjohnstn@redhat.com>
* COPYING.NEWLIB: Add license info for newlib/libc/sys/linux/stdlib.
gdbadmin [Wed, 28 May 2003 00:00:02 +0000 (00:00 +0000)]
*** empty log message ***
Mark Kettenis [Tue, 27 May 2003 23:29:47 +0000 (23:29 +0000)]
* aclocal.m4: Don't add wcwidth.o if we don't have wchar.h.
* configure: Regenerate.
Richard Henderson [Tue, 27 May 2003 19:19:29 +0000 (19:19 +0000)]
* expr.c (make_expr_symbol): Fold FAKE_LABEL_NAME use into the
symbol_create call.
(current_location): Use symbol_temp_new_now.
* stabs.c (s_stab_generic): Use symbol_temp_new.
* symbols.c (temp_label_name): Remove.
(symbol_temp_new, symbol_temp_make): Use FAKE_LABEL_NAME.
Richard Henderson [Tue, 27 May 2003 16:52:49 +0000 (16:52 +0000)]
* dw2gencfi.c, dw2gencfi.h: Rewrite from scratch.
* as.c (main): Always call cfi_finish.
* config/tc-i386.c (x86_dwarf2_return_column): New.
(x86_cie_data_alignment): New.
(md_begin): Set them.
(tc_x86_cfi_init): Remove.
(tc_x86_regname_to_dw2regnum): Fix 32-bit register numbers;
return int, not unsigned long; don't as_bad here.
(tc_x86_frame_initial_instructions): Streamline; use
updated api.
* config/tc-i386.h (tc_cfi_init): Remove.
(DWARF2_DEFAULT_RETURN_COLUMN): New.
(DWARF2_CIE_DATA_ALIGNMENT): New.
* gas/cfi/cfi-i386.d: Update for dw2gencfi rewrite.
* gas/cfi/cfi-x86_64.d: Likewise.
* gas/cfi/cfi-i386-2.d: New.
* gas/cfi/cfi-i386-2.s: New.