* linespec.c: Include "target.h".
[deliverable/binutils-gdb.git] / gdb / ChangeLog
index 4818d15bcec812f40a95e20f514976cab19becf9..72916957973337357ed99950b5dc94b69ade7d53 100644 (file)
@@ -1,3 +1,244 @@
+2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * linespec.c: Include "target.h".
+       (minsym_found): Handle minimal symbols pointing to function
+       descriptors.  Use find_function_start_pc.
+       * minsyms.c (msymbol_objfile): New function.
+       * parse.c (write_exp_msymbol): Handle minimal symbols pointing
+       to function descriptors.
+       * symtab.c (fixup_section): Only use minimal symbol at the same
+       address to determine section of a symbol.
+       (find_function_start_pc): New function.
+       (find_function_start_sal): Use it.
+       * symtab.h (msymbol_objfile): Add prototype.
+       (find_function_start_pc): Likewise.
+       * value.c: Include "objfiles.h".
+       (value_fn_field): Handle minimal symbols pointing to function
+       descriptors. 
+       * Makefile.in (linespec.o): Update dependencies.
+       (value.o): Likewise.
+
+2008-05-02  Joel Brobecker  <brobecker@adacore.com>
+
+       * ada-lang.c (unwrap_value): Handle the case where the "F" field
+       inside a PAD type is a bitfield.
+
+2008-05-02  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
+       TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
+       Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
+       Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
+       Allow typedefs when checking for function pointer arguments.
+       Right-align small structs passed on the stack.
+       (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
+       TYPE_CODE_CHAR the same as TYPE_CODE_INT.
+       Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
+
+2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * Makefile.in (arm-tdep.o): Update.
+       * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
+       (struct arm_per_objfile, arm_compare_mapping_symbols): New.
+       (arm_pc_is_thumb): Use mapping symbols.
+       (arm_objfile_data_cleanup, arm_record_special_symbol): New.
+       (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
+       (_initialize_arm_tdep): Initialize arm_objfile_data_key.
+       * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
+       * gdbarch.sh: Add record_special_symbol.
+       * gdbarch.c, gdbarch.h: Regenerated.
+       * objfiles.c (struct objfile_data): Add cleanup member.
+       (register_objfile_data_with_cleanup): New function, from
+       register_objfile_data.
+       (register_objfile_data): Use it.
+       (objfile_free_data): Call clear_objfile_data.
+       (clear_objfile_data): Call cleanup functions.
+       * objfiles.h (register_objfile_data_with_cleanup): Declare.
+
+2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * objfiles.c (init_entry_point_info): Handle shared libraries.
+
+2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
+       lowest_pc.
+
+2008-05-02  Jim Blandy  <jimb@codesourcery.com>
+           Pedro Alves  <pedro@codesourcery.com>
+
+       Implement displaced stepping.
+
+       * gdbarch.sh (max_insn_length): New 'variable'.
+       (displaced_step_copy, displaced_step_fixup)
+       (displaced_step_free_closure, displaced_step_location): New
+       functions.
+       (struct displaced_step_closure): Add forward declaration.
+       * gdbarch.c, gdbarch.h: Regenerated.
+
+       * arch-utils.c: #include "objfiles.h".
+       (simple_displaced_step_copy_insn)
+       (simple_displaced_step_free_closure)
+       (displaced_step_at_entry_point): New functions.
+       * arch-utils.h (simple_displaced_step_copy_insn)
+       (simple_displaced_step_free_closure)
+       (displaced_step_at_entry_point): New prototypes.
+
+       * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
+       (I386_MAX_MATCHED_INSN_LEN): ... this.
+       (i386_absolute_jmp_p, i386_absolute_call_p)
+       (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
+       (i386_displaced_step_fixup): New functions.
+       (struct i386_insn, i386_match_insn): Update.
+       (i386_gdbarch_init): Set gdbarch_max_insn_length.
+       * i386-tdep.h (I386_MAX_INSN_LEN): New.
+       (i386_displaced_step_fixup): New prototype.
+       * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
+       Register gdbarch_displaced_step_copy,
+       gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
+       and gdbarch_displaced_step_location functions.
+
+       * infrun.c (debug_displaced): New variable.
+       (show_debug_displaced): New function.
+       (struct displaced_step_request): New struct.
+       (displaced_step_request_queue, displaced_step_ptid)
+       (displaced_step_gdbarch, displaced_step_closure)
+       (displaced_step_original, displaced_step_copy)
+       (displaced_step_saved_copy, can_use_displaced_stepping): New
+       variables.
+       (show_can_use_displaced_stepping, use_displaced_stepping)
+       (displaced_step_clear, cleanup_displaced_step_closure)
+       (displaced_step_dump_bytes, displaced_step_prepare)
+       (displaced_step_clear_cleanup, write_memory_ptid)
+       (displaced_step_fixup): New functions.
+       (resume): Call displaced_step_prepare.
+       (proceed): Call read_pc once, and remember the value.  If using
+       displaced stepping, don't remove breakpoints.
+       (handle_inferior_event): Call displaced_step_fixup.  Add some
+       debugging output.  When we try to step over a breakpoint, but get
+       a signal to deliver to the thread instead, ensure the step-resume
+       breakpoint is actually inserted.  If a thread hop is needed, and
+       displaced stepping is enabled, don't remove breakpoints.
+       (init_wait_for_inferior): Call displaced_step_clear.
+       (_initialize_infrun): Add "set debug displaced" command.  Add
+       "maint set can-use-displaced-stepping" command.  Clear
+       displaced_step_ptid.
+       * inferior.h (debug_displaced): Declare variable.
+       (displaced_step_dump_bytes): Declare function.
+
+       * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
+       dependencies.
+
+2008-05-02  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
+       (arm_force_mode_string, arm_show_fallback_mode)
+       (arm_show_force_mode): New.
+       (arm_pc_is_thumb): Honor fallback-mode and force-mode.  Use
+       arm_frame_is_thumb.
+       (_initialize_arm_tdep): Add "set arm fallback-mode"
+       and "set arm force-mode".
+       * NEWS: Document new commands.
+
+2008-05-02  Andrew Stubbs  <andrew.stubbs@st.com>
+
+       * main.h (batch_silent): Declare.
+       * event-top.c: Include main.h.
+       (gdb_setup_readline): Remove extern batch_silent declaration.
+       * infrun.c (normal_stop): Don't print source location when running in
+       --batch-silent mode.
+       * Makefile.in (event-top.o): Add main.h dependency.
+
+2008-05-02  Andreas Schwab  <schwab@suse.de>
+
+       * target.h (struct target_ops): Add
+       to_watchpoint_addr_within_range.
+       (target_watchpoint_addr_within_range): New function.
+       * target.c (update_current_target): Inherit
+       to_watchpoint_addr_within_range, defaulting to
+       default_watchpoint_addr_within_range.
+       (default_watchpoint_addr_within_range): New function.
+       (debug_to_watchpoint_addr_within_range): New function.
+       (setup_target_debug): Set to_watchpoint_addr_within_range.
+       * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
+       New function.
+       (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
+       * breakpoint.c (watchpoints_triggered): Use
+       target_watchpoint_addr_within_range.
+
+2008-05-01  Pedro Alves  <pedro@codesourcery.com>
+
+       * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
+       (i[34567]86-*-dicos*, x86_64-*-dicos*):
+       Set gdb_osabi to GDB_OSABI_DICOS.
+
+       * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
+       * osabi.c (gdb_osabi_name): Add "DICOS".
+
+       * i386-dicos-tdep.c: New file.
+
+       * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
+       (ALLDEPFILES): Add i386-dicos-tdep.c.
+       (i386-dicos-tdep.o): New rule.
+
+2008-05-01  Pedro Alves  <pedro@codesourcery.com>
+
+       * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
+       and register the fork's PTID as a thread.
+
+2008-05-01  Aleksandar Ristovski  <aristovski@qnx.com>
+
+       PR gdb/1665
+       * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
+       assign its value to the breakpoint created.
+       (create_breakpoints): Add breakpoint_ops argument and pass it
+       to create_breakpoint call.
+       (break_command_really): Add breakpoint_ops argument and pass/assign
+       appropriately.
+       (break_command_1): Pass NULL as ops argument.
+       (set_breakpoint): Pass NULL as ops argument.
+       (print_one_exception_catchpoint): Print <PENDING> if no loc available.
+       (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
+       catch and throw catchpoints.
+
+2008-05-01  Aleksandar Riswtovski <aristovski@qnx.com>
+
+       PR gdb/2343
+       * corelow.c (core_open): Use gdbarch_target_signal_from_host to
+       translate signal numeric value from the target to GDB's enum
+       target_signal.
+       * gdbarch.c, gdbarch.h: Regenerated.
+       * gdbarch.sh: Added two new functions target_signal_from_host and
+       target_signal_to_host.
+       * target.h (default_target_signal_from_host, 
+       default_target_signal_to_host): New functions - declarations.
+       * signals/signals.c (struct gdbarch): New declaration.
+       (default_target_signal_to_host, default_target_signal_from_host): New
+       functions.
+
+2008-05-01  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
+       * arm-tdep.c (arm_frame_is_thumb): New.
+       (arm_pc_is_thumb): Clarify comment.
+       (thumb_analyze_prologue): Remove PC special case.
+       (thumb_scan_prologue): Take a block_addr argument.  Use it for
+       find_pc_partial_function.  Remove unused variables.
+       (arm_scan_prologue): Use arm_frame_is_thumb.  Use the block address
+       for find_pc_partial_function.  Remove PC special case.
+       (arm_prologue_prev_register): Add special handling for PC and CPSR.
+       (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
+       (arm_get_next_pc): Use arm_frame_is_thumb.
+       (arm_write_pc): Use CPSR_T instead of 0x20.
+       (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
+       * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
+       (CPSR_T): Define.
+       * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
+       DWARF2_FRAME_REG_FN.
+       * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
+       DWARF2_FRAME_REG_FN.
+       (struct dwarf2_frame_state_reg): Add FN to loc union.
+
 2008-05-01  Nick Roberts  <nickrob@snap.net.nz>
 
        * exec.c (print_section_info): Add missing '\n'.
This page took 0.026476 seconds and 4 git commands to generate.