aboutsummaryrefslogtreecommitdiff
path: root/gdb/arm-linux-tdep.c
AgeCommit message (Collapse)AuthorFilesLines
2002-05-15* arm-linux-tdep.c (ARM_LINUX_JB_PC): Renamed from JB_PC.Richard Earnshaw1-4/+4
(ARM_LINUX_JB_ELEMENT_SIZE): Likewise.
2002-02-23* arm-linux-tdep.c (arm_linux_init_abi): RegisterRichard Earnshaw1-1/+5
IN_SOLIB_CALL_TRAMPOLINE and SKIP_TRAMPOLINE_CODE * config/arm/tm-linux.h (IN_SOLIB_CALL_TRAMPOLINE): Replace old definition with undef, since we don't want the sysvr4 definition. (SKIP_TRAMPOLINE_CODE): Likewise.
2002-02-23* arm-linux-tdep.c (arm_linux_extract_return_value): Make static.Richard Earnshaw1-4/+15
(arm_linux_push_arguments): Likewise. (arm_linux_init_abi): Register them. Also register linux-specific call_dummy_words. (find_minsym_and_objfile): Use strcmp, not STREQ. * config/arm/tm-linux.h (CALL_DUMMY_WORDS): Delete. (arm_linux_call_dummy_words): Delete declaration. (EXTRACT_RETURN_VALUE, PUSH_ARGUMENTS): Delete. (arm_linux_extract_return_value, arm_linux_push_arguments): Delete declarations. (LOWEST_PC): Delete.
2002-02-19* arm-linux-nat.c: Linux -> GNU/Linux when not talking about theRichard Earnshaw1-16/+18
kernel. * arm-linux-tdep.c: Likewise. * config/arm/tm-linux.h: Likewise.
2002-02-18* gdbarch.sh (GET_LONGJMP_TARGET): Add rule.Richard Earnshaw1-32/+5
* gdbarch.c gdbarch.h: Regenerate. * breakpoint.c (create_longjmp_breakpoint): Always compile this function. (breakpoint_reset): Test GET_LONGJMP_TARGET_P(). * infrun.c (GET_LONGJMP_TARGET): Delete default definition. (handle_inferior_event): Test GET_LONGJMP_TARGET_P(). * arm-tdep.h (struct gdbarch_tdep): Add jb_pc and jb_elt_size fields. * arm-tdep.c (arm_get_longjmp_target): New function. (arm_gdbarch_init): Initialize jb_pc to -1. If ABI handler changes this to a positive value register arm_get_longjmp_target as the longjmp handler. * arm-linux-tdep.c (arm_get_longjmp_target): Delete. (arm_linux_init_abi): Set up longjmp description in tdep. * armnbsd-nat.c (get_longjmp_target): Delete. * armnbsd-tdep.c (arm_netbsd_init_abi_common): Set up longjmp description in tdep. * config/arm/tm-nbsd.h (JB_ELEMENT_SIZE, JB_PC): Delete. (get_longjmp_target): Delete declaration. (GET_LONGJMP_TARGET): Delete. * config/arm/tm-linux.h (arm_get_longjmp_target): Delete declaration. (GET_LONGJMP_TARGET): Delete.
2002-02-15* arm-tdep.h (struct gdbarch_tdep): Add fields for breakpointRichard Earnshaw1-0/+11
descriptions. * arm-tdep.c (arm_default_arm_le_breakpoint) (arm_default_arm_be_breakpoint, arm_default_thumb_le_breakpoint) (arm_default_thumb_be_breakpoint): New. Initialize them from traditional breakpoint defines. (arm_breakpoint_from_pc): Use new gdbarch_tdep entries. (arm_gdbarch_init): Initialize new breakpoint variables. * arm-linux-tdep.c (arm_linux_arm_le_breakpoint): New. (arm_linux_init_abi): Initialize linux-specific breakpoint. * armnbsd-tdep.c (arm_nbsd_arm_le_breakpoint): New. (arm_netbsd_aout_init_abi, arm_netbsd_elf_init_abi): Split common code out to ... (arm_netbsd_init_abi_common): ... here; new function. * config/arm/tm-arm.h (ARM_LE_BREAKPOINT, ARM_BE_BREAKPOINT) (THUMB_LE_BREAKPOINT, THUMB_BE_BREAKPOINT): Delete. * config/arm/tm-linux.h (ARM_LE_BREAKPOINT): Delete. * config/arm/tm-nbsd.h (ARM_LE_BREAKPOINT): Delete.
2002-02-15* arm-tdep.h (enum arm_abi): New enum.Richard Earnshaw1-0/+10
(struct gdbarch_tdep): New structure. (LOWEST_PC): Provide a default. (arm_gdbarch_register_os_abi): Declare new function. * arm-tdep.c (arm_abi_names): New array. (process_note_abi_tag_sections): New function. (get_elfosabi): New function. (arm_gdbarch_register_os_abi): New function. (arm_gdbarch_init): Try to determine the ABI of the inferior. If support for that ABI has been built in, then call the appropriate configuration routine. Use gdbarch_num_regs() to get the number of registers. (arm_dump_tdep): New function. (arm_init_abi_eabi_v1, arm_init_abi_eabi_v2, arm_init_abi_apcs): New place-holder functions. (_initialize_arm_tdep): Register them. * config/arm/tm-arm.h (LOWEST_PC): Delete. * armnbsd-tdep.c: New file. * Makefile.in (armnbsd-tdep.o): Add dependencies. * config/arm/nbsd.mt (TDEPFILES): Add it. * config/arm/tm-nbsd.h (LOWEST_PC): Delete. * armnbsd-nat.c: Include regcache.h. * Makefile.in (armnbsd-nat.o): Update dependency list. * arm-tdep.c (arm_get_next_pc): Use printf_filtered for error message.
2002-02-11* arm-tdep.h: New file.Richard Earnshaw1-10/+13
* arm-tdep.c: Include arm-tdep.h. (arm_addr_bits_remove, arm_smash_text_address, arm_saved_pc_after_call) (arm_skip_prologue, arm_call_dummy_words, arm_fix_call_dummy) (arm_print_float_info, arm_register_type, convert_to_extended) (arm_elf_make_msymbols_special, arm_coff_make_msymbol_special) (arm_extract_return_value, arm_register_name): Make static. (arm_software_single_step): Similarly. Fix types in declaration. (arm_register_byte, arm_register_raw_size, arm_register_virtual_size) (arm_store_return_value, arm_store_struct_return): New functions. (arm_gdbarch_init): Register the above functions. Also register call_dummy_start_offset, sizeof_call_dummy_words, function_start_offset, inner_than, decr_pc_after_break, fp_regnum, sp_regnum, pc_regnum, register_bytes, num_regs, max_register_raw_size, max_register_virtual_size, register_size. Set up prologue_cache.saved_regs here, rather than ... (_initialize_arm_tdep): ... here. * config/arm/tm-arm.h (struct type, struct value): Delete forward declarations. (arm_addr_bits_remove, arm_smash_text_address, arm_saved_pc_after_call) (arm_skip_prologue, arm_call_dummy_words, arm_fix_call_dummy) (arm_print_float_info, arm_register_type, convert_to_extended) (arm_elf_make_msymbols_special, arm_coff_make_msymbol_special) (arm_extract_return_value, arm_register_name): Delete declarations. (SMASH_TEXT_ADDRESS, ADDR_BITS_REMOVE, FUNCTION_START_OFFSET) (SKIP_PROLOGUE, SAVED_PC_AFTER_CALL, INNER_THAN, BREAKPOINT_FROM_PC) (DECR_PC_AFTER_BREAK, PRINT_FLOAT_INFO, REGISTER_SIZE, NUM_REGS) (REGISTER_NAME, REGISTER_BYTES, REGISTER_BYTE, REGISTER_RAW_SIZE) (REGISTER_VIRTUAL_SIZE, MAX_REGISTER_RAW_SIZE) (MAX_REGISTER_VIRTUAL_SIZE, REGISTER_VIRTUAL_TYPE, STORE_STRUCT_RETURN) (EXTRACT_RETURN_VALUE, STORE_RETURN_VALUE, CALL_DUMMY_WORDS) (SIZEOF_CALL_DUMMY_WORDS, CALL_DUMMY_START_OFFSET, FIX_CALL_DUMMY) (SOFTWARE_SINGLE_STEP_P, SOFTWARE_SINGLE_STEP) (ELF_MAKE_MSYMBOL_SPECIAL, COFF_MAKE_MSYMBOL_SPECIAL) Delete. (arm_pc_is_thumb, arm_pc_is_thumb_dummy, thumb_get_next_pc) (arm_get_next_pc): No-longer static -- these are needed by the RDI interface. * arm-linux-nat.c arm-linux-tdep.c armnbsd-nat.c: Include arm-tdep.h. * remote-rdi.c remote-rdp.c: Likewise. * Makefile.in (arm-linux-nat.o, arm-linux-tdep.o arm-tdep.o) (armnbsd-nat.o, remote-rdi.o, remote_rdp.o): Update dependencies. * config/arm/tm-nbsd.h (SOFTWARE_SINGLE_STEP_P): Delete bogus definition. * arm-tdep.h (ARM_A1_REGNUM, ARM_A4_REGNUM, ARM_AP_REGNUM) (ARM_SP_REGNUM, ARM_LR_REGNUM, ARM_PC_REGNUM, ARM_F0_REGNUM) (ARM_F3_REGNUM, ARM_F7_REGNUM, ARM_FPS_REGNUM, ARM_PS_REGNUM): Renamed from non-ARM_ prefixed definitions. * arm-tdep.c armnbsd-nat.c arm-linux-nat.c arm-linux-tdep.c: Update all uses of above. * remote-rdi.c remote-rdp.c: Likewise. * arm-linux-nat.c (ARM_CPSR_REGNUM): Renamed from CPSR_REGNUM.
2002-01-30* arm-tdep.c (arm_call_dummy_words): Define.Richard Earnshaw1-0/+14
* arm-linux-tdep.c (arm_linux_call_dummy_words): Define. * config/arm/tm-arm.h (CALL_DUMMY_P): Define. (CALL_DUMMY_WORDS): Define. (arm_call_dummy_words): Declare. * config/arm/tm-linux.h (CALL_DUMMY_WORDS): Define. (arm_linux_call_dummy_words): Declare.
2001-12-10Approved by Jim Blandy:Fred Fish1-1/+1
2001-12-10 Fred Fish <fnf@redhat.com> * arm-linux-tdep.c (skip_hurd_resolver): Use NULL rather than zero in args to lookup_minimal_symbol. * linespec.c (decode_line_1): Ditto. * i386-linux-tdep.c (skip_hurd_resolver): Ditto. * minsyms.c (find_stab_function_addr): Ditto. * symfile.c (simple_read_overlay_table): Ditto. (simple_read_overlay_region_table): Ditto.
2001-08-21* arm-tdep.c (convert_from_extended, convert_to_extended): DeleteAndrew Cagney1-7/+3
assembler version of function. (convert_from_extended, convert_to_extended): Rewrite. Use floatformat_to_doublest, floatformat_from_doublest, floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword. (arm_push_arguments): Use extract_floating and store_floating to perform floating point conversions. (SWAP_TARGET_AND_HOST): Delete macro. * arm-linux-tdep.c (arm_linux_push_arguments): Use extract_floating and store_floating to perform floating point conversions.
2001-08-01* defs.h (HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT)Andrew Cagney1-0/+1
(HOST_FLOAT_FORMAT, HOST_DOUBLE_FORMAT) (HOST_LONG_DOUBLE_FORMAT, DOUBLEST) (floatformat_to_doublest, floatformat_from_doublest) (floatformat_is_negative, floatformat_is_nan) (floatformat_mantissa, store_floating) (extract_floating): Move declaration from here. * doublest.h: To here. New file. * utils.c (get_field, floatformat_to_doublest, put_field) (ldfrexp, floatformat_from_doublest, floatformat_is_negative) (floatformat_is_nan, floatformat_mantissa) (FLOATFORMAT_CHAR_BIT): Move from here. * doublest.c: To here. New file. * findvar.c (store_floating, extract_floating): Move from here. * doublest.c: To here. * Makefile.in (SFILES): Add doublest.c. (COMMON_OBS): Add doublest.o. (doublest.o): Specify dependencies. (doublest_h): Define. * config/m88k/tm-m88k.h: Include "doublest.h". * config/i960/tm-i960.h: Ditto. * config/i386/tm-symmetry.h: Ditto. * rs6000-tdep.c, valarith.c: Ditto. * valprint.c, stabsread.c, sh-tdep.c: Ditto. * ia64-tdep.c, i387-tdep.c, i386-tdep.c: Ditto. * values.c, arm-tdep.c, arm-linux-tdep.c: Ditto. * alpha-tdep.c, ax.h, expression.h: Ditto. * sh-tdep.c, parse.c, top.c, value.h: Ditto. * Makefile.in (arm-tdep.o): Add $(doublest_h). (i386-tdep.o, i387-tdep.o, ia64-tdep.o): Ditto. (rs6000-tdep.o, stabsread.o, valarith.o): Ditto. (values.o, valprint.o, arm-linux-tdep.o): Ditto. (alpha-tdep.o, ax_h, parse.o, top.o, value_h): Ditto. (parser_defs_h): Ditto. (expression_h): Add $(doublest_h) and $(symtab_h).
2001-07-15s/value_ptr/struct value */Andrew Cagney1-1/+1
2001-03-01Create new file regcache.h. Update all uses.Andrew Cagney1-1/+2
2000-09-06Remove stray debugging statement and move prototypes so arm-linux-tdep.cScott Bambrough1-6/+1
compiles without warnings. 2000-09-06 Scott Bambrough <scottb@netwinder.org> * arm-linux-tdep.c (arm_linux_skip_solib_resolver): Removed debug print statement. Removed arm_pc_is_thumb prototype. * config/arm/tm-arm.h (arm_pc_is_thumb, arm_pc_is_thumb_dummy): Move prototypes here from tm-embed.h. * config/arm/tm-embed.h (arm_pc_is_thumb, arm_pc_is_thumb_dummy): Remove prototypes. Moved to tm-arm.h.
2000-09-06Add support for backtracing through signal handlers on Linux/ARM. Also,Kevin Buettner1-1/+88
make prologue scanning code somewhat less naive about optimized code on GNU/Linux/ARM.
2000-05-25Replace SKIP_SOLIB_RESOLVER stub with something that works.Scott Bambrough1-2/+88
2000-05-25 Scott Bambrough <scottb@netwinder.org> * arm-linux-tdep.c (find_minsym_and_objfile): New. (skip_hurd_resolver): New. (arm_linux_skip_solib_resolver): New. (arm_skip_solib_resolver): Removed. * config/arm/tm-linux.h (SKIP_SOLIB_RESOLVER): Changed to use arm_linux_skip_solib_resolver.
2000-04-10Move arm_skip_solib_resolver from arm-linux-nat.c to arm-linux-tdep.c.Scott Bambrough1-0/+126
2000-04-10 Philip Blundell <philb@gnu.org> * arm-linux-nat.c (arm_skip_solib_resolver): Remove and move to arm-linux-tdep.c. * arm-linux-tdep.c (arm_skip_solib_resolver): New.
2000-04-072000-04-07 Scott Bambrough <scottb@netwinder.org>Scott Bambrough1-0/+145
* ChangeLog: Correct date on last entry. * arm-linux-tdep.c (arm_linux_push_arguments): New function. * config/arm/tm-linux: Redefined PUSH_ARGUMENTS for Linux. * config/arm/tm-embed: Fix build warning from redefinition of LOWEST_PC. * config/arm/tm-arm.h: Remove TARGET_BYTE_ORDER_SELECTABLE. * config/arm/tm-wince.h: Remove TARGET_BYTE_ORDER_SELECTABLE and TARGET_BYTE_ORDER. Add TARGET_BYTE_ORDER_SELECTABLE_P to override default in tm-arm.h. Use default target byte order from tm-arm.h.
2000-04-052000-04-05 Scott Bambrough <scottb@netwinder.org>Scott Bambrough1-1/+2
* arm-linux-tdep.c: Resolve implicit function declarations by including target.h and value.h. Inclusion of symtab.h is no longer needed. * ChangeLog: Fix formatting of previous entry.
2000-04-05Unable to build x86 hosted debugger for ARM Linux, due to missing targetScott Bambrough1-0/+81
dependencies. Created ARM Linux specific arm-linux-tdep.c file and moved missing code into it from arm-linux-nat.c. 2000-04-05 Scott Bambrough <scottb@netwinder.org> * arm-linux-tdep.c: New file. * arm-linux-nat.c (fetch_fpregs): Remove unused code. (arm_get_longjmp_target): Moved it and all defines it uses to arm-linux-tdep.c. (arm_linux_extract_return_value): Moved to arm-linux-tdep.c. * config/arm/linux.mt: Add arm-linux-tdep.c to TDEPFILES.