This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
PATCH: rearrange gdbarch methods more logically
- To: gdb-patches at sources dot redhat dot com
- Subject: PATCH: rearrange gdbarch methods more logically
- From: Jim Blandy <jimb at zwingli dot cygnus dot com>
- Date: Fri, 4 May 2001 18:17:15 -0500 (EST)
Another patch which should have no effect on the behavior of the code.
May I commit it?
2001-05-04 Jim Blandy <jimb@redhat.com>
* mn10300-tdep.c (mn10300_gdbarch_init): Put the gdbarch methods
in some rational order.
*** gdb/mn10300-tdep.c.base Fri May 4 13:47:52 2001
--- gdb/mn10300-tdep.c Fri May 4 13:57:05 2001
***************
*** 1020,1052 ****
return NULL; /* keep GCC happy. */
}
set_gdbarch_register_size (gdbarch, 4);
set_gdbarch_max_register_raw_size (gdbarch, 4);
! set_gdbarch_register_virtual_type (gdbarch, mn10300_register_virtual_type);
set_gdbarch_register_byte (gdbarch, mn10300_register_byte);
set_gdbarch_register_virtual_size (gdbarch, mn10300_register_virtual_size);
! set_gdbarch_register_raw_size (gdbarch, mn10300_register_raw_size);
! set_gdbarch_call_dummy_p (gdbarch, 1);
! set_gdbarch_register_name (gdbarch, register_name);
! set_gdbarch_use_generic_dummy_frames (gdbarch, 1);
! set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 0);
! set_gdbarch_call_dummy_stack_adjust_p (gdbarch, 0);
! set_gdbarch_get_saved_register (gdbarch, generic_get_saved_register);
! set_gdbarch_push_arguments (gdbarch, mn10300_push_arguments);
! set_gdbarch_push_return_address (gdbarch, mn10300_push_return_address);
! set_gdbarch_frame_chain_valid (gdbarch, generic_file_frame_chain_valid);
! set_gdbarch_reg_struct_has_addr (gdbarch, mn10300_reg_struct_has_addr);
! set_gdbarch_save_dummy_frame_tos (gdbarch, generic_save_dummy_frame_tos);
! set_gdbarch_num_regs (gdbarch, num_regs);
set_gdbarch_do_registers_info (gdbarch, mn10300_do_registers_info);
! set_gdbarch_fp_regnum (gdbarch, 31);
! set_gdbarch_max_register_virtual_size (gdbarch, 4);
! set_gdbarch_register_bytes (gdbarch,
! num_regs * gdbarch_register_size (gdbarch));
set_gdbarch_breakpoint_from_pc (gdbarch, mn10300_breakpoint_from_pc);
set_gdbarch_function_start_offset (gdbarch, 0);
set_gdbarch_decr_pc_after_break (gdbarch, 0);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
set_gdbarch_frame_chain_valid (gdbarch, generic_file_frame_chain_valid);
set_gdbarch_saved_pc_after_call (gdbarch, mn10300_saved_pc_after_call);
--- 1020,1048 ----
return NULL; /* keep GCC happy. */
}
+ /* Registers. */
+ set_gdbarch_num_regs (gdbarch, num_regs);
+ set_gdbarch_register_name (gdbarch, register_name);
set_gdbarch_register_size (gdbarch, 4);
+ set_gdbarch_register_bytes (gdbarch,
+ num_regs * gdbarch_register_size (gdbarch));
set_gdbarch_max_register_raw_size (gdbarch, 4);
! set_gdbarch_register_raw_size (gdbarch, mn10300_register_raw_size);
set_gdbarch_register_byte (gdbarch, mn10300_register_byte);
+ set_gdbarch_max_register_virtual_size (gdbarch, 4);
set_gdbarch_register_virtual_size (gdbarch, mn10300_register_virtual_size);
! set_gdbarch_register_virtual_type (gdbarch, mn10300_register_virtual_type);
set_gdbarch_do_registers_info (gdbarch, mn10300_do_registers_info);
+ set_gdbarch_fp_regnum (gdbarch, 31);
! /* Breakpoints. */
set_gdbarch_breakpoint_from_pc (gdbarch, mn10300_breakpoint_from_pc);
set_gdbarch_function_start_offset (gdbarch, 0);
set_gdbarch_decr_pc_after_break (gdbarch, 0);
+
+ /* Stack unwinding. */
+ set_gdbarch_get_saved_register (gdbarch, generic_get_saved_register);
+ set_gdbarch_frame_chain_valid (gdbarch, generic_file_frame_chain_valid);
set_gdbarch_inner_than (gdbarch, core_addr_lessthan);
set_gdbarch_frame_chain_valid (gdbarch, generic_file_frame_chain_valid);
set_gdbarch_saved_pc_after_call (gdbarch, mn10300_saved_pc_after_call);
***************
*** 1069,1074 ****
--- 1065,1075 ----
set_gdbarch_frame_num_args (gdbarch, frame_num_args_unknown);
/* That's right, we're using the stack pointer as our frame pointer. */
set_gdbarch_read_fp (gdbarch, generic_target_read_sp);
+
+ /* Calling functions in the inferior from GDB. */
+ set_gdbarch_call_dummy_p (gdbarch, 1);
+ set_gdbarch_call_dummy_breakpoint_offset_p (gdbarch, 0);
+ set_gdbarch_call_dummy_stack_adjust_p (gdbarch, 0);
set_gdbarch_call_dummy_location (gdbarch, AT_ENTRY_POINT);
set_gdbarch_call_dummy_address (gdbarch, entry_point_address);
set_gdbarch_call_dummy_words (gdbarch, mn10300_call_dummy_words);
***************
*** 1078,1084 ****
--- 1079,1090 ----
set_gdbarch_fix_call_dummy (gdbarch, generic_fix_call_dummy);
set_gdbarch_call_dummy_start_offset (gdbarch, 0);
set_gdbarch_pc_in_call_dummy (gdbarch, pc_in_call_dummy_at_entry_point);
+ set_gdbarch_use_generic_dummy_frames (gdbarch, 1);
set_gdbarch_push_dummy_frame (gdbarch, generic_push_dummy_frame);
+ set_gdbarch_push_arguments (gdbarch, mn10300_push_arguments);
+ set_gdbarch_reg_struct_has_addr (gdbarch, mn10300_reg_struct_has_addr);
+ set_gdbarch_push_return_address (gdbarch, mn10300_push_return_address);
+ set_gdbarch_save_dummy_frame_tos (gdbarch, generic_save_dummy_frame_tos);
set_gdbarch_use_struct_convention (gdbarch, mn10300_use_struct_convention);
tdep->am33_mode = am33_mode;