(NO_OPD_RELOCS): Define.
(ppc64_elf_check_relocs): Use it.
(ppc64_elf_relocate_section): Here too.
(build_one_stub): Don't point function syms at the stub. Instead,
hijack plt.offset.
(ppc64_elf_relocate_section): Check whether REL24 relocs should
really go to the stub. Make all dynamic relocs in opd against
locals.
(ppc64_elf_finish_dynamic_symbol): Allow for non-standard use of
plt.offset.
* sh-tdep.c (sh_pseudo_register_read): New function. Renamed and
modified version of obsolete sh_fetch_pseudo_register.
(sh_fetch_pseudo_register): Rename to sh_pseudo_register_read.
(sh4_register_read): New function.
(sh_pseudo_register_write): New function. Renamed and modified
version of obsolete sh_store_pseudo_register.
(sh_store_pseudo_register): Rename to sh_pseudo_register_write.
(sh4_register_write): New function.
(sh_gdbarch_init): Remove setting of gdbarch function
fetch_pseudo_register and store_pseudo_register. Remove setting of
register_convert_to_raw, register_convert_to_virtual,
register_convertible.
(sh_sh4_register_convertible): Delete. No longer needed. All is
taken care by architecture specific functions
register_read/register_write.
(sh_sh4_register_convert_to_virtual): Make static.
(sh_sh4_register_convert_to_raw): Ditto.
parameter. Set frameless flag if it exists and depended of
whether the scanned function is frameless or not.
(xstormy16_skip_prologue): If function is frameless, return
result of xstormy16_scan_prologue().
(xstormy16_frame_init_saved_regs): Adjust xstormy16_scan_prologue()
call.
* sh-tdep.c (sh_fp_frame_init_saved_regs, sh_push_arguments,
sh_generic_show_regs, sh3_show_regs, sh3e_show_regs,
sh3_dsp_show_regs, sh4_show_regs, sh_dsp_show_regs,
sh_sh4_register_byte, sh_sh4_register_raw_size,
sh_sh3e_register_virtual_type, sh_sh4_register_virtual_type,
sh_sh4_register_convertible, sh_sh4_register_convert_to_virtual,
sh_sh4_register_convert_to_raw, sh_fetch_pseudo_register,
sh_store_pseudo_register, sh_do_pseudo_register): Call
gdbarch_tdep() just once, assign result to variable and use that,
instead of calling the function several times.
is up-to-date before running the program, not just when a program
exits.
* testsuite/gdb.base/reread.exp: Check that GDB properly re-reads the
executable file when it changes while no inferior is running.
2002-01-21 Fred Fish <fnf@redhat.com>
* gdb.base/maint.exp: Simplify the "maint info breakpoints" test to
optionally accept the "shlib events" variation.
2002-01-21 Fred Fish <fnf@redhat.com>
* arm-tdep.c (thumb_skip_prologue): Quit scanning prologue
when we have found all instructions we are looking for.
call `fflush' after every `printf', so that the output is produced
at predictable points, regardless of whatever buffering does (or
doesn't) take place.
* gdb.base/ending-run.exp: Adjust tests to expect output to appear
at different points.
(arm_registers_names): Make static.
* config/arm/tm-arm.h (arm_register_names): Delete declaration.
(arm_register_name): Declare.
(REGISTER_NAME): Use it.
and Kevin Buettner <kevinb@redhat.com>
Convert arm targets to new FRAME interface.
* arm-tdep.c (struct frame_extra_info): Remove fsr.
(arm_frame_find_save_regs): Delete.
(arm_frame_init_saved_regs): New.
(arm_init_extra_frame_info): Alloacte saved_regs as required.
Allocate extra_info as required. Convert all uses of fsr.regs
to use saved_regs, similarly all uses of EXTRA_FRAME_INFO fields
to use extra_info.
(thumb_scan_prologue, arm_scan_prologue, arm_find_callers_reg)
(arm_frame_chain, arm_frame_saved_pc, arm_pop_frame): Likewise.
(check_prologue_cache, save_prologue_cache): Likewise.
(_initialize_arm_tdep): Ensure prologue_cache is correctly set up.
* config/arm/tm-arm.h (EXTRA_FRAME_INFO): Delete.
(FRAME_FIND_SAVED_REGS): Delete.
(arm_frame_find_saved_regs): Delete prototype.
(arm_frame_init_saved_regs): New prototype.
(FRAME_INIT_SAVED_REGS): Define.
is_func_descriptor fields.
(link_hash_newfunc): Init them.
(ppc64_elf_check_relocs): Only R_PPC24_REL24 syms starting with a
dot are candidates for plt entries. When processing .opd relocs,
set function descriptor strings to point inside function code
string, and set new ppc_link_hash_entry fields.
(ppc64_elf_gc_sweep_hook): Don't sweep R_PPC64_REL24 relocs.
(ppc64_elf_adjust_dynamic_symbol): Remove most code dealing with
function descriptors. It's now done in..
(func_desc_adjust): New.
(ppc64_elf_func_desc_adjust): New.
(define elf_backend_always_size_sections): Define.
(ppc64_elf_hide_symbol): New.
(define elf_backend_hide_symbol): Define.
(allocate_dynrelocs): Remove code looking up function descriptors
as that has been done earlier.
(ppc64_elf_size_dynamic_sections): Use htab shortcut to elf hash
table.
(ppc64_elf_finish_dynamic_symbol): Likewise. Remove code looking
up function descriptor.
(build_one_stub): Look up the function code sym. Check for
invalid plt offsets.
(ppc64_elf_relocate_section): Tweak calls to undefined weak syms.
Convert R_PPC64_TOC relocs to R_PPC64_RELATIVE in shared libs.