Ulrich Weigand [Sat, 23 Oct 2004 16:31:23 +0000 (16:31 +0000)]
* s390-tdep.c (enum pv_boolean): Remove.
(pv_is_array_ref): Remove.
(s390_on_stack): Remove.
(S390_NUM_SPILL_SLOTS): Remove.
(struct s390_prologue_data): Remove members 'spill' and 'back_chain',
add members 'gpr_slot', 'fpr_slot', and 'back_chain_saved_p'.
(s390_store): Track all stores of orginal incoming registers to the
stack constant offsets relative to the CFA, instead of only tracking
stores into specific spill slots.
(s390_load): Likewise.
(s390_analyze_prologue): Adapt to struct s390_prologue_data changes.
(s390_prologue_frame_unwind_cache): Likewise. Only track registers
defined as call-saved by the ABI.
(s390_push_dummy_call): Use bottom of dummy call argument save area
as return value, not the top. Do not store to the called function's
register save area.
(s390_unwind_dummy_id): Adapt accordingly.
Eli Zaretskii [Sat, 23 Oct 2004 13:52:37 +0000 (13:52 +0000)]
* gdb.texinfo (SVR4 Process Information): Document subcommands of
"info proc" that are already implemented. Add index entries.
(Working Directory): Add a cross-reference to "info proc" command.
Michael Snyder [Fri, 22 Oct 2004 00:34:42 +0000 (00:34 +0000)]
2004-10-21 msnyder <msnyder@redhat.com>
* mn10300-tdep.c: Replace struct mn10300_unwind_cache with
struct trad_frame_cache. Don't seem to need any more.
(mn10300_frame_unwind_cache): Use trad_frame_cache.
Tentatively try using SP or A3 reg as frame base.
(mn10300_frame_dummy_this_id): Rename to mn10300_frame_this_id.
Call trad_frame_get_id.
(mn10300_frame_prev_reg): Call trad_frame_get_reg.
(mn10300_frame_base_address): Call trad_frame_get_this_base.
(mn10300_frame_args_address, mn10300_frame_locals_address):
Delete. Substitute mn10300_frame_base_address.
(mn10300_frame_unwind_init): Call dwarf2_frame_sniffer (even
though it doesn't seem to work yet).
* linux-i386-low.c (ps_get_thread_area): New.
* linux-x86-64-low.c (ps_get_thread_area): New.
* linux-low.c: Include <sys/syscall.h>.
(linux_kill_one_process): Don't kill the first thread here.
(linux_kill): Kill the first thread here.
(kill_lwp): New function.
(send_sigstop, linux_send_signal): Use it.
* proc-service.c: Clean up #ifdefs.
(fpregset_info): Delete.
(ps_lgetregs): Update and enable implementation.
(ps_lsetregs, ps_lgetfpregs, ps_lsetfpregs): Remove disabled
implementations.
* remote-utils.c (struct sym_cache, symbol_cache): New.
(input_interrupt): Print a clearer message.
(async_io_enabled): New variable.
(enable_async_io, disable_async_io): Use it. Update comments.
(look_up_one_symbol): Use the symbol cache.
* thread-db.c (thread_db_look_up_symbols): New function.
(thread_db_init): Update comments. Call thread_db_look_up_symbols.
Andrew Cagney [Fri, 15 Oct 2004 13:29:33 +0000 (13:29 +0000)]
2004-10-15 Andrew Cagney <cagney@gnu.org>
* ada-exp.y, ada-lex.l: Use xmalloc and xrealloc through out.
* inf-ptrace.c: Include "gdb_wait.h" instead of <wait.h>.
* Makefile.in (.y.c, .l.c): Don't replace xmalloc with xxmalloc.
Update dependencies.
* ada-lang.c (ada_lookup_symbol): Correct comment.
(ada_evaluate_subexp): Change error message for
OP_FUNCALL case so as not to indicate an internal error.
From Joel Brobecker; committed by Paul Hilfinger.
* ada-lang.c (ada_template_to_fixed_record_type_1): Detect bogus
type sizes in XVE/XVU types, and emit a warning when that happens,
instead of rounding up the size of the resulting type.
Some minor reformatting.
(ada_is_aligner_type): Do not consider a type as an aligner type
if there is a corresponding XVS type as well.
(ada_evaluate_subexp): For TERNOP_SLICE, handle cases where we
have several levels of pointer indirection to the array.
From Jerome Guitton; committed by Paul Hilfinger.
* ada-lang.c (check_size): New function.
(coerce_unspec_val_to_type): call check_size to make sure
that the object size is reasonable.
(ada_evaluate_subexp): in UNOP_IND: Ditto. In TERNOP_SLICE:
Implements the case when we get a reference when we evaluate
the expression of one of the bounds of the slice.
(ada_value_struct_elt): when a packed array field is
a reference, use ada_coerce_ref to dereference it; use
ada_value_ind only if it is a pointer.
Joel Brobecker [Fri, 15 Oct 2004 07:25:04 +0000 (07:25 +0000)]
* mips-tdep.c (mips32_scan_prologue): Move the implementation up
a bit to avoid the necessity of an advance declaration. Remove
declaration.
(set_reg_offset): Move implemenation up.
(mips16_get_imm): Likewise.
(mips16_scan_prologue): Likewise.
(reset_saved_regs): Likewise.
(mips32_scan_prologue): Likewise.
Joel Brobecker [Fri, 15 Oct 2004 07:09:10 +0000 (07:09 +0000)]
* mips-tdep.c (mips32_scan_prologue): Add advance declaration.
Remove sp as a parameter, compute it internally instead. Move
prologue scanning limit from heuristic_proc_desc to here.
(mips16_scan_prologue): Likewise.
(mips_insn16_frame_cache): Replace call to heuristic_proc_desc
by call to mips16_scan_prologue.
(mips_insn32_frame_cache): Replace call to heuristic_proc_desc
by call to mips32_scan_prologue.
(heuristic_proc_desc): Remove code that's no longer necessary.
Update calls to mips16_scan_prologue and mips32_scan_prologue.
(mips_skip_prologue): Update calls to mips16_scan_prologue
and mips32_scan_prologue.
Jakub Jelinek [Fri, 15 Oct 2004 05:19:19 +0000 (05:19 +0000)]
* elflink.c (struct already_linked_section): Removed.
(try_match_symbols_in_sections, already_linked): Removed.
(_bfd_elf_section_already_linked): Skip ^\.gnu\.linkonce\.[^.]*\.
prefix of section names when finding already_linked_table
chain. Compare section names. Instead of calling already_linked,
do it inline and only for sections in the same already_linked_list.
Joel Brobecker [Fri, 15 Oct 2004 04:29:23 +0000 (04:29 +0000)]
* mips-tdep.c (mips16_scan_prologue): Merge code from
mips16_skip_prologue. Now return the address of the first
instruction past the function prologue.
(mips16_skip_prologue): Remove, no longer necessary.
(mips_skip_prologue): Replace call to mips16_skip_prologue
by call to mips16_scan_prologue.
Alan Modra [Thu, 14 Oct 2004 23:38:08 +0000 (23:38 +0000)]
* elf-eh-frame.c (_bfd_elf_eh_frame_section_offset): Add "info"
parameter. If called after _bfd_elf_write_section_eh_frame,
don't allow a -2 return unless need_* bit is already set, and
handle offsets adjusted for output_offset.
* elf-bfd.h (_bfd_elf_eh_frame_section_offset): Update prototype.
* elf.c (_bfd_elf_section_offset): Update call.
Bob Wilson [Thu, 14 Oct 2004 22:58:33 +0000 (22:58 +0000)]
* doc/c-xtensa.texi (Xtensa Options, Absolute Literals Directive):
Remove comments about placement of literal pools.
(Literal Directive): Update description of literal placement.
(Literal Prefix Directive): Remove statement that this does not apply
to absolute-mode literals. Describe new section naming scheme.
Joel Brobecker [Thu, 14 Oct 2004 22:34:25 +0000 (22:34 +0000)]
* mips-tdep.c (mips32_scan_prologue): Merge code from
mips32_skip_prologue. Now return the address of the first
instruction past the function prologue.
(mips32_skip_prologue): Remove. No longer necessary.
(mips16_skip_prologue): Add parameter end_pc instead of
computing it.
(mips_skip_prologue): Compute the upper limit for the
prologue scanning. Update call to mips16_skip_prologue.
Replace call to mips32_skip_prologue by call to
mips32_scan_prologue.
Alan Modra [Thu, 14 Oct 2004 12:54:47 +0000 (12:54 +0000)]
ld/
PR 63
* ldlang.h (lang_output_section_statement_type): Make "next" a
struct lang_output_section_statement_struct *.
(struct orphan_save): Move from elf32.em. Add "name" and "flags".
(lang_output_section_find_by_flags, lang_insert_orphan): Declare.
* ldlang.c (lang_output_section_find_1): Adjust for changed
output_section_statement "next".
(strip_excluded_output_sections): Likewise.
(lang_record_phdrs): Likewise.
(lang_output_section_find_by_flags): New function.
(output_prev_sec_find): Move from pe.em. Adjust iterator.
(lang_insert_orphan): New function. Tail end of elf32.em's
place_orphan merged with that from pe.em. Allow bfd_section to
be placed first. New heuristic for placing new output section
statement in existing script, and accompanying split of __start
symbol alignment into a separate assignment to dot.
(lang_add_section): Consistently use output->bfd_section rather than
an alias, section->output_section.
(map_input_to_output_sections): Rename overly long arg. Move
initialization of data_statement output section to here..
(lang_check_section_addresses): ..from here.
(print_assignment): Correct printing of etree_assert.
(print_all_symbols): Don't bomb if userdata is NULL.
(IGNORE_SECTION): Rearrange.
* emultempl/elf32.em (output_rel_find): Adjust interator.
(output_prev_sec_find): Delete.
(struct orphan_save): Delete.
(gld${EMULATION_NAME}_place_orphan): Cater for zero bfd_section
flags without creating a duplicate output section statement.
Revise code holding history of various orphan section placements.
Allow orphan sections to place before script specified output
sections. Call lang_output_section_find_by_flags when placement
by name fails. Use lang_insert_orphan.
* emultempl/mmo.em (output_prev_sec_find): Delete.
(struct orphan_save): Delete.
(mmo_place_orphan): Revise code holding history of orphan placement.
Allow orphans to place before existing output sections. Use
lang_insert_orphan.
* emultempl/pe.em (output_prev_sec_find): Delete.
(struct orphan_save): Delete.
(gld_${EMULATION_NAME}_place_orphan): Revise to suit use of
lang_insert_orphan.
ld/testsuite/
* ld-scripts/overlay-size.d: Update for changed orphan section
placement.
* ld-mmix/bpo-18.d: Likewise.
Kevin Buettner [Wed, 13 Oct 2004 16:38:22 +0000 (16:38 +0000)]
* rs6000-tdep.c (rs6000_push_dummy_call): Replace references to
``deprecated_registers'' with equivalent code. Use gdb_assert()
instead of explicit test and print statement.
Jakub Jelinek [Wed, 13 Oct 2004 14:33:51 +0000 (14:33 +0000)]
* strings.c (statbuf): New typedef.
(file_stat): Define.
(strings_object_file): Avoid using get_file_size, instead do the
checks here, using file_stat.
* configure.in (HAVE_STAT64): New test.
* configure: Rebuilt.
* config.in: Rebuilt.