aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarf2-frame.c
AgeCommit message (Collapse)AuthorFilesLines
2005-08-01 * dwarf2-frame.c (read_signed_leb128): Handle values that do notDaniel Jacobowitz1-2/+2
fit in 32 bits. * dwarf2read.c (read_signed_leb128): Likewise.
2005-07-12* dwarf2expr.h: Tweak comment.Mark Kettenis1-49/+49
(struct dwarf_expr_context): Use `gdb_byte *' in read_mem and get_frame_base function pointers. (read_uleb128, read_sleb128): Change return type and types of first two arguments to `gdb_byte *'. (dwarf2_read_address): Change types of first two arguments to `gdb_byte *'. * dwarf2expr.c: Tweak comment. (dwarf_expr_eval): Change type of second argument to `gdb_byte *'. (read_uleb128, read_sleb128): Change return type and types of first two arguments to `gdb_byte *'. (dwarf2_read_address): Change types of first two arguments to `gdb_byte *'. (execute_stack_op): Change types of last two arguments to `gdb_byte *'. Use `gdb_byte *' for byte buffers. * dwarf2loc.h: Tweak comment. (struct dwarf2_locexpr_baton, struct dwarf2_loclist_baton): Use `gdb_byte *' for byte buffers. * dwarf2loc.c (find_location_expression): Change return type to `gdb_byte *'. Use `gdb_byte *' for byte buffers. Change length to `unsigned int'. (dwarf_expr_read_reg): Use `gdb_byte *' for byte buffer. Remove bogus cast. (dwarf_expr_read_mem): Change type of second argument to `gdb_byte *'. (dwarf_expr_frame_base): Change type of second argument to `gdb_byte **'. (dwarf2_evaluate_loc_desc): Change type of third argument to `gdb_byte *'. (needs_frame_read_mem): Change type of second argument to `gdb_byte *'. (needs_frame_frame_base): Change type of second argument `gdb_byte **'. Use gdb_byte for lit0. (dwarf2_tracepoint_var_ref): Change type of fourth argument to `gdb_byte *'. Use `gdb_byte *' for byte buffer. (loclist_read_variable, loclist_tracepoint_var_ref): Use `gdb_byte *' for byte buffer. * dwarf2-frame.c (struct dwarf2_cie, struct dwarf2_fde) (struct dwarf2_frame_state): Use gdb_byte instead of `unsigned char'. (read_reg): Use `gdb_byte *' for byte buffers. Remove redundant cast. (read_mem): Change second argument to `gdb_byte *'. (no_get_frame_base): Change second argument to `gdb_byte **'. (execute_stack_op): Change first argument to `gdb_byte *'. (execute_cfa_program): Change first two arguments to `gdb_byte *'. Use gdb_byte instead of `unsigned int'. Use temprorary variable to store result of read_uleb128. (struct comp_unit): Use `gdb_byte *' for byte buffers. (read_1_byte, read_4_bytes, read_8_bytes): Change last argument to `gdb_byte *'. (read_unsigned_leb128, read_signed_leb128): Change second argument to `gdb_byte *'. Use gdb_byte instead of `unsigned char'. (read_initial_length): Change second argument to `gdb_byte *'. Remove redundant casts. (read_encoded_value): Use gdb_byte instead of `unsigned char'. Remove bogus casts. (decode_frame_entry_1): Change return type and second argument to `gdb_byte *'. Use `gdb_byte *' for byte buffers. Use gdb_byte instead of `unsigned char'. (decode_frame_entry): Change return type and second argument to `gdb_byte *'. Use `gdb_byte *' for byte buffers. (dwarf2_build_frame_info): Use `gdb_byte *' for byte buffers.
2005-05-28 * dwarf2-frame.c (dwarf2_frame_prev_register): Use gdb_byte.Daniel Jacobowitz1-1/+1
* i386-linux-nat.c (fetch_register, store_register, supply_gregset) (fill_gregset): Likewise. * i386-tdep.c (i386_frame_prev_register) (i386_sigtramp_frame_prev_register): Likewise. * linux-nat.c (linux_nat_xfer_memory, linux_nat_make_corefile_notes): Likewise. * linux-thread-db.c (thread_db_xfer_memory): Likewise. * remote.c (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint): Likewise. * target.c (debug_to_insert_hw_breakpoint) (debug_to_remove_hw_breakpoint, update_current_target): Likewise.
2005-04-08 * dwarf2-frame.c (struct dwarf2_frame_cache): New fieldDaniel Jacobowitz1-0/+10
undefined_retaddr. (dwarf2_frame_cache): Initialize undefined_retaddr. (dwarf2_frame_this_id): Return an invalid frame ID if undefined_retaddr.
2005-03-26* dwarf2-frame.c (execute_cfa_program): ImplementMark Kettenis1-0/+25
DW_CFA_GNU_window_save.
2005-03-25* dwarf2-frame.h: Update copyrigh year.Mark Kettenis1-8/+41
(enum dwarf2_frame_reg_rule): Add DWARF2_FRAME_REG_RA_OFFSET. * dwarf2-frame.c: Update copyright year. (struct dwarf2_frame_cache): Add member `retaddr_reg'. (dwarf2_frame_cache): Deal with DWARF2_FRAME_REG_RA_OFFSET. (dwarf2_frame_prev_register): Handle DWARF2_FRAME_REG_RA_OFFSET.
2005-02-112005-02-11 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-17/+17
Mark up error_no_arg, query, perror_with_name, complaint, and internal_error. * breakpoint.c, cp-abi.c, cp-namespace.c, cp-support.c: Update. * cris-tdep.c, dbxread.c, dictionary.c, dsrec.c: Update. * dummy-frame.c, dve3900-rom.c, dwarf2-frame.c, dwarf2expr.c: Update. * dwarf2read.c, dwarfread.c, elfread.c, event-loop.c: Update. * exceptions.c, exec.c, f-lang.c, findvar.c, fork-child.c: Update. * frame-unwind.c, frame.c, frv-linux-tdep.c, frv-tdep.c: Update. * gdb_assert.h, gdbarch.c, gdbtypes.c, gnu-nat.c: Update. * go32-nat.c, hppa-tdep.c, hppabsd-nat.c, hpread.c: Update. * i386-linux-nat.c, i386-nat.c, i386-tdep.c, i386bsd-nat.c: Update. * i386fbsd-nat.c, inf-ptrace.c, inf-ttrace.c, infcall.c: Update. * infcmd.c, inflow.c, infptrace.c, infrun.c, inftarg.c: Update. * interps.c, language.c, linespec.c, linux-nat.c: Update. * m32r-linux-nat.c, m68k-tdep.c, m68kbsd-nat.c: Update. * m68klinux-nat.c, m88kbsd-nat.c, macroexp.c, macroscope.c: Update. * macrotab.c, maint.c, mdebugread.c, memattr.c: Update. * mips-linux-tdep.c, mips-tdep.c, mips64obsd-nat.c: Update. * mipsnbsd-nat.c, mn10300-tdep.c, monitor.c, nto-procfs.c: Update. * objc-lang.c, objfiles.c, objfiles.h, ocd.c, osabi.c: Update. * parse.c, ppc-bdm.c, ppc-linux-nat.c, ppc-sysv-tdep.c: Update. * ppcnbsd-nat.c, ppcobsd-nat.c, printcmd.c, procfs.c: Update. * regcache.c, reggroups.c, remote-e7000.c, remote-mips.c: Update. * remote-rdp.c, remote-sds.c, remote-sim.c, remote-st.c: Update. * remote-utils.c, remote.c, rs6000-nat.c, rs6000-tdep.c: Update. * s390-nat.c, s390-tdep.c, sentinel-frame.c, serial.c: Update. * sh-tdep.c, sh3-rom.c, sh64-tdep.c, shnbsd-nat.c: Update. * solib-aix5.c, solib-svr4.c, solib.c, source.c: Update. * sparc-nat.c, stabsread.c, stack.c, symfile.c, symtab.c: Update. * symtab.h, target.c, tracepoint.c, ui-file.c, ui-out.c: Update. * utils.c, valops.c, valprint.c, vax-nat.c, vaxbsd-nat.c: Update. * win32-nat.c, xcoffread.c, xstormy16-tdep.c: Update. * cli/cli-cmds.c, cli/cli-logging.c, cli/cli-script.c: Update. * cli/cli-setshow.c, mi/mi-cmd-break.c, mi/mi-cmds.c: Update. * mi/mi-console.c, mi/mi-getopt.c, mi/mi-out.c: Update. * tui/tui-file.c, tui/tui-interp.c: Update.
2004-11-20* dwarf2-frame.c (read_encoded_value): Correctly calculate numberMark Kettenis1-2/+2
of bytes read for aligned LEB128 encodings.
2004-11-09 * dwarf2-frame.c (dwarf2_frame_state_alloc_regs): Correct allocatedDaniel Jacobowitz1-1/+1
size.
2004-11-07 * dwarf2-frame.c (struct dwarf2_frame_ops): Add signal_frame_p.Daniel Jacobowitz1-3/+49
(dwarf2_frame_set_signal_frame_p, dwarf2_frame_signal_frame_p) (dwarf2_signal_frame_unwind): New. (dwarf2_frame_sniffer): Use dwarf2_frame_signal_frame_p. * dwarf2-frame.h (dwarf2_frame_set_signal_frame_p): New prototype.
2004-11-062004-11-05 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-3/+7
* dwarf2-frame.c (dwarf2_frame_cache): Only complain when both the CFI and the init_reg method leave the register unspecified. Include the register name in the "Incomplete CFI data" complaint. Supress leading zeros in the address.
2004-11-05* dwarf2-frame.c (decode_frame_entry_1): Avoid indirection whenMark Kettenis1-2/+2
skipping a personality routine in a CIE augmentation.
2004-11-05* dwarf2-frame.c (decode_frame_entry_1): Correctly skipMark Kettenis1-1/+3
personality routine in a CIE augmentation.
2004-11-04* dwarf2-frame.c (read_encoded_value): Change type of thirdMark Kettenis1-3/+17
argument to `unsigned char *'. Add support for LEB128 encodings.
2004-11-02* dwarf2-frame.c (read_encoded_value): Set proper size for signedMark Kettenis1-1/+1
encodings as well as unsigned encodings.
2004-10-292004-10-27 Andrew Cagney <cagney@gnu.org>Andrew Cagney1-7/+18
* trad-frame.c (trad_frame_get_prev_register): Use frame_unwind_register instead of frame_register_unwind, do not recurse the register's location. * xstormy16-tdep.c (xstormy16_frame_prev_register): * sparc-tdep.c (sparc32_frame_prev_register): Ditto. * sparc64-tdep.c (sparc64_frame_prev_register): Ditto. * sh-tdep.c (sh_frame_prev_register): Ditto. * m68k-tdep.c (m68k_frame_prev_register): Ditto. * i386-tdep.c (i386_frame_prev_register): Ditto. * dwarf2-frame.c (dwarf2_frame_prev_register): Ditto. * amd64-tdep.c (amd64_frame_prev_register): Ditto.
2004-07-23* dwarf2-frame.c (struct dwarf2_cie): Delete `addr_size' member.Mark Kettenis1-7/+2
(decode_frame_entry_1): Use DW_EH_PE_absptr as default for CIE encoding. (dwarf2_build_frame_info): Adjust for removal of `addr_size' member of `struct comp_unit'.
2004-07-232004-07-23 Martin Hunt <hunt@redhat.com>Martin Hunt1-1/+1
Kevin Buettner <kevinb@redhat.com> * dwarf2-frame.c (execute_cfa_program): Fix typo in which the alignment was being added to the offset instead of multiplied.
2004-06-15 * dsrec.c (load_srec, make_srec): Use bfd_get_section_size instead ofAlan Modra1-4/+2
bfd_get_section_size_before_reloc or _raw_size. * dwarf2-frame.c (dwarf2_build_frame_info): Likewise. * dwarf2read.c (dwarf2_locate_sections): Likewise. (dwarf2_read_section): Likewise. * elfread.c (elf_locate_sections): Likewise. * gcore.c (derive_heap_segment): Likewise. * mipsread.c (read_alphacoff_dynamic_symtab): Likewise. * remote-e7000.c (e7000_load): Likewise. * remote-m32r-sdi.c (m32r_load): Likewise. * remote-mips.c (mips_load_srec): Likewise. (pmon_load_fast): Likewise. * remote.c (compare_sections_command): Likewise. * symfile.c (add_section_size_callback): Likewise. (load_section_callback): Likewise. (pc_in_unmapped_range): Likewise. (pc_in_mapped_range): Likewise. (sections_overlap): Likewise. (list_overlays_command): Likewise. (simple_overlay_update_1): Likewise. (simple_overlay_update): Likewise. * tracepoint.c (remote_set_transparent_ranges): Likewise. * win32-nat.c (core_section_load_dll_symbols): Likewise.
2004-06-08 * gdb/dwarf2-frame.c (decode_frame_entry_1): Decode version 3 CIEPaul Brook1-3/+12
records.
2004-05-01* dwarf2-frame.c (read_encoded_value): Handle DW_EH_PE_funcrelMark Kettenis1-0/+8
encondings. Fixes PR gdb/1628.
2004-05-01* dwarf2-frame.c (execute_cfa_program): Complain if we encounter aMark Kettenis1-5/+11
DW_CFA_restore state without a matching DW_CFA_remember_state instead of aborting. Fixes PR backtrace/1589.
2004-03-152004-03-15 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-21/+5
* gdbarch.sh (gdbarch_data_pre_init_fytpe) (gdbarch_data_register_pre_init, gdbarch_data_post_init_fytpe) (gdbarch_data_register_post_init): Replace gdbarch_data_init_ftype and register_gdbarch_data. (deprecated_set_gdbarch_data): Rename set_gdbarch_data. (struct gdbarch_data): Replace "init" by "pre_init" and "post_init". * gdbarch.h, gdbarch.c: Re-generate. * dwarf2-frame.c (dwarf2_frame_init): Replace "gdbarch" paramter with"obstack", use OBSTACK_ZALLOC. (dwarf2_frame_ops): Delete. (dwarf2_frame_set_init_reg): Use gdbarch_data. (dwarf2_frame_init_reg): Use gdbarch_data. (_initialize_dwarf2_frame): Use gdbarch_data_register_pre_init. * solib-svr4.c (set_solib_svr4_fetch_link_map_offsets) (_initialize_svr4_solib): Update. * user-regs.c (_initialize_user_regs): Update. * reggroups.c (_initialize_reggroup): Update. * regcache.c (_initialize_regcache): Update. * mips-linux-tdep.c (_initialize_mips_linux_tdep): Update. * libunwind-frame.c (_initialize_libunwind_frame): Update. * gnu-v3-abi.c (init_gnuv3_ops): Update. * frame-unwind.c (_initialize_frame_unwind): Update. * frame-base.c (_initialize_frame_base): Update. * user-regs.c (user_reg_add): Update. * reggroups.c (reggroup_add): Update. * mips-linux-tdep.c (set_mips_linux_register_addr): Update. * libunwind-frame.c (libunwind_frame_set_descr): Update. * frame-unwind.c (frame_unwind_append_sniffer): Update. * frame-base.c (frame_base_table): Update. * remote.c (_initialize_remote): Update. * gdb_obstack.h (OBSTACK_ZALLOC, OBSTACK_CALLOC): Define.
2004-02-162004-02-16 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+16
* dwarf2-frame.c (dwarf2_frame_ops): New function. (dwarf2_frame_set_init_reg): Use, instead of gdbarch_data. (dwarf2_frame_init_reg): Ditto.
2004-02-15* dwarf2-frame.h (dwarf2_frame_set_init_reg): New prototype.Mark Kettenis1-38/+92
* dwarf2-frame.c (dwarf2_frame_data): New variable. (struct dwarf2_frame_ops): New. (dwarf2_frame_default_init_reg): New function, based on dwarf2_frame_init_reg. (dwarf2_frame_init, dwarf2_frame_set_init_reg): New function. (dwarf2_frame_init_reg): Call architecture-specific function. (dwarf2_frame_objfile_data): Renamed from dwarf2_frame_data. (dwarf2_frame_find_fde, add_fde): Use dwarf2_frame_objfile_data instead of dwarf2_frame_data. (_initialize_dwarf2_frame): Initailize new dwarf2_frame_data. Initialize dwarf2_frame_objfile instead of old dwarf2_frame_data.
2004-02-072004-02-07 Elena Zannoni <ezannoni@redhat.com>Elena Zannoni1-2/+2
* dbxread.c (dbx_symfile_init, start_psymtab, end_psymtab, coffstab_build_psymtabs, elfstab_build_psymtabs) (stabsect_build_psymtabs): Replace psymbol_obstack with objfile_obstack. * dwarf2-frame.c (decode_frame_entry_1): Ditto. * dwarf2read.c (dwarf2_build_psymtabs_hard, dwarf2_read_section): Ditto. * dwarfread.c (scan_compilation_units): Ditto. * elfread.c (elfstab_offset_sections): Ditto. * hppa-tdep.c (read_unwind_info): Ditto. * hpread.c (hpread_build_psymtabs, hpread_start_psymtab) (hpread_end_psymtab): Ditto. * mdebugread.c (mdebug_build_psymtabs, add_pending) (parse_partial_symbols, new_psymtab, elfmdebug_build_psymtabs): Ditto. * mips-tdep.c (non_heuristic_proc_desc): Ditto. * objfiles.c (add_to_objfile_sections) (build_objfile_section_table): Ditto. (allocate_objfile): Remove init of psymbol_obstack. (free_objfile): Remove freeing of psymbol_obstack. * objfiles.h (struct objfile): Remove field psymbol_obstack. Update comments. * pa64solib.c (pa64_solib_add_solib_objfile): Replace psymbol_obstack with objfile_obstack. * solib-sunos.c (allocate_rt_common_objfile): Remove init of psymbol_obstack. * somread.c (som_symfile_offsets, init_import_symbols) (init_export_symbols): Replace psymbol_obstack with objfile_obstack. * somsolib.c (som_solib_add_solib_objfile): Ditto. * symfile.c (default_symfile_offsets, syms_from_objfile) (reread_symbols): Remove freeing and init of psymbol_obstack. (cashier_psymtab): Update comment. * symmisc.c (print_objfile_statistics): Don't report stats for psymbol obstack. * symtab.h (struct general_symbol_info, struct partial_symtab): Update comments. * xcoffread.c (xcoff_start_psymtab, xcoff_end_psymtab, swap_sym) (xcoff_symfile_offsets): Replace psymbol_obstack with objfile_obstack.
2004-02-07* dwarf2-frame.h: Update copyright.Mark Kettenis1-97/+70
(enum dwarf2_frame_reg_rule): New. (struct dwarf2_frame_state_reg): New. (dwarf2_frame_sniffer, dwarf2_frame_base_sniffer): Make extern. * dwarf2-frame.c: Update copyright. (enum dwarf2_reg_rule): Remove. (struct dwarf2_frame_state): Remove defenition of `struct dwarf2_frame_state_reg'. (read_reg): Call get_frame_arch to get the architecture instead of using CURRENT_GDBARCH. (execute_cfa_program): Prefix old `enum dwarf2_reg_rule' tags with DWARF2_FRAME_. (dwarf2_frame_init_reg): New function. (dwarf2_frame_cache): Call get_frame_arch to get the architecture instead of using CURRENT_GDBARCH. Call dwarf2_frame_init_reg to initialize the register state. Prefix old `enum dwarf2_reg_rule' tags with DWARF2_FRAME_. (dwarf2_frame_prev_register): Call get_frame_arch to get the architecture instead of using CURRENT_GDBARCH. Prefix old `enum dwarf2_reg_rule' tags with DWARF2_FRAME_.
2004-02-02* dwarf2-frame.c (dwarf2_frame_cache): Deal with a return addressMark Kettenis1-5/+10
column that's "empty" or "same value" when eliminating REG_RA rules.
2004-01-18* dwarf2-frame.c (execute_cfa_program): Move DWA_CFA_nop beforeMark Kettenis1-1/+23
DW_CFA_def_cfa_exporession. Add support for DW_CFA_offset_extendend_sf, DW_CFA_def_cfa_sf and DW_CFA_def_cfa_offset_sf. This should fix PR backtrace/1391.
2003-12-27* dwarf2-frame.c (dwarf2_reg_rule): Add REG_RA and REG_CFA.Mark Kettenis1-108/+79
(dwarf2_frame_cache): Initialize PC_REGNUM with REG_RA and SP_REGNUM with REG_CFA. Don't overwrite the initialized register rule for registers left unspecified by the CFI. Remove the special handling of PC_REGNUM. Add code to eleminate any REG_RA rules. (dwarf2_frame_prev_register): Remove the special handling of SP_REGNUM. Add support for the REG_CFA rule.
2003-12-22* dwarf2-frame.c (dwarf2_frame_cache): Don't skip the returnMark Kettenis1-16/+7
address column.
2003-12-05From Ulrich Weigand <weigand@informatik.uni-erlangen.de>:Mark Kettenis1-3/+2
* dwarf2-frame.c (dwarf2_frame_cache): Use the untranslated RA column instead of translating it.
2003-12-02 * dwarf2read.c (dwarf_info_offset, dwarf_abbrev_offset)Daniel Jacobowitz1-14/+7
(dwarf_line_offset, dwarf_pubnames_offset, dwarf_aranges_offset) (dwarf_loc_offset, dwarf_macinfo_offset, dwarf_str_offset) (dwarf_ranges_offset, dwarf_frame_offset, dwarf_eh_frame_offset): Delete. (dwarf2_read_section): Remove offset and size arguments. Use bfd_get_section_size_before_reloc and sectp->filepos. (dwarf2_has_info): Clear section variables instead of offsets. (dwarf2_locate_sections): Don't initialize the deleted variables. (dwarf2_build_psymtabs): Update calls to dwarf2_read_section. (dwarf2_build_psymtabs_easy): Likewise. * dwarf2-frame.c (dwarf_frame_offset, dwarf_frame_size) (dwarf_eh_frame_offset, dwarf_eh_frame_size): Remove extern declarations. (dwarf2_read_section): Update prototype. (dwarf2_build_frame_info): Update calls to dwarf2_read_section. Use bfd_get_section_size_before_reloc instead of global size variables.
2003-11-27* dwarf2-frame.c: Fix another comment.Mark Kettenis1-1/+1
2003-11-27* dwarf2-frame.c: Fix some comments and whitespace problems.Mark Kettenis1-36/+35
2003-11-07* dwarf2-frame.c (dwarf2_build_frame_info): Wrap comment.Mark Kettenis1-1/+2
2003-11-05* dwarf2-frame.c (execute_cfa_program): Mark register asMark Kettenis1-0/+1
REG_SAVED_REG for DW_CFA_register opcode.
2003-10-24Index: mi/ChangeLogAndrew Cagney1-1/+1
2003-10-24 Andrew Cagney <cagney@redhat.com> * tui-out.c: Fix "fortunatly"[sic]. Index: doc/ChangeLog 2003-10-24 Andrew Cagney <cagney@redhat.com> * annotate.texinfo: Fix "fortunatly"[sic]. 2003-10-24 Andrew Cagney <cagney@redhat.com> * osabi.c (gdbarch_init_osabi): Fix typos, and "fortunatly"[sic]. * PROBLEMS, arch-utils.c, cli-out.c, command.h: Ditto. * complaints.c, cris-tdep.c, disasm.c, dwarf2-frame.c: Ditto. * frame.c, frame.h, infcall.c, infcmd.c, infrun.c: Ditto. * kod.c, mips-tdep.c, regcache.c, regcache.h, remote.c: Ditto.
2003-10-03 * dwarf2-frame.c (struct comp_unit): Add tbase member to storeCorinna Vinschen1-1/+13
base for DW_EH_PE_textrel encodings. (read_encoded_value): Add a DW_EH_PE_textrel case. (dwarf2_build_frame_info): Set unit.tbase to beginning of text section.
2003-10-02* dwarf2-frame.c (dwarf2_build_frame_info): Fix comment.Mark Kettenis1-3/+3
2003-09-092003-09-08 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-35/+142
* dwarf2-frame.c (enum dwarf2_reg_rule): New, replace anonymous enum. Add REG_UNSPECIFIED, rename REG_UNSAVED to REG_UNDEFINED and REG_UNMODIFIED to REG_SAME_VALUE. (execute_cfa_program): Update. (dwarf2_frame_cache): Update. Initialize table to REG_UNSPECIFIED, complain if CFI fails to specify a register's location. (dwarf2_frame_prev_register): Update. Handle REG_UNSPECIFIED.
2003-09-08* dwarf2-frame.c (read_encoded_value): Add support forMark Kettenis1-7/+20
DW_EH_PE_aligned encoding.
2003-08-26 PR java/1322Daniel Jacobowitz1-2/+6
* dwarf2-frame.c (dwarf2_frame_find_fde): Check whether any FDEs are available before calling SECT_OFF_TEXT.
2003-08-21* objfiles.h (struct objfile): Add memebers `data' and `num_data'.Mark Kettenis1-3/+14
(register_objfile_data, set_objfile_data, objfile_data): New prototypes. * objfiles.c (objfile_alloc_data, objfile_free_data): New prototypes. (allocate_objfile): Call objfile_alloc_data. (free_objfile): Call objfile_free_data. (struct objfile_data): New. (struct objfile_data_registration): New. (struct objfile_data_registry): New. (objfile_data_registry): New variable. (register_objfile_data): New function. (objfile_alloc_data, objfile_free_data): New functions. (set_objfile_data, objfile_data): New functions. * dwarf2-frame.c (dwarf2_frame_data): New variable. (dwarf2_frame_find_fde, add_fde): Use new per-objfile data mechanism. (_initialize_dwarf2_frame): New function and prototype.
2003-07-182003-07-18 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-18/+11
* dwarf2-frame.c (dwarf2_frame_sniffer): Use frame_unwind_address_in_block, instead of frame_pc_unwind. (dwarf2_frame_cache): Ditto.
2003-07-162003-07-16 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-2/+4
* frame-base.h (frame_base_p_ftype): Delete definition. (frame_base_append_predicate): Delete declaration. * frame-unwind.h (frame_unwind_p_ftype): Delete definition. (frame_unwind_append_predicate): Delete declaration. * frame-unwind.c (struct frame_unwind_table): Delete field "p". (append_predicate): Delete parameter "p". (frame_unwind_append_predicate): Delete function. (frame_unwind_append_sniffer): Update call to append_predicate. (frame_unwind_free): Delete function. (_initialize_frame_unwind): Pass NULL as "free" to register_gdbarch_data. (frame_unwind_init): Append the dummy_frame_sniffer. (frame_unwind_find_by_frame): Simplify. * frame-base.c (struct frame_base_table): Delete field "p". (append_predicate): Delete parameter "p". (frame_base_append_predicate): Delete function. (frame_base_append_sniffer): Update call to append_predicate. (frame_base_free): Delete function. (frame_base_find_by_frame): Simplify. (_initialize_frame_base): Pass NULL as "free" to register_gdbarch_data. * x86-64-tdep.c (x86_64_frame_sniffer): Replace "x86_64_frame_p". (x86_64_sigtramp_frame_sniffer): Replace "x86_64_sigtramp_frame_p". (x86_64_init_abi): Set the frame unwind sniffers. * m68k-tdep.c (m68k_frame_sniffer): Replace "m68k_frame_p". (m68k_sigtramp_frame_sniffer): Replace "m68k_sigtramp_frame_p" (m68k_gdbarch_init): Set the frame unwind sniffers. * i386-tdep.c (i386_sigtramp_frame_sniffer): Replace "i386_sigtramp_frame_p". (i386_frame_sniffer): Replace "i386_frame_p". (i386_gdbarch_init): Set the frame unwind sniffers. * avr-tdep.c (avr_frame_sniffer): Replace "avr_frame_sniffer". (avr_gdbarch_init): Set the frame unwind sniffers. * alpha-tdep.c (alpha_sigtramp_frame_sniffer): Replace "alpha_sigtramp_frame_p" (alpha_heuristic_frame_sniffer): Replace "alpha_heuristic_frame_p". (alpha_gdbarch_init): Set the frame unwind sniffers. (alpha_dwarf2_init_abi): Ditto. * alpha-mdebug-tdep.c (alpha_mdebug_frame_sniffer): Replace "alpha_debug_frame_p". (alpha_mdebug_frame_base_sniffer): Replace "alpha_mdebug_frame_base_p". (alpha_mdebug_init_abi): Set the frame unwind sniffers. * d10v-tdep.c (d10v_frame_sniffer): Replace "d10v_frame_p". (d10v_gdbarch_init): Set the frame unwind sniffer. * dwarf2-frame.c (dwarf2_frame_sniffer): Replace "dwarf2_frame_p". (dwarf2_frame_base_sniffer): Replace "dwarf2_frame_base_p". * dwarf2-frame.h (dwarf2_frame_sniffer): Replace "dwarf2_frame_p". (dwarf2_frame_base_sniffer): Replace "dwarf2_frame_base_p". * dummy-frame.c (dummy_frame_sniffer): Replace "dummy_frame_p". * dummy-frame.h (dummy_frame_sniffer): Replace "dummy_frame_p".
2003-07-11 * Makefile.in (dwarf2-frame.o): Add complaints_h.Richard Henderson1-17/+129
* dwarf2-frame.c: Include complaints.h. (decode_frame_entry_1): Rename from decode_frame_entry; tidy variable initialization; return NULL on error. (decode_frame_entry): New.
2003-06-082003-06-08 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+1
* acinclude.m4 (gcc_AC_CHECK_DECL, (gcc_AC_CHECK_DECL): Stolen from GCC's acinclude.m4. * configure.in: Check for getopt's delcaration. * aclocal.m4, config.in, configure: Re-generate. * main.c (error_init): Delete declaration. * defs.h (error_init): Declare. * rs6000-tdep.c (rs6000_fetch_pointer_argument): Make static. (rs6000_convert_from_func_ptr_addr): Make static. (_initialize_rs6000_tdep): Add declaration. * cli/cli-cmds.c (dont_repeat): Delete declaration. (show_commands, set_verbose, show_history): Delete declaration. * top.h (set_verbose): Add declaration. (show_history, set_history, show_commands): Add declaration. (do_restore_instream_cleanup): Add declaration. * objc-lang.c (specialcmp): Make static. (print_object_command): Make static. (find_objc_msgsend): Make static. (find_objc_msgcall_submethod_helper): Make static. (find_objc_msgcall_submethod): Make static. (_initialize_objc_language): Add declaration. (find_implementation_from_class): Make static. (find_implementation): Make static. * objc-exp.y (yylex): Delete lookup_struct_typedef declaration. * objc-lang.h (lookup_struct_typedef): Add declaration. * cli/cli-interp.c (_initialize_cli_interp): Add declaration. * cli/cli-script.c (clear_hook_in_cleanup): Make static. (do_restore_user_call_depth): Make static. (do_restore_instream_cleanup): Delete declaration. (dont_repeat): Delete declaration. * cli/cli-decode.c (add_abbrev_cmd): Delete function. * cli/cli-dump.c (_initialize_cli_dump): Add declaration. * reggroups.c (_initialize_reggroup): Add declaration. * cp-support.c (_initialize_cp_support): Add declaration. * cp-abi.c (_initialize_cp_abi): Add declaration. * hpacc-abi.c (_initialize_hpacc_abi): Add declaration. * gnu-v3-abi.c (gnuv3_baseclass_offset): Make static. (_initialize_gnu_v3_abi): Add declaration. * gnu-v2-abi.c (gnuv2_value_rtti_type): Make static. (_initialize_gnu_v2_abi): Add declaration. * frame-base.c (_initialize_frame_base): Add declaration. * doublest.c (floatformat_from_length): Make static. * frame-unwind.c (_initialize_frame_unwind): Add declaration. * frame.c (create_sentinel_frame): Make static. (_initialize_frame): Add declaration. * top.c (do_catch_errors): Make static. (gdb_rl_operate_and_get_next_completion): Make static. * typeprint.c: Include "typeprint.h". * sentinel-frame.c (sentinel_frame_prev_register): Make static. (sentinel_frame_this_id): Make static. * p-valprint.c (_initialize_pascal_valprint): Add declaration. * ui-out.c (make_cleanup_ui_out_begin_end): Delete function. * dwarf2-frame.c (dwarf2_frame_cache): Make static. * p-exp.y (push_current_type, pop_current_type): ISO C declaration. * dwarf2expr.h (dwarf_expr_context): ISO C declaration. * maint.c (maintenance_print_architecture): Make static. * signals/signals.c (_initialize_signals): Add declaration. * std-regs.c (_initialize_frame_reg): Add declaration. * jv-exp.y (push_variable): ISO C definition. (push_qualified_expression_name): Ditto. * memattr.c (_initialize_mem): Add declaration. * remote.c (remote_check_watch_resources): Make static. (remote_stopped_by_watchpoint): Make static. (remote_stopped_data_address): Make static. * d10v-tdep.c (nr_dmap_regs): Make static. (a0_regnum): Make static. (d10v_frame_unwind_cache): Make static. (d10v_frame_p): Make static. * osabi.c (show_osabi): Make static. (_initialize_gdb_osabi): Add extern declaration. * gdbtypes.c (make_qualified_type): Make static. (safe_parse_type): Make static. * macrocmd.c (_initialize_macrocmd): Add extern declaration. * macrotab.c (macro_bcache_free): Make static. * interps.c (interp_set_quiet): Make static. (interpreter_exec_cmd): Make static. * stack.h (select_frame_command): New file. * stack.c: Include "stack.h". (select_frame_command_wrapper): Delete function. (select_frame_command): Make global. * infcall.c: Include "infcall.h". * linespec.c: Include "linespec.h". * symfile.c (sections_overlap): Make static. * cp-support.h (cp_initialize_namespace): ISO C declaration. * charset.c (_initialize_charset): Add missing prototype. * regcache.c (init_legacy_regcache_descr): Make static. (do_regcache_xfree): Make static. (regcache_xfer_part): Make static. (_initialize_regcache): Add missing prototype. * breakpoint.c (parse_breakpoint_sals): Make static. (breakpoint_sals_to_pc): Make static. * interps.h (clear_interpreter_hooks): ISO C declaration. * Makefile.in (stack_h): Define. (stack.o, typeprint.o, mi-main.o): Update dependencies. (mi-cmd-stack.o, infcall.o, linespec.o): Update dependencies. Index: mi/ChangeLog 2003-06-08 Andrew Cagney <cagney@redhat.com> * mi-parse.c (_initialize_mi_parse): Delete function. * mi-main.c: Include "mi-main.h". * mi-interp.c (_initialize_mi_interp): Add declaration. * mi-cmd-stack.c: Include "stack.h". (select_frame_command_wrapper): Delete extern declaration. (mi_cmd_stack_select_frame): Replace select_frame_command_wrapper with select_frame_command.
2003-06-072003-06-07 Andrew Cagney <cagney@redhat.com>Andrew Cagney1-1/+33
* dwarf2-frame.c (dwarf2_frame_cache): Add comments on PC_REGNUM. Assert that PC_REGNUM is valid. (dwarf2_frame_prev_register): Add comments on SP_REGNUM.
2003-06-04* dwarf2-frame.c (struct comp_unit): Add member `dbase'.Mark Kettenis1-0/+17
(read_encoded_value): Handle DW_EH_PE_datarel encoding. (dwarf2_build_frame_info): Set base for DW_EH_PE_datarel encodings when handling .eh_frame sections.