(tui_suspend): Remember in which TUI mode we are.
(_initialize_tui_interp): Use the tui interpreter even when no
other interpreter was set and define in which TUI mode to start.
* h8300-tdep.c (h8300_extract_return_value): Teach it how to
handle 8-bit returns (long long).
(h8300h_extract_return_value): Ditto.
(h8300_gdbarch_init): Long long is 8 bytes, char is unsigned.
* gdbarch.c Include "gdb_obstack.h".
(struct gdbarch): Add an "obstack".
(alloc_gdbarch_data): Allocate the gdbarch data using
GDBARCH_OBSTACK_CALLOC.
(free_gdbarch_data): Delete function.
(gdbarch_obstack_zalloc): New function.
(gdbarch_free): Free the obstack, do not call free_gdbarch_data.
Assert that the architecture is not initialized.
(gdbarch_alloc): Allocate an obstack, allocate the architecture
vector from the obstack.
(alloc_gdbarch_data, init_gdbarch_swap): Allocate memory using the
architecture obstack.
(GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Define.
(set_gdbarch_data): Assert that the data is not initialized.
(struct gdbarch_data): Delete member "free".
(register_gdbarch_data): Do not initialize "free".
* gdbarch.h, gdbarch.c: Re-generate.
* gdb.threads/tls.c : New file.
* gdb.threads/tls.exp : New file.
* gdb.threads/tls-main.c : New file.
* gdb.threads/tls-shared.c : New file.
* gdb.threads/tls-shared.exp : New file.
* findvar.c (read_var_value): Remove case for thread local storage
variables. It is now entirely handled by the dwarf2 location
expression code.
* printcmd.c (address_info): Ditto.
* symtab.h (address_class): Remove LOC_THREAD_LOCAL_STATIC
enumeration value.
(struct symbol): Remove objfile field, which was used by
LOC_THREAD_LOCAL_STATIC only.
* dwarf2read.c (decode_locdesc): Remove is_thread_local variable.
* dwarf2loc.h (struct dwarf2_loclist_baton): Add comment about
usage of objfile pointer.
* dwarf2loc.c (locexpr_describe_location): Add case to handle
thread local variables.
Add include of objfiles.h.
* dwarf2expr.c (execute_stack_op): Add comments about thread local
storage variables.
* Makefile.in (dwarf2loc.o): Update dependencies.
regcache_cooked_read_unsigned instead of read_register.
(m68hc11_saved_pc_after_call): Likewise.
(m68hc11_pseudo_register_write): Use regcache_cooked_write_unsigned
instead of write_register.
(m68hc11_register_type): New function.
(m68hc11_register_virtual_type): Remove.
(m68hc11_store_return_value): Convert to use the regcache.
(m68hc11_extract_struct_value_address): Likewise.
(m68hc11_gdbarch_init): Remove deprecated ops for register to use
m68hc11_register_type; undeprecate store_return_value and
extract_struct_value_address.
* gdbarch.sh (DWARF2_BUILD_FRAME_INFO): Delete method.
* gdbarch.h, gdbarch.c: Re-generate.
* i386-tdep.c (i386_gdbarch_init): Do not set
DWARF2_BUILD_FRAME_INFO.
* elfread.c (elf_symfile_read): Call dwarf2_build_frame_info
unconditionally.
* alpha-tdep.c (alpha_dwarf2_init_abi): Do not set
DWARF2_BUILD_FRAME_INFO.
* Makefile.in (x86-64-linux-nat.o): Update dependencies.
* x86-64-linux-nat.c (ps_get_thread_area): New function. Add
include of asm/prctl.h, asm/ptrace.h, and gdb_proc_service.h.
(avr_frame_unwind_cache): Don't unwind FP for main.
Update a comment.
Save the computed prev_sp.
(avr_saved_regs_unwinder): Remove function.
(avr_frame_prev_register): Use PC unwind logic from
avr_saved_regs_unwinder, otherwise use trad_frame_prev_register.
should go thru sh_dsp_register_sim_regno, else the dsp regs
will not get the right values.
* sh-tdep.c (sh_sh4_register_convert_to_virtual): Substitute call to
deprecated_store_floating by call to store_typed_floating.
(sh_sh4_register_convert_to_raw): Substitute call to
deprecated_extract_floating by call to extract_typed_floating.
* sh-tdep.c (sh_gdbarch_init): Set double to 4 byte on sh2e and sh3e.
* sh-tdep.c: Substitute calls to REGISTER_RAW_SIZE by calls to
register_size and calls to REGISTER_VIRTUAL_TYPE by calls to
gdbarch_register_type in 32 bit code throughout. Avoid current_gdbarch
as possible.
(do_pseudo_register): Remove.
(sh_push_dummy_code): New function.
(sh64_store_struct_return): Rename from sh_store_struct_return.
Only called for sh64 now.
(sh_extract_struct_value_address): Regcache'ify.
(sh_push_dummy_call): Rename from sh_push_arguments. Regcache'ify
and accomodate new tasks.
(sh64_push_return_address): Rename from sh_push_return_address.
Only called for sh64 now.
(sh_default_extract_return_value): Rename from sh_extract_return_value.
Regcache'ify.
(sh3e_sh4_extract_return_value): Regcache'ify.
(sh_default_store_return_value): Ditto.
(sh3e_sh4_store_return_value): Ditto.
(sh_default_register_byte): Remove.
(sh_sh4_register_byte): Remove.
(sh_default_register_raw_size): Remove.
(sh_sh4_register_raw_size): Remove.
(sh_register_virtual_size): Remove.
(sh_sh3e_register_virtual_type): Remove.
(sh_sh3e_register_type): New function.
(sh_sh4_register_virtual_type): Remove.
(sh_sh4_register_type): New function.
(sh_default_register_virtual_type): Remove.
(sh_default_register_type): New function.
(do_fv_register_info): Add parameters to accomodate call from
sh_print_registers_info.
(do_dr_register_info): Ditto.
(sh_print_pseudo_register): Rename from sh_do_pseudo_register.
Add parameters to accomodate call from sh_print_registers_info.
(sh_do_fp_register): Ditto.
(sh64_do_pseudo_register): Call do_dr_register_info,
do_fv_register_info and sh_do_fp_register with default parameters.
(sh_do_register): Add parameters to accomodate call from
sh_print_registers_info.
(sh_print_register): Ditto.
(sh_print_registers_info): Rename from sh_do_registers_info.
Add parameters to be used as gdbarch_print_registers_info
implementation. Accomodate removed do_pseudo_register function
pointer.
(sh_compact_do_registers_info): Accomodate removed do_pseudo_register
function pointer. Call sh_print_register with default parameters.
(sh64_do_registers_info): Call sh_print_registers_info instead of
sh_do_registers_info.
(sh_gdbarch_init): Rearrange to cleanup and to allow easier
detection of deprecated vs. non-deprecated functionality.
Rename sh_call_dummy_words to sh64_call_dummy_words. Remove
function pointer assignments by direct function calls.
* frame.c (get_prev_frame): Move disabled inside_entry_func to
before code inhibiting repeated unwind attempts. Add to
commentary on that test's problems.
* blockframe.c (inside_main_func): Look for "main" in the minimal
symbol table.
* d10v-tdep.c (d10v_frame_this_id): Delete check that frames are
identical.
Index: testsuite/ChangeLog
2003-07-15 Andrew Cagney <cagney@redhat.com>
* gdb.asm/asm-source.exp: Do not allow "start" in the backtrace.
* complaints.c (struct explanation): Define.
(struct complaints): Change type of "explanation" to "struct
explanation".
(symfile_explanations): Convert to a "struct explanation" table.
(vcomplaint): Update.