Tom Tromey
79a45b7d67
gdb
...
* varobj.c (value_get_print_value): Include valprint.h.
(value_get_print_value): Use get_formatted_print_options.
* value.h (struct value_print_options): Declare.
(value_print, val_print, common_val_print, val_print_string):
Update.
* value.c: Include valprint.h.
(show_values): Use get_user_print_options.
(show_convenience): Likewise.
* valprint.h (prettyprint_arrays, prettyprint_structs): Don't
declare.
(struct value_print_options): New type.
(vtblprint, unionprint, addressprint, objectprint, print_max,
inspect_it, repeat_count_threshold, output_format,
stop_print_at_null): Don't declare.
(user_print_options, get_user_print_options,
get_raw_print_options, get_formatted_print_options): Declare.
(print_array_indexes_p): Don't declare.
(maybe_print_array_index, val_print_array_elements): Update.
* valprint.c (print_max): Remove.
(user_print_options): New global.
(get_user_print_options, get_raw_print_options,
get_formatted_print_options): New functions.
(print_array_indexes, repeat_count_threshold, stop_print_at_null,
prettyprint_structs, prettyprint_arrays, unionprint,
addressprint): Remove.
(val_print): Remove format, deref_ref, pretty arguments; add
options. Update.
(common_val_print): Likewise.
(print_array_indexes_p): Remove.
(maybe_print_array_index): Remove format, pretty arguments; add
options. Update.
(val_print_array_elements): Remove format, deref_ref, pretty
arguments; add options. Update.
(val_print_string): Add options argument. Update.
(_initialize_valprint): Use user_print_options.
(output_format): Remove.
(set_output_radix_1): Use user_print_options.
* typeprint.c: Include valprint.h.
(objectprint): Don't declare.
(whatis_exp): Use get_user_print_options.
* tui/tui-regs.c: Include valprint.h.
(tui_register_format): Use get_formatted_print_options.
* tracepoint.c: Include valprint.h.
(addressprint): Don't declare.
(trace_mention): Use get_user_print_options.
(tracepoints_info): Likewise.
* stack.c (print_frame_args): Use get_raw_print_options.
(print_frame_info): Use get_user_print_options.
(print_frame): Likewise.
* sh64-tdep.c: Include valprint.h
(sh64_do_register): Use get_formatted_print_options.
* scm-valprint.c (scm_inferior_print): Remove format, deref_ref,
pretty arguments; add options.
(scm_scmlist_print): Likewise. Update.
(scm_scmval_print): Likewise.
(scm_val_print): Likewise.
(scm_value_print): Remove format, pretty arguments; add options.
Update.
* scm-lang.h (scm_value_print, scm_val_print, scm_scmval_print):
Update.
* scm-lang.c (scm_printstr): Add options argument.
* python/python-value.c: Include valprint.h.
(valpy_str): Use get_user_print_options.
* printcmd.c: Include valprint.h.
(addressprint): Don't declare.
(inspect_it): Remove.
(print_formatted): Remove format option; add options. Update.
(print_scalar_formatted): Likewise.
(print_address_demangle): Use get_user_print_options.
(do_examine): Use get_formatted_print_options.
(print_command_1): Likewise.
(output_command): Use get_formatted_print_options.
(do_one_display): Likewise.
(print_variable_value): Use get_user_print_options.
* p-valprint.c (pascal_val_print): Remove format, deref_ref,
pretty arguments; add options. Update.
(pascal_value_print): Remove format, pretty arguments; add
options. Update.
(vtblprint, objectprint): Don't declare.
(pascal_static_field_print): Remove.
(pascal_object_print_value_fields): Remove format, pretty
arguments; add options. Update.
(pascal_object_print_static_field): Likewise.
(_initialize_pascal_valprint): Use user_print_options. Update.
* p-lang.h (pascal_val_print, pascal_value_print,
pascal_printstr, pascal_object_print_value_fields): Update.
(vtblprint, static_field_print): Don't declare.
* p-lang.c (pascal_printstr): Add options argument. Update.
* objc-lang.c (objc_printstr): Add options argument. Update.
* mt-tdep.c: Include valprint.h.
(mt_registers_info): Use get_raw_print_options.
* mips-tdep.c: Include valprint.h.
(mips_print_fp_register): Use get_formatted_print_options.
(mips_print_register): Likewise.
* mi/mi-main.c: Include valprint.h.
(get_register): Use get_user_print_options.
(mi_cmd_data_evaluate_expression): Likewise.
(mi_cmd_data_read_memory): Use get_formatted_print_options.
* mi/mi-cmd-stack.c: Include valprint.h.
(list_args_or_locals): Use get_raw_print_options.
* m2-valprint.c (print_function_pointer_address): Add addressprint
argument.
(m2_print_long_set): Remove format, pretty arguments.
(m2_print_unbounded_array): Remove format, deref_ref, pretty
arguments; add options. Update.
(print_unpacked_pointer): Remove format argument; add options.
Now static. Update.
(print_variable_at_address): Remove format, deref_ref, pretty
arguments; add options. Update.
(m2_print_array_contents): Likewise.
(m2_val_print): Likewise.
* m2-lang.h (m2_val_print): Update.
* m2-lang.c (m2_printstr): Add options argument. Update.
* language.h (struct value_print_options): Declare.
(struct language_defn) <la_printstr>: Add options argument.
<la_val_print>: Remove format, deref_ref, pretty argument; add
options.
<la_value_print>: Remove format, pretty arguments; add options.
<la_print_array_index>: Likewise.
(LA_VAL_PRINT, LA_VALUE_PRINT, LA_PRINT_STRING,
LA_PRINT_ARRAY_INDEX): Update.
(default_print_array_index): Update.
* language.c (default_print_array_index): Remove format, pretty
arguments; add options. Update.
(unk_lang_printstr): Add options argument.
(unk_lang_val_print): Remove format, deref_ref, pretty arguments;
add options.
(unk_lang_value_print): Remove format, pretty arguments; add
options.
* jv-valprint.c (java_value_print): Remove format, pretty
arguments; add options. Update.
(java_print_value_fields): Likewise.
(java_val_print): Remove format, deref_ref, pretty arguments; add
options. Update.
* jv-lang.h (java_val_print, java_value_print): Declare.
* infcmd.c: Include valprint.h.
(print_return_value): Use get_raw_print_options.
(default_print_registers_info): Use get_user_print_options,
get_formatted_print_options.
(registers_info): Use get_formatted_print_options.
* gdbtypes.h (struct value_print_options): Declare.
(print_scalar_formatted): Update.
* f-valprint.c (f77_print_array_1): Remove format, deref_ref,
pretty arguments; add options. Update.
(f77_print_array): Likewise.
(f_val_print): Likewise.
* f-lang.h (f_val_print): Update.
* f-lang.c (f_printstr): Add options argument. Update.
(c_value_print): Update declaration.
* expprint.c: Include valprint.h.
(print_subexp_standard): Use get_raw_print_options,
get_user_print_options.
* eval.c: Include valprint.h.
(objectprint): Don't declare.
(evaluate_subexp_standard): Use get_user_print_options.
* cp-valprint.c (vtblprint, objectprint, static_field_print):
Remove.
(cp_print_value_fields): Remove format, pretty arguments; add
options. Update.
(cp_print_value): Likewise.
(cp_print_static_field): Likewise.
(_initialize_cp_valprint): Use user_print_options. Update.
* c-valprint.c (print_function_pointer_address): Add addressprint
argument.
(c_val_print): Remove format, deref_ref, pretty arguments; add
options. Update.
(c_value_print): Add options argument. Update.
* c-lang.h (c_val_print, c_value_print, c_printstr): Update.
(vtblprint, static_field_print): Don't declare.
(cp_print_value_fields): Update.
* c-lang.c (c_printstr): Add options argument. Update.
* breakpoint.c: Include valprint.h.
(addressprint): Don't declare.
(watchpoint_value_print): Use get_user_print_options.
(print_one_breakpoint_location): Likewise.
(breakpoint_1, print_it_catch_fork, print_it_catch_vfork, mention,
print_exception_catchpoint): Likewise.
* auxv.c (fprint_target_auxv): Don't declare addressprint. Use
get_user_print_options.
* ada-valprint.c (struct ada_val_print_args): Remove format,
deref_ref, and pretty; add options.
(print_optional_low_bound): Add options argument.
(val_print_packed_array_elements): Remove format and pretty
arguments; add options. Update.
(printstr): Add options argument. Update.
(ada_printstr): Likewise.
(ada_val_print): Remove format, deref_ref, pretty arguments; add
options argument. Update.
(ada_val_print_stub): Update.
(ada_val_print_array): Remove format, deref_ref, pretty arguments;
add options. Update.
(ada_val_print_1): Likewise.
(print_variant_part): Likewise.
(ada_value_print): Remove format, pretty arguments; add options.
Update.
(print_record): Likewise.
(print_field_values): Likewise.
* ada-lang.h (ada_val_print, ada_value_print, ada_printstr):
Update.
* ada-lang.c (ada_print_array_index): Add options argument; remove
format and pretty arguments.
(print_one_exception): Use get_user_print_options.
gdb/testsuite
* gdb.base/exprs.exp (test_expr): Add enum formatting tests.
2008-10-28 17:19:58 +00:00
Jan Kratochvil
5bc60cfb35
* mips-tdep.c (mips_n32n64_fp_arg_chunk_p): Update TYPE_FIELD_STATIC
...
removed before.
2008-10-21 19:34:44 +00:00
Daniel Jacobowitz
db5f024ecc
* mips-linux-tdep.c (mips_linux_in_dynsym_resolve_code): Update
...
comments.
(mips_linux_skip_resolver): Also use glibc_skip_solib_resolver.
(mips_linux_init_abi): Do not override skip_trampoline_code.
* configure.tgt (mips*-*-linux*): Add glibc-tdep.o.
* mips-tdep.c (mips32_scan_prologue): Stop scanning at branches.
(mips_stub_frame_sniffer): Use the stub frame sniffer for PIC stubs.
(mips_skip_mips16_trampoline_code): Rename from
mips_skip_trampoline_code.
(mips_skip_pic_trampoline_code, mips_skip_trampoline_code): New.
* infrun.c (handle_inferior_event): Do not pass zero to
in_solib_dynsym_resolve_code.
2008-10-02 15:48:06 +00:00
Tom Tromey
b887350fc5
* xcoffread.c (RECORD_MINIMAL_SYMBOL): Update.
...
(scan_xcoff_symtab): Update.
* mdebugread.c (record_minimal_symbol): Update.
(parse_partial_symbols): Update.
* elfread.c (record_minimal_symbol): Update.
* dbxread.c (record_minimal_symbol): Update.
* coffread.c (record_minimal_symbol): Update.
* sh64-tdep.c (MSYMBOL_IS_SPECIAL): Redefine.
(sh64_elf_make_msymbol_special): Update.
* mips-tdep.c (mips_elf_make_msymbol_special): Use
MSYMBOL_TARGET_FLAG_1.
(mips_elf_make_msymbol_special): Likewise.
(msymbol_is_special): Likewise.
* minsyms.c (prim_record_minimal_symbol_and_info): Update.
(install_minimal_symbols): Likewise.
(prim_record_minimal_symbol): Update.
(prim_record_minimal_symbol_and_info): Remove 'info' argument.
* m68hc11-tdep.c (MSYMBOL_SET_RTC): Redefine.
(MSYMBOL_SET_RTI): Redefine.
(MSYMBOL_IS_RTC): Redefine.
(MSYMBOL_IS_RTI): Redefine.
* arm-tdep.c (MSYMBOL_SET_SPECIAL): Redefine.
(MSYMBOL_IS_SPECIAL): Redefine.
* symtab.h (struct minimal_symbol) <info>: Remove.
<target_flag_1, target_flag_2>: New fields.
(MSYMBOL_INFO): Remove.
(MSYMBOL_TARGET_FLAG_1): New macro.
(MSYMBOL_TARGET_FLAG_2): Likewise.
(prim_record_minimal_symbol_and_info): Update.
2008-10-01 16:41:27 +00:00
Pedro Alves
d6b48e9c8b
Make the stop_soon global be per-inferior instead.
...
* infcmd.c (attach_command_post_wait): Adjust.
(attach_command): Likewise.
* inferior.h (stop_soon): Delete.
(struct inferior): Add stop_soon member.
* infrun.c (stop_soon): Delete.
(clear_proceed_status, start_remote)
(fetch_inferior_event, handle_inferior_event): Adjust.
(signal_stop_state): Don't check stop_soon here. Check in callers
instead.
(save_inferior_status, restore_inferior_status): Adjust.
* linux-nat.c (linux_nat_resume, linux_nat_wait): Always pass
signals to common code if starting up the inferior.
* inferior.h (struct inferior_info): Added stop_soon member.
* inferior.c (add_inferior) Clear stop_soon.
* mips-tdep.c (heuristic_proc_start): Adjust.
* nto-procfs.c (procfs_create_inferior): Adjust.
* solib-irix.c (irix_solib_create_inferior_hook): Adjust.
* solib-osf.c (osf_solib_create_inferior_hook): Adjust.
* solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
* solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
* win32-nat.c (do_initial_win32_stuff): Adjust.
* alpha-tdep.c (alpha_heuristic_proc_start): Adjust.
2008-09-22 15:20:08 +00:00
Ulrich Weigand
0dfff4cba7
* alpha-tdep.c (alpha_register_type): Use builtin_type (gdbarch)
...
instead of builtin_type_ macros.
* amd64-tdep.c (amd64_register_type): Likewise.
(amd64_get_longjmp_target): Likewise.
* arm-tdep.c (arm_register_type): Likewise.
* avr-tdep.c (avr_register_type): Likewise.
* cris-tdep.c (cris_register_type, crisv32_register_type): Likewise.
* frv-tdep.c (frv_register_type): Likewise.
* h8300-tdep.c (h8300_register_type): Likewise.
* hppa-tdep.c (hppa32_convert_from_func_ptr_addr,
hppa_skip_trampoline_code): Likewise.
* i386-tdep.c (i386_register_type): Likewise.
(i386_unwind_pc, i386_sse_type): Likewise.
* ia64-tdep.c (ia64_register_type): Likewise.
* m32r-tdep.c (m32r_register_type): Likewise.
* m68k-tdep.c (m68k_register_type, m68k_unwind_pc): Likewise.
* m88k-tdep.c (m88k_register_type): Likewise.
* mep-tdep.c (mep_register_type): Likewise.
* mips-tdep.c (mips_pseudo_register_type): Likewise.
* mn10300-tdep.c (mn10300_register_type): Likewise.
* mt-tdep.c (mt_copro_register_type): Likewise.
* rs6000-tdep.c (rs6000_builtin_type_vec64): Likewise.
(rs6000_convert_register_p, rs6000_register_to_value,
rs6000_value_to_register): Likewise.
* s390-tdep.c (s390_register_type): Likewise.
* sh64-tdep.c (sh64_register_type): Likewise.
(sh64_build_float_register_type, sh64_do_fp_register): Likewise.
* sh-tdep.c (sh_sh2a_register_type, sh_sh3e_register_type,
sh_sh4_build_float_register_type, sh_sh4_register_type,
sh_default_register_type): Likewise.
* sparc64-tdep.c (sparc64_register_type): Likewise.
* sparc-tdep.c (sparc32_register_type): Likewise.
* spu-tdep.c (spu_builtin_type_vec128, spu_register_type): Likewise.
* v850-tdep.c (v850_register_type): Likewise.
* vax-tdep.c (vax_register_type): Likewise.
* xtensa-tdep.c (xtensa_register_type, xtensa_unwind_pc,
xtensa_push_dummy_call): Likewise.
* std-regs.c (value_of_builtin_frame_fp_reg,
value_of_builtin_frame_pc_reg): Likewise.
* target-descriptions.c (tdesc_register_type): Likewise.
2008-09-11 14:23:15 +00:00
Ulrich Weigand
bb48619059
* mips-tdep.c (deprecated_mips_set_processor_regs_hack): Use
...
regcache architecture instead of current_gdbarch.
2008-09-05 11:46:12 +00:00
Ulrich Weigand
9dae60cc03
* m68hc11-tdep.c (gdb_print_insn_m68hc11): Use info->arch
...
instead of current_gdbarch.
* sh64-tdep.c (gdb_print_insn_sh64): Remove.
(sh64_gdbarch_init): Install print_insn_sh64 directly.
* sh-tdep.c (gdb_print_insn_sh): Remove.
(sh_gdbarch_init): Install print_insn_sh directly.
* mips-tdep.c (gdb_print_insn_mips): Do not check mips_abi
from current_gdbarch.
(gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): New functions.
(mips_gdbarch_init): Install them instead of gdb_print_insn_mips
depending on mips_abi.
2008-09-05 11:43:10 +00:00
Ulrich Weigand
24568a2cd9
* gdbarch.sh (addr_bits_remove): Change type to 'm'.
...
(smash_text_address): Likewise.
* gdbarch.c, gdbarch.h: Regenerate.
* arch-utils.c (core_addr_identity): Add gdbarch parameter.
* arch-utils.h (core_addr_identity): Likewise.
* arm-tdep.c (arm_addr_bits_remove): Likewise.
(arm_smash_text_address): Likewise.
* hppa-tdep.c (hppa_smash_text_address): Likewise.
* m88k-tdep.c (m88k_addr_bits_remove): Likewise.
* s390-tdep.c (s390_addr_bits_remove): Likewise.
* mips-tdep.c (mips_addr_bits_remove): Add gdbarch parameter.
Use it instead of current_gdbarch.
* arm-tdep.c (arm_prologue_prev_register, arm_unwind_pc,
arm_dwarf2_prev_register): Update calls.
* m88k-tdep.c (m88k_unwind_pc): Update call.
2008-09-05 11:42:32 +00:00
Ulrich Weigand
1cf3db46a6
* gdbarch.sh (target_gdbarch): New global variable.
...
(deprecated_current_gdbarch_select_hack): Set it.
* gdbarch.c, gdbarch.h: Regenerate.
* arch-utils.c (gdbarch_update_p): Use target_gdbarch instead
of current_gdbarch.
* target-descriptions.c (target_find_description): Likewise.
* arm-tdep.c (arm_update_current_architecture): Likewise.
(show_fp_model, arm_show_abi, arm_show_fallback_mode,
arm_show_force_mode): Likewise.
* mips-tdep.c (show_mask_address, show_mipsfpu_command,
show_mips_abi): Likewise.
* mep-tdep.c (me_module_register_set, current_me_module): Likewise.
* target.c (target_translate_tls_address): Use target_gdbarch
instead of current_gdbarch.
* remote.c (struct packet_reg): Likewise.
(get_remote_arch_state, packet_reg_from_regnum,
packet_reg_from_pnum, remote_check_symbols, remote_wait,
remote_address_masked, remote_insert_breakpoint,
remote_insert_hw_breakpoint, remote_read_description): Likewise.
* remote-m32r-sdi.c (m32r_resume, m32r_wait): Likewise.
* remote-mips.c (mips_open, mips_common_breakpoint): Likewise.
* cris-tdep.c (cris_can_use_hardware_watchpoint): Likewise.
* solib.c (solib_open, solib_map_sections, solib_read_symbols,
solib_add, info_sharedlibrary_command, solib_address,
solib_create_inferior_hook, in_solib_dynsym_resolve_code,
solib_global_lookup): Likewise.
* solib-frv.c (enable_break2, frv_relocate_main_executable): Likewise.
* solib-irix.c (irix_current_sos, irix_open_symbol_file_object):
Likewise.
* solib-sunos.c (sunos_solib_create_inferior_hook): Likewise.
* solib-svr4.c (exec_entry_point, enable_break, svr4_free_so,
set_solib_svr4_fetch_link_map_offsets, svr4_fetch_link_map_offsets):
Likewise.
* nto-tdep.c (nto_find_and_open_solib, nto_init_solib_absolute_prefix,
nto_truncate_ptr): Likewise.
* mips-linux-tdep.c (mips_linux_in_dynsym_stub): Likewise.
2008-08-26 17:21:29 +00:00
Daniel Jacobowitz
e38d4e1aae
* mips-linux-tdep.c (mips_linux_syscall_next_pc): New function.
...
(mips_linux_init_abi): Set tdep->syscall_next_pc.
* mips-tdep.c (enum mips_fpu_type, struct gdbarch_tdep): Move to
mips-tdep.h.
(mips32_next_pc): Handle the syscall instruction.
* mips-tdep.h (enum mips_fpu_type, struct gdbarch_tdep): New,
from mips-tdep.c. Add syscall_next_pc to gdbarch_tdep.
2008-07-27 20:52:42 +00:00
Joseph Myers
5b68030fbd
* mips-tdep.c (mips_n32n64_push_dummy_call): Handle passing
...
128-bit long doubles in even-odd pairs of FPRs. Do not
right-align float arguments for big-endian.
(mips_n32n64_return_value): Apply return value convention for
structs containing one or two floating-point values to soft-float
as well as hard-float. Handle 128-bit long doubles in such
structs.
(mips_o32_push_dummy_call): Only skip one integer register for a
float argument passed in an FPR.
2008-07-26 01:19:34 +00:00
Markus Deuling
74ed0bb414
* mips-tdep.c (fp_register_arg_p): Add gdbarch as paramter.
...
(mips_n32n64_push_dummy_call, mips_o64_return_value)
(mips_eabi_push_dummy_call): Update call to fp_register_arg_p.
(MIPS_FPU_TYPE): Add gdbarch as parameter and replace current_gdbarch.
(fp_register_arg_p, mips_dump_tdep, show_mipsfpu_command)
(mips_n32n64_fp_arg_chunk_p): Update caller.
(mips_n32n64_fp_arg_chunk_p): Add gdbarch as paramter.
(mips_n32n64_push_dummy_call): Update caller.
(MIPS_LAST_ARG_REGNUM): Add gdbarch as parameter and replace
current_gdbarch.
(mips_eabi_push_dummy_call, mips_n32n64_push_dummy_call)
(mips_o32_push_dummy_call, mips_o64_push_dummy_call): Update caller.
(MIPS_LAST_FP_ARG_REGNUM): Add gdbarch as parameter and replace
current_gdbarch.
(mips_eabi_push_dummy_call, mips_o32_push_dummy_call)
(mips_o64_push_dummy_call): Update caller.
(MIPS_EABI): Add gdbarch as parameter and replace current_gdbarch.
(fp_register_arg_p, mips_dump_tdep): Update caller.
(set_reg_offset): Add gdbarch as parameter and replace current_gdbarch.
(mips16_scan_prologue, mips32_scan_prologue): Update caller.
(reset_saved_regs): Make static. Add gdbarch as parameter. Replace
current_gdbarch.
(mips32_scan_prologue): Update caller.
(heuristic_proc_start): Add gdbarch as parameter. Replace
current_gdbarch.
(mips_insn16_frame_cache, mips_insn32_frame_cache): Update caller.
* mipsnbsd-nat.c (mipsnbsd_fetch_inferior_registers)
(mipsnbsd_store_inferior_registers): Use get_regcache_arch to get at
the current architecture. Update call to getregs_supplies.
(getregs_supplies): Add gdbarch as parameter and replace
current_gdbarch.
* mipsnbsd-tdep.c (mipsnbsd_get_longjmp_target): Use get_frame_arch to
get at the current architecture. Update call to NBSD_MIPS_JB_OFFSET and
NBSD_MIPS_JB_ELEMENT_SIZE.
(NBSD_MIPS_JB_ELEMENT_SIZE, NBSD_MIPS_JB_OFFSET): Add gdbarch and
replace current_gdbarch.
* remote-mips.c (mips_map_regno): Add gdbarch as parameter and replace
current_gdbarch.
(mips_fetch_registers, mips_store_registers): Update call
to mips_map_regno.
(mips_load): Use get_regcache_arch to get at the current_architecture
and replace current_gdbarch.
2008-07-14 11:25:12 +00:00
Joseph Myers
609ba7801a
2008-06-03 Michael Snyder <msnyder@redhat.com>
...
Joseph Myers <joseph@codesourcery.com>
* mips-tdep.c (mips_eabi_return_value): Replace stub that always
returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
2008-06-03 10:53:34 +00:00
Daniel Jacobowitz
ba2b1c567f
* gdbarch.sh: Delete dwarf_reg_to_regnum.
...
* gdbarch.c, gdbarch.h: Regenerated.
* amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
* gdbint.texinfo (Target Conditionals): Delete entry for
gdbarch_dwarf_reg_to_regnum.
2008-05-16 00:27:24 +00:00
Daniel Jacobowitz
b8a22b9440
* mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
...
for unwinder changes.
* mips-tdep.c: Likewise.
(mips_stub_frame_cache): Unwind the ABI stack pointer, not the
raw one.
2008-04-30 21:25:16 +00:00
Corinna Vinschen
c055b1010f
doc/ChangeLog:
...
--------------
* gdb.texinfo (Set SH Calling convention): New @item.
(Show SH Calling convention): Ditto.
ChangeLog:
----------
* NEWS: Add information on calling convention and new SH CLI options.
* sh-tdep.c (sh_cc_gcc): New static string.
(sh_cc_renesas): Ditto.
(sh_cc_enum): New static string array.
(sh_active_calling_convention): New static string pointer denoting
active user chosen ABI.
(sh_is_renesas_calling_convention): New function to return function
specific ABI, or user choice if necessary.
(sh_use_struct_convention): Rename first argument and turn around its
meaning. Check for renesas ABI and return accordingly.
(sh_use_struct_convention_nofpu): New function.
(sh_next_flt_argreg): Get function type as third parameter. Check
for renesas ABI and choose floating registers accordingly.
(sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
struct return slot accordingly.
(sh_push_dummy_call_nofpu): Ditto.
(sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
Evaluate ABI and give to sh_use_struct_convention_nofpu.
(sh_return_value_fpu): Evaluate ABI and give to
sh_use_struct_convention.
(show_sh_command): New function.
(set_sh_command): Ditto.
(_initialize_sh_tdep): Initialize `set/show sh calling-convention
CLI command.
* gdbarch.sh (return_value): Add func_type argument.
* gdbarch.c: Regenerate.
* gdbarch.h: Ditto.
* eval.c (evaluate_subexp_standard): Rename local variable value_type to
val_type so as not to collide with value_type function. Call
using_struct_return with additional function type argument.
* infcall.c (call_function_by_hand): Call using_struct_return and
gdbarch_return_value with additional function type argument.
* infcmd.c (print_return_value): Take addition func_type argument.
Call gdbarch_return_value with additional function type argument.
(finish_command_continuation): Call print_return_value with additional
function type argument.
(finish_command): Ditto.
* sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
additional function type argument.
* stack.c (return_command): Call using_struct_return and
gdbarch_return_value with additional function type argument.
* value.c (using_struct_return): Take additional function type argument.
* value.h (using_struct_return): Accommodate declaration.
* alpha-tdep.c (alpha_return_value): Add func_type argument.
* amd64-tdep.c (amd64_return_value): Ditto.
* arm-tdep.c (arm_return_value): Ditto.
* avr-tdep.c (avr_return_value): Ditto.
* cris-tdep.c (cris_return_value): Ditto.
* frv-tdep.c (frv_return_value): Ditto.
* h8300-tdep.c (h8300_return_value): Ditto.
(h8300h_return_value): Ditto.
* hppa-tdep.c (hppa32_return_value): Ditto.
(hppa64_return_value): Ditto.
* i386-tdep.c (i386_return_value): Ditto.
* ia64-tdep.c (ia64_return_value): Ditto.
* iq2000-tdep.c (iq2000_return_value): Ditto.
* m32c-tdep.c (m32c_return_value): Ditto.
* m32r-tdep.c (m32r_return_value): Ditto.
* m68hc11-tdep.c (m68hc11_return_value): Ditto.
* m68k-tdep.c (m68k_return_value): Ditto.
(m68k_svr4_return_value): Ditto.
* m88k-tdep.c (m88k_return_value): Ditto.
* mep-tdep.c (mep_return_value): Ditto.
* mips-tdep.c (mips_eabi_return_value): Ditto.
(mips_n32n64_return_value): Ditto.
(mips_o32_return_value): Ditto.
(mips_o64_return_value): Ditto.
* mn10300-tdep.c (mn10300_return_value): Ditto.
* mt-tdep.c (mt_return_value): Ditto.
* ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
* ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
(ppc_sysv_abi_broken_return_value): Ditto.
(ppc64_sysv_abi_return_value): Ditto.
* ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
(ppc_sysv_abi_broken_return_value): Ditto.
(ppc64_sysv_abi_return_value): Ditto.
* ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
* rs6000-tdep.c (rs6000_return_value): Ditto.
* s390-tdep.c (s390_return_value): Ditto.
* score-tdep.c (score_return_value): Ditto.
* sh-tdep.c (sh_return_value_nofpu): Ditto.
(sh_return_value_fpu): Ditto.
* sh64-tdep.c (sh64_return_value): Ditto.
* sparc-tdep.c (sparc32_return_value): Ditto.
* sparc64-tdep.c (sparc64_return_value): Ditto.
* spu-tdep.c (spu_return_value): Ditto.
* v850-tdep.c (v850_return_value): Ditto.
* vax-tdep.c (vax_return_value): Ditto.
* xstormy16-tdep.c (xstormy16_return_value): Ditto.
* xtensa-tdep.c (xtensa_return_value): Ditto.
* gdbtypes.h (struct type): Add calling_convention member.
* dwarf2read.c (read_subroutine_type): Add calling convention read
from DW_AT_calling_convention attribute to function type.
2008-04-22 11:03:42 +00:00
Kevin Buettner
7d1e6fb863
* mips-tdep.c (mips32_scan_prologue): Use the ABI register size
...
to decide whether to match instruction patterns using "sw" and "sd".
2008-03-15 00:00:48 +00:00
Daniel Jacobowitz
8defab1af7
* breakpoint.h (breakpoint_restore_shadows): New
...
declaration.
* breakpoint.c (breakpoint_restore_shadows): New.
(read_memory_nobpt): Delete.
* gdbcore.h (read_memory_nobpt): Delete declaration.
* target.c (memory_xfer_partial): Call
breakpoint_restore_shadows.
(restore_show_memory_breakpoints)
(make_show_memory_beakpoints_cleanup): New.
(show_memory_breakpoints): New.
* target.h (make_show_memory_beakpoints_cleanup): Declare.
* ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
Make sure we see memory breakpoints when checking if
breakpoint is still there.
* alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
2008-03-13 12:22:14 +00:00
Markus Deuling
40887e1a6e
* rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
...
from disassemble_info instead of gdbarch_byte_order.
* mips-tdep.c (gdb_print_insn_mips): Likewise.
* arm-tdep.c (gdb_print_insn_arm): Likewise.
2008-02-20 14:34:43 +00:00
Markus Deuling
6093d2eb3a
* gdbarch.sh (skip_prologue): Add gdbarch
...
as parameter.
* gdbarch.{c,h}: Regenerate.
* alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
* amd64-tdep.c (amd64_skip_prologue): Likewise.
* avr-tdep.c (avr_skip_prologue): Likewise.
* cris-tdep.c (cris_skip_prologue): Likewise.
* frv-tdep.c (frv_skip_prologue): Likewise.
* h8300-tdep.c (h8300_skip_prologue): Likewise.
* hppa-tdep.c (hppa_skip_prologue): Likewise.
* i386-tdep.c (i386_skip_prologue): Likewise.
* ia64-tdep.c (ia64_skip_prologue): Likewise.
* iq2000-tdep.c (iq2000_skip_prologue): Likewise.
* m32r-tdep.c (m32r_skip_prologue): Likewise.
* m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
* m68k-tdep.c (m68k_skip_prologue): Likewise.
* m88k-tdep.c (m88k_skip_prologue): Likewise.
* mep-tdep.c (mep_skip_prologue): Likewise.
* mips-tdep.c (mips_skip_prologue): Likewise.
* mn10300-tdep.c (mn10300_skip_prologue): Likewise.
* mt-tdep.c (mt_skip_prologue): Likewise.
* rs6000-tdep.c (rs6000_skip_prologue): Likewise.
* score-tdep.c (score_skip_prologue): Likewise.
* sh64-tdep.c (sh64_skip_prologue): Likewise.
* sh-tdep.c (sh_skip_prologue): Likewise.
* sparc64-tdep.c (sparc64_skip_prologue): Likewise.
* sparc-tdep.c (sparc32_skip_prologue): Likewise.
* spu-tdep.c (spu_skip_prologue): Likewise.
* v850-tdep.c (v850_skip_prologue): Likewise.
* vax-tdep.c (vax_skip_prologue): Likewise.
* xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
* xtensa-tdep.c (xtensa_skip_prologue): Likewise.
* arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
current_gdbarch by gdbarch.
* m32c-tdep.c (m32c_skip_prologue): Likewise.
* s390-tdep.c (s390_skip_prologue): Likewise.
2008-01-11 13:20:02 +00:00
Daniel Jacobowitz
9b254dd1ce
Updated copyright notices for most files.
2008-01-01 22:53:26 +00:00
Maciej W. Rozycki
5863b5d536
* mips-tdep.c (mips_n32n64_push_dummy_call): Sign-extend
...
integers and 32-bit pointers as required by the ABI.
2007-12-20 17:13:57 +00:00
Maciej W. Rozycki
c68cf8ad10
* mips-tdep.c (extended_offset): Fix a comment.
2007-12-07 15:07:12 +00:00
Markus Deuling
d3f73121db
* gdbarch.sh (stab_reg_to_regnum, dwarf_reg_to_regnum)
...
( dwarf2_reg_to_regnum, sdb_reg_to_regnum, ecoff_reg_to_regnum): Add
gdbarch as parameter.
* gdbarch.{c,h}: Regenerate.
* xtensa-tdep.c (xtensa_reg_to_regnum): Add gdbarch as parameter.
Replace current_gdbarch by gdbarch.
* s390-tdep.c (s390_dwarf_reg_to_regnum): Likewise.
* rs6000-tdep.c (rs6000_stab_reg_to_regnum)
(rs6000_dwarf2_reg_to_regnum): Likewise.
* mips-tdep.c (mips_stab_reg_to_regnum)
(mips_dwarf_dwarf2_ecoff_reg_to_regnum): Likewise.
* mep-tdep.c (mep_debug_reg_to_regnum): Likewise.
* m32c-tdep.c (m32c_debug_info_reg_to_regnum): Likewise.
* i386-tdep.c (i386_dbx_reg_to_regnum)
(i386_svr4_reg_to_regnum): Likewise
* h8300-tdep.c (h8300s_dbg_reg_to_regnum)
(h8300_dbg_reg_to_regnum): Likewise.
* amd64-tdep.c (amd64_dwarf_reg_to_regnum): Likewise.
* arch-utils.c (no_op_reg_to_regnum): Likewise.
* arch-utils.h (no_op_reg_to_regnum): Likewise.
* arm-tdep.c (arm_dwarf_reg_to_regnum): Likewise.
* cris-tdep.c (cris_dwarf2_reg_to_regnum): Likewise.
* hppa-tdep.c (hppa64_dwarf_reg_to_regnum): Likewise.
* ia64-tdep.c (ia64_dwarf_reg_to_regnum): Likewise.
* m68k-tdep.c (m68k_dwarf_reg_to_regnum): Likewise.
2007-12-06 16:33:00 +00:00
Maciej W. Rozycki
2207132da4
* mips-tdep.c (mips16_scan_prologue): Handle the MIPS16e SAVE
...
instruction.
2007-11-20 13:47:42 +00:00
Markus Deuling
e7faf93859
2007-11-19 Markus Deuling <deuling@de.ibm.com>
...
* gdbarch.sh (register_sim_regno): Add gdbarch as parameter.
* gdbarch.{c,h}: Regenerate.
* arch-utils.h (legacy_register_sim_regno): Add gdbarch as parameter.
* score-tdep.c (score_register_sim_regno): Likewise.
* sim-regno.h (one2one_register_sim_regno): Likewise.
* arch-utils.c (legacy_register_sim_regno): Add gdbarch as parameter.
Replace current_gdbarch by gdbarch.
* sh-tdep.c (sh_sh2a_register_sim_regno)
(sh_dsp_register_sim_regno): Likewise.
* rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
* mips-tdep.c (mips_register_sim_regno): Likewise.
* m32c-tdep.c (m32c_register_sim_regno): Likewise.
* frv-tdep.c (frv_register_sim_regno): Likewise.
* arm-tdep.c (arm_register_sim_regno): Likewise.
* remote-sim.c (one2one_register_sim_regno): Likewise.
2007-11-19 05:06:24 +00:00
Ulrich Weigand
6ca0852e7a
* mips-tdep.c (show_mipsfpu_command): Do not crash if called when
...
current architecture is not MIPS.
2007-11-17 00:57:41 +00:00
Markus Deuling
0abe36f50d
* gdbarch.sh (convert_register_p): Add gdbarch as parameter.
...
* ia64-tdep.c (ia64_convert_register_p): Likewise.
* i387-tdep.c (i387_convert_register_p): Likewise.
* i387-tdep.h (i387_convert_register_p): Likewise.
* alpha-tdep.c (alpha_convert_register_p): Likewise.
* gdbarch.{c,h}: Regenerate.
* rs6000-tdep.c (rs6000_convert_register_p): Add gdbarch as parameter.
Replace current_gdbarch by gdbarch.
* mips-tdep.c (mips_convert_register_p): Likewise.
* m68k-tdep.c (m68k_convert_register_p): Likewise.
* i386-tdep.c (i386_convert_register_p): Likewise.
2007-11-09 05:32:19 +00:00
Joseph Myers
b14d30e141
include:
...
2007-11-07 Joseph Myers <joseph@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
* floatformat.h (struct floatformat): Add split_half field.
(floatformat_ibm_long_double): New.
libiberty:
2007-11-07 Joseph Myers <joseph@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
* floatformat.c (mant_bits_set): New.
(floatformat_to_double): Use it. Note no special handling of
split formats.
(floatformat_from_double): Note no special handing of split
formats.
(floatformat_ibm_long_double_is_valid,
floatformat_ibm_long_double): New.
(floatformat_ieee_single_big, floatformat_ieee_single_little,
floatformat_ieee_double_big, floatformat_ieee_double_little,
floatformat_ieee_double_littlebyte_bigword, floatformat_vax_f,
floatformat_vax_d, floatformat_vax_g, floatformat_i387_ext,
floatformat_m68881_ext, floatformat_i960_ext,
floatformat_m88110_ext, floatformat_m88110_harris_ext,
floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword,
floatformat_ia64_spill_big, floatformat_ia64_spill_little,
floatformat_ia64_quad_big, floatformat_ia64_quad_little): Update
for addition of split_half field.
gdb:
2007-11-07 Joseph Myers <joseph@codesourcery.com>
Daniel Jacobowitz <dan@codesourcery.com>
* gdbtypes.c (floatformats_ibm_long_double): New.
* gdbtypes.h (floatformats_ibm_long_double): Declare.
* ia64-tdep.c (floatformat_ia64_ext): Update for addition of
split_half field.
* mips-tdep.c (n32n64_floatformat_always_valid,
floatformat_n32n64_long_double_big, floatformats_n32n64_long):
Remove.
(mips_gdbarch_init): Use floatformats_ibm_long_double instead of
floatformats_n32n64_long.
* ppc-linux-tdep.c (ppc_linux_init_abi): Use 128-bit IBM long
double.
* doublest.c (convert_floatformat_to_doublest,
convert_doublest_to_floatformat): Handle split floating-point
formats.
* ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle IBM long
double arguments.
(ppc64_sysv_abi_push_dummy_call): Likewise.
(do_ppc_sysv_return_value): Handle IBM long double return.
2007-11-08 00:08:48 +00:00
Markus Deuling
a54fba4c5d
2007-11-07 Markus Deuling <deuling@de.ibm.com>
...
* gdbarch.sh (legacy_virtual_frame_pointer): Add gdbarch parameter.
* gdbarch.{c,h}: Regenerate.
* arch-utils.c (legacy_virtual_frame_pointer): Add gdbarch parameter.
Replace current_gdbarch by gdbarch.
* m32c-tdep.c (m32c_virtual_frame_pointer): Likewise.
* mips-tdep.c (mips_virtual_frame_pointer): Likewise.
* spu-tdep.c (spu_virtual_frame_pointer): Likewise.
2007-11-07 06:58:31 +00:00
Markus Deuling
67d5789459
*** empty log message ***
2007-11-07 06:33:01 +00:00
Ulrich Weigand
d93859e2e8
2007-11-02 Markus Deuling <deuling@de.ibm.com>
...
* gdbarch.sh (register_name): Add gdbarch parameter.
* gdbarch.{c,h}: Regenerate.
* target-descriptions.c (tdesc_register_name): Add gdbarch parameter.
(tdesc_register_name): Replace current_gdbarch by gdbarch.
* target-descriptions.h (tdesc_register_name): Add gdbarch parameter.
* xstormy16-tdep.c (xstormy16_register_name): Add gdbarch parameter.
* vax-tdep.c (vax_register_name): Add gdbarch parameter.
* spu-tdep.c (spu_register_name): Add gdbarch parameter.
* s390-tdep.c (s390_register_name): Add gdbarch parameter.
* mt-tdep.c (mt_register_name): Add gdbarch parameter.
(mt_registers_info): Replace current_gdbarch by gdbarch.
(mt_register_reggroup_p): Add gdbarch to mt_register_name call.
* mips-tdep.c (mips_register_name): Add gdbarch parameter. Replace
current_gdbarch by gdbarch.
(mips_register_name): Add gdbarch to tdesc_register_name call.
* mep-tdep.c (mep_register_name): Add gdbarch parameter. Replace
current_gdbarch by gdbarch.
(mep_register_reggroup_p): Add gdbarch to mep_register_name call.
* m32c-tdep.c (m32c_register_name): Add gdbarch parameter. Replace
current_gdbarch by gdbarch.
* m88k-tdep.c (m88k_register_name): Add gdbarch parameter.
* m68k-tdep.c (m68k_register_name): Add gdbarch parameter.
* m32r-tdep.c (m32r_register_name): Add gdbarch parameter.
(m32r_frame_unwind_cache): Use get_frame_arch to get at the current
architecture by frame_info.
* iq2000-tdep.c (iq2000_register_name): Add gdbarch parameter.
* ia64-tdep.c (ia64_register_name): Add gdbarch parameter.
* hppa-tdep.c (hppa32_register_name, hppa64_register_name): Add gdbarch
parameter.
* h8300-tdep.c (h8300_register_name, h8300s_register_name)
(h8300sx_register_name): Add gdbarch parameter.
* cris-tdep.c (cris_register_name, crisv32_register_name): Add
gdbarch parameter. Replace current_gdbarch by gdbarch.
(cris_gdbarch_init): Replace current_gdbarch by gdbarch (comment).
* avr-tdep.c (avr_register_name): Add gdbarch parameter.
* arm-tdep.c (arm_register_name): Add gdbarch paramete
* amd64-tdep.c (amd64_register_name): Add gdbarch parameter. Update
caller.
* amd64-tdep.h (amd64_register_name): Add gdbarch parameter.
* amd64-linux-tdep.c (amd64_linux_register_name): Add gdbarch parameter.
* alpha-tdep.c (alpha_register_name): Add gdbarch parameter.
(alpha_cannot_fetch_register, alpha_cannot_store_register): Update call
of alpha_register_name.
* frv-tdep.c (frv_register_name): Add gdbarch parameter.
* i386-tdep.c (i386_register_name): Add gdbarch parameter. Replace
current_gdbarch by gdbarch.
(i386_register_type): Replace ?current_gdbarch by gdbarch.
* i386-tdep.h (i386_register_name): Add gdbarch parameter.
* i386-linux-tdep.c (i386_linux_register_name): Add gdbarch parameter.
* m68hc11-tdep.c (m68hc11_register_name): Add gdbarch parameter.
(m68hc11_register_reggroup_p): Add gdbarch to call of
m68hc11_register_name.
* mn10300-tdep.c (mn10300_generic_register_name, am33_register_name)
(am33_2_register_name): Add gdbarch parameter.
(mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
architecture by frame_info.
(mn10300_dump_tdep): Replace current_gdbarch by gdbarch.
* rs6000-tdep.c (rs6000_register_name): Add gdbarch parameter. Replace
current_gdbarch by gdbarch.
* score-tdep.c (score_register_name): Add gdbarch parameter.
(score_return_value, score_push_dummy_call): Replace current_gdbarch
by gdbarch.
* sh64-tdep.c (sh64_register_name): Add gdbarch parameter.
(sh64_compact_reg_base_num, sh64_register_convert_to_virtual)
(sh64_register_convert_to_raw, sh64_fv_reg_base_num)
(sh64_dr_reg_base_num, sh64_fpp_reg_base_num): Add gdbarch parameter
and update caller. Replace current_gdbarch by gdbarch.
(sh64_extract_return_value, sh64_store_return_value): Use
get_regcache_arch to get at the current architecture by regcache.
* sh-tdep.c (sh_sh_register_name, sh_sh3_register_name)
(sh_sh3e_register_name, sh_sh2e_register_name, sh_sh2a_register_name)
(sh_sh2a_nofpu_register_name, sh_sh_dsp_register_name)
(sh_sh3_dsp_register_name, sh_sh4_register_name)
(sh_sh4_nofpu_register_name, sh_sh4al_dsp_register_name): Add gdbarch
parameter.
(fv_reg_base_num, dr_reg_base_num, sh_justify_value_in_reg)
(sh_next_flt_argreg): Add gdbarch parameter and update caller. Replace
current_gdbarch by gdbarch.
(sh_extract_return_value_fpu, sh_store_return_value_fpu): Use
get_regcache_arch to get at the current architecture by regcache.
* sparc-tdep.c (sparc32_register_name): Add gdbarch parameter.
* sparc64-tdep.c (sparc64_register_name): Add gdbarch parameter.
* v850-tdep.c (v850_register_name, v850e_register_name): Add gdbarch
parameter.
(v850_unwind_sp, v850_unwind_pc): Replace current_gdbarch by gdbarch.
* xtensa-tdep.c (xtensa_register_name): Add gdbarch parameter. Replace
current_gdbarch by gdbarch.
(xtensa_pseudo_register_read, xtensa_pseudo_register_write)
(xtensa_frame_prev_register): Add gdbarch parameter to
xtensa_register_name call.
2007-11-02 14:27:15 +00:00
Daniel Jacobowitz
3d5f6d122e
2007-10-23 Atsushi Nemoto <anemo@mba.ocn.ne.jp>
...
* mips-tdep.c (LL_OPCODE, LLD_OPCODE, SC_OPCODE, SCD_OPCODE): Define.
(deal_with_atomic_sequence): New.
(mips_software_single_step): Use it.
2007-10-23 13:11:47 +00:00
Daniel Jacobowitz
ba32f9896b
* mips-tdep.c (mips_xfer_register): Take a gdbarch argument.
...
(mips_n32n64_return_value, mips_o32_return_value)
(mips_o64_return_value): Update calls to mips_xfer_register.
2007-10-18 15:25:41 +00:00
Daniel Jacobowitz
7cc46491b1
* NEWS: Document target described register support for PowerPC.
...
* ppc-tdep.h: Remove ppc_spr constants.
(struct gdbarch_tdep): Remove regs, ppc_sr0_regnum, and
ppc_builtin_type_vec128 members.
(PPC_R0_REGNUM, PPC_F0_REGNUM, PPC_PC_REGNUM, PPC_MSR_REGNUM)
(PPC_CR_REGNUM, PPC_LR_REGNUM, PPC_CTR_REGNUM, PPC_XER_REGNUM)
(PPC_FPSCR_REGNUM, PPC_MQ_REGNUM, PPC_SPE_UPPER_GP0_REGNUM)
(PPC_SPE_ACC_REGNUM, PPC_SPE_FSCR_REGNUM, PPC_VR0_REGNUM)
(PPC_VSCR_REGNUM, PPC_VRSAVE_REGNUM, PPC_NUM_REGS): New constants.
* rs6000-tdep.c: Include preparsed descriptions.
(init_sim_regno_table): Do not iterate over pseudo registers.
Look up segment registers by name. Use sim_spr_register_name
for SPRs.
(rs6000_register_sim_regno): Call init_sim_regno_table here.
(rs6000_builtin_type_vec128): Delete.
(rs6000_register_name): Only handle SPE pseudo registers and upper
halves. Call tdesc_register_name for everything else.
(rs6000_register_type): Delete. Replace with...
(rs6000_pseudo_register_type): ...this new function. Only handle
SPE pseudo registers.
(rs6000_register_reggroup_p): Delete. Replace with...
(rs6000_pseudo_register_reggroup_p): ...this new function. Only
handle SPE pseudo registers.
(rs6000_convert_register_p): Use ppc_fp0_regnum instead of
"struct reg".
(rs6000_register_to_value, rs6000_value_to_register): Remove check
of reg->fpr.
(e500_register_reggroup_p): Delete.
(STR, R, R4, R8, R16, F, P8, R32, R64, R0, A4, S, S4, SN4, S64)
(COMMON_UISA_REGS, PPC_UISA_SPRS, PPC_UISA_NOFP_SPRS)
(PPC_SEGMENT_REGS, PPC_OEA_SPRS, PPC_ALTIVEC_REGS, PPC_SPE_GP_REGS)
(PPC_SPE_UPPER_GP_REGS, PPC_EV_PSEUDO_REGS): Delete macros.
(registers_powerpc, registers_403, registers_403GC, registers_505)
(registers_860, registers_601, registers_602, registers_603)
(registers_604, registers_750, registers_7400, registers_e500): Delete
variables.
(struct variant): Delete nregs, npregs, num_tot_regs, and regs. Add
tdesc.
(tot_num_registers, num_registers, num_pseudo_registers): Delete.
(variants): Delete outdated comment. Use standard target descriptions
instead of "struct reg" arrays.
(init_variants): Delete.
(rs6000_gdbarch_init): Do not guess word size from the BFD
architecture if we have a target description. Select a variant
before creating a new architecture. Use the variant's target
description if the target did not define a register layout.
Validate target-supplied registers. Reject mismatches. Use
fixed register numbers and new constants instead of magic
numbers. Call set_gdbarch_ps_regnum. Call tdesc_use_registers.
(_initialize_rs6000_tdep): Initialize the preparsed target
descriptions.
* target-descriptions.c (tdesc_predefined_types): Add int128 and
uint128.
(tdesc_find_register_early): New function.
(tdesc_numbered_register): Use it.
(tdesc_register_size): New function.
(tdesc_use_registers): Take a target_desc argument. Do not use
gdbarch_target_desc.
* target-descriptions.h (tdesc_use_registers): Update prototype
and comment.
(tdesc_register_size): New prototype.
* Makefile.in (powerpc_32_c, powerpc_403_c, powerpc_403gc_c)
(powerpc_505_c, powerpc_601_c, powerpc_602_c, powerpc_603_c)
(powerpc_604_c, powerpc_64_c, powerpc_7400_c, powerpc_750_c)
(powerpc_860_c, powerpc_e500_c, rs6000_c): New macros.
(rs6000-tdep.o): Update.
* arm-tdep.c (arm_gdbarch_init): Update call to tdesc_use_registers.
* m68k-tdep.c (m68k_gdbarch_init): Likewise.
* mips-tdep.c (mips_gdbarch_init): Likewise.
* gdb.texinfo (Predefined Target Types): Add int128
and uint128.
(Standard Target Features): Add PowerPC features.
* gdb.xml/tdesc-regs.exp: Add PowerPC support.
* sim-ppc.h (sim_spr_register_name): New prototype.
* gdb-sim.c (regnum2spr): Rename to...
(sim_spr_register_name): ... this. Make global.
2007-10-15 19:45:31 +00:00
Ulrich Weigand
72a155b44d
2007-10-10 Markus Deuling <deuling@de.ibm.com>
...
* mips-tdep.c (mips_xfer_register): Use get_regcache_arch to get at the
current architecture by regcache.
(mips2_fp_compat, mips32_next_pc, mips16_scan_prologue)
(mips_insn16_frame_cache, mips32_scan_prologue, mips_insn32_frame_cache)
(mips_stub_frame_cache, mips_read_fp_register_single)
(mips_read_fp_register_double, mips_print_fp_register)
(mips_print_register, print_gp_register_row): Use get_frame_arch to get
at the current architecture by frame_info.
(mips_register_reggroup_p, mips_pseudo_register_read, mips_unwind_sp)
(mips_pseudo_register_write, mips_register_type, mips_unwind_pc)
(mips_unwind_dummy_id, mips_eabi_push_dummy_call)
(mips_n32n64_push_dummy_call, mips_n32n64_return_value)
(mips_o32_push_dummy_call, mips_o32_return_value)
(mips_o64_push_dummy_call, mips_o64_return_value)
(mips_print_registers_info, mips_dump_tdep): Replace current_gdbarch by
gdbarch.
2007-10-10 17:03:36 +00:00
Maciej W. Rozycki
313628ccba
* mips-tdep.c (mips32_next_pc): Fix a typo in BGTZL.
2007-10-08 13:15:00 +00:00
Daniel Jacobowitz
82e9138962
* mips-tdep.c (mips_read_fp_register_double): Correct check for
...
odd FP registers.
(mips_print_fp_register): Correct check for even FP registers.
(mips_virtual_frame_pointer): New function.
(mips_gdbarch_init): Call set_gdbarch_virtual_frame_pointer.
2007-10-02 15:17:44 +00:00
Maciej W. Rozycki
59aa1faa75
* mips-tdep.c (mips_n32n64_return_value): Fix a comment.
2007-09-26 11:36:30 +00:00
Maciej W. Rozycki
b18bb924a2
* mips-tdep.c (mips_n32n64_return_value): Per N32/N64 ABI
...
rules return composite types in registers as appropriate.
2007-09-25 16:08:17 +00:00
Maciej W. Rozycki
ab2e1992cf
* mips-tdep.c (mips_n32n64_push_dummy_call): Per N32/N64 ABI
...
rules do not treat composite types specially.
2007-09-21 15:54:58 +00:00
Maciej W. Rozycki
97ab0fdd9d
* mips-tdep.c (mips32_in_function_epilogue_p): New function.
...
(mips16_in_function_epilogue_p): Likewise.
(mips_in_function_epilogue_p): Likewise.
(mips_gdbarch_init): Register mips_in_function_epilogue_p().
2007-09-20 15:34:19 +00:00
Daniel Jacobowitz
aa6c981f95
* mips-tdep.c (mips_stub_frame_cache): Correct the saved return
...
address register. Correct the call to frame_id_build.
(mips_stub_frame_sniffer): Use the stub unwinder when the PC
is invalid.
2007-09-19 14:45:39 +00:00
Daniel Jacobowitz
4eb0ad19f3
* arch-utils.c (gdbarch_info_fill): Also try core_bfd.
...
* corelow.c (core_read_description): New.
(init_core_ops): Set to_read_description.
* gdbarch.sh: Add gdbarch_core_read_description.
* mips-linux-tdep.c (mips_linux_core_read_description): New.
(mips_linux_init_abi): Call set_gdbarch_core_read_description.
* mips-tdep.c (mips_tdesc_gp32, mips_tdesc_gp64): New.
(mips_register_g_packet_guesses): Use them.
(_initialize_mips_tdep): Initialize them.
* mips-tdep.h (mips_tdesc_gp32, mips_tdesc_gp64): Declare.
* gdbarch.h, gdbarch.c: Regenerated.
2007-09-10 21:14:11 +00:00
Joel Brobecker
a9762ec78a
Switch the license of all .c files to GPLv3.
...
Switch the license of all .h files to GPLv3.
Switch the license of all .cc files to GPLv3.
2007-08-23 18:08:50 +00:00
Daniel Jacobowitz
609ca2b957
* mips-tdep.c (mips_gdbarch_init): Use Tag_GNU_MIPS_ABI_FP to
...
determine the file's FPU type.
2007-08-22 15:16:56 +00:00
Daniel Jacobowitz
8d26208a1e
gdb/testsuite/
...
* gdb.base/callfuncs.exp (do_function_calls): Use t_double_int
and t_int_double.
* gdb.base/callfuncs.c (t_double_int, t_int_double): New.
gdb/
* mips-tdep.c (mips_n32n64_fp_arg_chunk_p): New.
(mips_n32n64_push_dummy_call): Always increment float_argreg along
with argreg. Use mips_n32n64_fp_arg_chunk_p.
2007-08-22 15:13:04 +00:00
Maciej W. Rozycki
193774b320
* mips-tdep.c (heuristic_proc_start): Add more MIPS16 function
...
prologue instructions.
2007-07-20 17:29:59 +00:00
Maciej W. Rozycki
ce1f96de2e
* mips-tdep.c (mips_next_pc): Use is_mips16_addr() instead of
...
a direct test.
2007-07-20 15:31:56 +00:00