Age | Commit message (Collapse) | Author | Files | Lines |
|
2009-03-05 Pedro Alves <pedro@codesourcery.com>
* breakpoint.c (check_duplicates_for): Skip permanent breakpoints
duplicates of permanent breakpoints.
gdb/testsuite/
2009-03-05 Pedro Alves <pedro@codesourcery.com>
* gdb.arch/i386-permbkpt.S, gdb.arch/i386-permbkpt.exp: New.
|
|
(list_and_check_macro): Use more specific test name.
(next to definition): Make the test names unique.
|
|
|
|
(mi_interpreter_init): Register the above.
* solib.c (clear_solib): Notify solib unload.
* breakpoint.c (disable_breakpoints_in_unloaded_shlib): Do not
disable breakpoints on a.out targets.
|
|
(observer_test_second_notification_function)
(observer_test_third_notification_function): Adjust prototype.
|
|
All callers updated.
(amd64_get_insn_details): Handle more 3-byte opcode insns.
(amd64_breakpoint_p): Delete.
(amd64_displaced_step_fixup): When fixing up after stepping an int3,
don't back up pc to the start of the int3.
* i386-tdep.c: #include opcode/i386.h.
(i386_skip_prefixes): New function.
(i386_absolute_jmp_p): Constify argument.
(i386_absolute_call_p,i386_ret_p,i386_call_p,i386_syscall_p): Ditto.
(i386_breakpoint_p): Delete.
(i386_displaced_step_fixup): Handle unnecessary or redundant prefixes.
When fixing up after stepping an int3, don't back up pc to the start
of the int3.
* gdb.arch/amd64-disp-step.S (test_int3): New test.
* gdb.arch/amd64-disp-step.exp (test_int3): New test.
* gdb.arch/i386-disp-step.S (test_prefixed_abs_jump): New test.
(test_prefixed_syscall,test_int3): New tests.
* gdb.arch/i386-disp-step.exp (test_prefixed_abs_jump): New test.
(test_prefixed_syscall,test_int3): New tests.
|
|
|
|
* ada-tasks.c (ada_normal_stop_observer): Adjust prototype.
* infcmd.c (finish_command_continuation): Pass '1' for
'print_frame' parameter to the observer.
* infrun.c (normal_stop): Don't print mi-specific information
here. Pass 'stop_print_frame' to the 'print_frame' parameter
of the observer.
* mi/mi-interp.c (mi_on_normal_stop): Adjust prototype.
If we need to print frame, and current uiout is not the MI one,
print frame again.
|
|
* gdb.base/pc-fp.exp (get_valueofx): Remove.
Replace calls to get_valueofx by get_hexadecimal_valueof.
|
|
(get_integer_valueof): New procedure.
(get_sizeof): Use new get_integer_value_of.
* gdb.base/sizeof.exp: Replace all uses of get_valueof
by get_integer_valueof.
|
|
* gdb.base/long_long.exp (get_valueof, get_sizeof): Remove.
* gdb.base/dfp-test.exp (get_valueof, get_sizeof): Remove.
* gdb.base/sizeof.exp (get_valueof, get_sizeof): Remove.
* lib/gdb.exp (get_valueof): Move from long_long.exp.
(get_sizeof): Likewise.
|
|
PR fortran/9806
* dwarf2read.c (process_die <DW_TAG_module>, read_module)
(scan_partial_symbols <DW_TAG_module>, add_partial_module): New.
gdb/testsuite/
PR fortran/9806
* gdb.fortran/module.exp, gdb.fortran/module.f90: New.
|
|
* gdb.cp/pr9594.cc: Prevent GCC from optimizing 'a' out.
|
|
gdb/
* target.h (enum target_object): Add new TARGET_OBJECT_SIGNAL_INFO.
* infrun.c (siginfo_value_read, siginfo_value_write): New.
(siginfo_value_funcs): New.
(siginfo_make_value): New.
(_initialize_infrun): Create the $_siginfo convenience variable.
* gdbtypes.h (append_composite_type_field_aligned): Declare.
* gdbtypes.c (append_composite_type_field): Rename to...
(append_composite_type_field_aligned): ... this. Add ALIGNMENT
argument. Handle it.
(append_composite_type_field): Rewrite on top of
append_composite_type_field_aligned.
* value.h (internalvar_make_value): New typedef.
(struct internalvar) <make_value>: New field.
(create_internalvar_type_lazy): Declare.
* value.c (create_internalvar): Clear make_value.
(create_internalvar_type_lazy): New.
(value_of_internalvar): If make_value is set use it.
(preserve_values): Skip internal variables that don't have a
value.
* gdbarch.sh (get_siginfo_type): New.
* gdbarch.h, gdbarch.c: Regenerate.
* linux-tdep.h, linux-tdep.c: New.
* amd64-linux-tdep.c: Include "linux-tdep.h".
(amd64_linux_init_abi): Register linux_get_siginfo_type and
linux_get_siginfo_mapper.
* i386-linux-tdep.c: Include "linux-tdep.h".
(i386_linux_init_abi): Register linux_get_siginfo_type and
linux_get_siginfo_mapper.
* arm-linux-tdep.c: Include "linux-tdep.h".
(i386_linux_init_abi): Register linux_get_siginfo_type and
linux_get_siginfo_mapper.
* linux-nat.c (linux_xfer_siginfo): New.
(linux_nat_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
* remote.c (PACKET_qXfer_siginfo_read)
(PACKET_qXfer_siginfo_write): New.
(feature remote_protocol_features): Add "qXfer:siginfo:read" and
"qXfer:siginfo:write" features.
(remote_xfer_partial): Handle TARGET_OBJECT_SIGNAL_INFO.
(_initialize_remote): Add "set/show remote read-siginfo-object"
and "set/show remote write-siginfo-object" commands.
* Makefile.in (ALL_TARGET_OBS): Add linux-tdep.o.
(HFILES_NO_SRCDIR): Add linux-tdep.h.
(ALLDEPFILES): Add linux-tdep.c.
* configure.tgt (arm*-*-linux* | arm*-*-uclinux*)
(i[34567]86-*-linux*, x86_64-*-linux*): Add linux-tdep.o to
gdb_target_obs.
2009-02-06 Pedro Alves <pedro@codesourcery.com>
gdb/gdbserver/
* server.c (handle_query): Report qXfer:siginfo:read and
qXfer:siginfo:write as supported and handle them.
* target.h (struct target_ops) <qxfer_siginfo>: New field.
* linux-low.c (linux_xfer_siginfo): New.
(linux_target_ops): Set it.
2009-02-06 Pedro Alves <pedro@codesourcery.com>
gdb/doc/
* gdb.texinfo (Signals): Document $_siginfo.
(Convenience Variables): Mention $_siginfo.
(Remote Configuration): Document qXfer:siginfo:read,
qXfer:siginfo:write packets, and the read-siginfo-object,
write-siginfo-object commands.
2009-02-06 Pedro Alves <pedro@codesourcery.com>
gdb/testsuite/
* gdb.base/siginfo-obj.c, gdb.base/siginfo-obj.exp: New.
|
|
2009-02-06 Tom Tromey <tromey@redhat.com>
* Makefile.in (SUBDIR_PYTHON_OBS): Add python-cmd.o.
(SUBDIR_PYTHON_SRCS): Add python-cmd.c.
(python-cmd.o): New target.
* cli/cli-decode.c (set_cmd_completer): Add self parameter to
completer prototype.
(add_cmd): Initialize destroyer member of cmd_list_element. Use
make_symbol_completion_list_fn as completer.
(delete_cmd): Call destroyer if one is set.
* cli/cli-decode.h (cmd_list_element): Add cmd parameter to
completer member. Add destroyer member.
(set_cmd_completer): Add self parameter to
completer prototype.
* command.h (set_cmd_completer): Add cmd parameter to
completer prototype.
* completer.c (noop_completer, filename_completer,
location_completer, expression_completer, command_completer): Adapt
to new completer prototype.
(complete_line_internal): Pass new parameter to completer function.
* completer.h (noop_completer, filename_completer,
location_completer, expression_completer, command_completer): Adapt
prototypes to new completer prototype.
* interps.c (interpreter_completer): Adapt to new completer
prototype.
* python/python-cmd.c: New file.
* python/python-internal.h (gdbpy_initialize_commands): Add
prototype.
(gdbpy_doc_cst): Add forward declaration.
* python/python.c (gdbpy_doc_cst): Declare.
(_initialize_python): Call gdbpy_initialize_commands. Initialize
gdbpy_doc_cst.
* symtab.c (make_symbol_completion_list_fn): New function.
* symtab.h (make_symbol_completion_list_fn): Add prototype.
gdb/doc/
2009-02-06 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Python API): Add entry for Commands In Python.
(Commands In Python): New node.
gdb/testsuite/
2009-02-06 Thiago Jung Bauermann <bauerman@br.ibm.com>
* gdb.python/python-cmd.exp: New file.
|
|
* gdb.arch/i386-sse.c (main): Replace call to puts by an nop asm.
|
|
* gdb.base/sigbpt.exp: Detect which signal is received when a NULL
pointer is dereferenced and use this signal name in regexp.
* gdb.base/signull.exp: Ditto.
* gdb.base/sigbpt.c (main): Catch SIGBUS too.
* gdb.base/signull.c (main): Ditto.
|
|
2009-02-04 Tom Tromey <tromey@redhat.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
Phil Muldoon <pmuldoon@redhat.com>
* python/python-internal.h (gdbpy_get_value_from_history): Rename
prototype to gdbpy_history.
(gdbpy_is_string): Declare.
(python_string_to_host_string): Declare.
* python/python-utils.c (gdbpy_is_string): New function.
(unicode_to_encoded_string): New function.
(unicode_to_target_string): Use it.
(python_string_to_host_string): New function.
* python/python-value.c (valpy_address): New function.
(convert_value_from_python): Use gdbpy_is_string. Change to throw
Python exception instead of a GDB exception on error. Properly check
Python booleans.
(valpy_getitem): Convert field name to host string. Handle array
accesses. Adapt to new behaviour of convert_value_from_python.
(valpy_new): Adapt to new behaviour of convert_value_from_python.
(enum valpy_opcode) <VALPY_LSH, VALPY_RSH, VALPY_BITAND,
VALPY_BITXOR, VALPY_BITOR>: New constants.
(valpy_binop): Update. Adapt to new behaviour of
convert_value_from_python.
(valpy_invert): New function.
(valpy_lsh): Likewise.
(valpy_rsh): Likewise.
(valpy_and): Likewise.
(valpy_or): Likewise.
(valpy_xor): Likewise.
(valpy_richcompare): Call convert_value_from_python instead of doing
conversions itself.
(is_intlike, valpy_int, valpy_long, valpy_float): New functions.
(gdbpy_get_value_from_history): Rename
function to gdbpy_history.
(gdbpy_initialize_values): Don't set tp_new.
(value_object_type): Add valpy_new.
(value_object_methods): Add `address' entry.
(value_object_as_number): Update for new methods.
* python/python.c (GdbMethods): Rename entry from
`get_value_from_history' to `history'.
gdb/doc/
2009-02-04 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Basic Python): Document gdb.history.
gdb/testsuite/
2009-02-04 Tom Tromey <tromey@redhat.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
* gdb.python/python-value.exp: Use `gdb.history' instead of
`gdb.value_from_history'.
(test_value_numeric_ops): Add test for conversion of enum constant.
* gdb.python/python-value.c (enum e): New type.
(evalue): New global.
(main): Use argv.
|
|
* gdb.ada/uninitialized_vars.exp: New testcase.
|
|
gdb/testsuite
* gdb.cp/cpcompletion.exp: Name the test "pr9594".
* gdb.cp/pr2489.cc: Rename...
* gdb.cp/pr9594.cc: ... to this.
|
|
PR gdb/2489:
* completer.c (count_struct_fields): Count method names.
(add_struct_fields): Add matching method names.
gdb/testsuite
* gdb.cp/Makefile.in (EXECUTABLES): Add pr2489.
* gdb.cp/pr2489.cc: New file.
* gdb.cp/cpcompletion.exp: New file.
|
|
PR exp/9059:
* valops.c (find_overload_match): Follow typedefs before taking
address of object argument.
gdb/testsuite
PR exp/9059:
* gdb.cp/call-c.exp: Add regression test.
* gdb.cp/call-c.cc (FooHandle): New typedef.
(main): New variable 'handle'.
|
|
* thread.c (do_captured_list_thread_ids): Report the current
thread id.
|
|
(break_command_really, set_breakpoint): New parameter enabled.
(create_breakpoint, break_command_really): Make breakpoint
disabled if so requested.
* breakpoint.h (set_breakpoint): New parameter enabled.
* mi/mi-cmd-break.c (mi_cmd_break_insert): Handle the -d option.
|
|
(EAX_REG_NUM,ECX_REG_NUM,EDX_REGNUM,EBX_REG_NUM,ESI_REG_NUM)
(EDI_REG_NUM): New macros.
(MODRM_MOD_FIELD,MODRM_REG_FIELD,MODRM_RM_FIELD): New macros.
(SIB_SCALE_FIELD,SIB_INDEX_FIELD,SIB_BASE_FIELD): New macros.
(REG_PREFIX_P): New macro.
* amd64-tdep.h (amd64_displaced_step_copy_insn): Declare.
(amd64_displaced_step_fixup): Declare.
* amd64-tdep.c: #include opcode/i386.h, dis-asm.h.
(amd64_arch_regmap): Move out of amd64_analyze_stack_align
and make static global.
(amd64_arch_regmap_len): New static global.
(amd64_arch_reg_to_regnum): New function.
(struct amd64_insn): New struct.
(struct displaced_step_closure): New struct.
(onebyte_has_modrm,twobyte_has_modrm): New static globals.
(rex_prefix_p,skip_prefixes)
(amd64_insn_length_fprintf,amd64_insn_length_init_dis)
(amd64_insn_length,amd64_get_unused_input_int_reg)
(amd64_get_insn_details,fixup_riprel,fixup_displaced_copy)
(amd64_displaced_step_copy_insn)
(amd64_absolute_jmp_p,amd64_absolute_call_p,amd64_ret_p)
(amd64_call_p,amd64_breakpoint_p,amd64_syscall_p)
(amd64_displaced_step_fixup): New functions.
* amd64-linux-tdep.c: #include arch-utils.h.
(amd64_linux_init_abi): Install displaced stepping support.
* gdb.arch/amd64-disp-step.S: New file.
* gdb.arch/amd64-disp-step.exp: New file.
* gdb.arch/i386-disp-step.S: New file.
* gdb.arch/i386-disp-step.exp: New file.
|
|
using quotes instead of braces to fix cygwin failures.
|
|
* cli/cli-decode.c (add_setshow_zuinteger_cmd): New.
* cli/cli-setshow.c (do_setshow_command): Handle it.
* command.h (enum var_types): Add var_zuinteger.
(add_setshow_zuinteger_cmd): Declare.
* valprint.c (_initialize_valprint): Change the set input-radix
and set output-radix commands to zuinteger type.
2009-01-23 Pedro Alves <pedro@codesourcery.com>
* gdb.base/radix.exp: Add tests to ensure that that set
input-radix 0 and set output-radix 0 are really rejected.
|
|
copyright years.
|
|
PR gdb/9664:
* infrun.c (normal_stop): Tag threads as stopped, and run the
hook-stop before printing the stack frame.
2009-01-23 Pedro Alves <pedro@codesourcery.com>
PR gdb/9664:
* gdb.base/hook-stop-frame.c, gdb.base/hook-stop-frame.exp: New.
|
|
PR c++/9631:
* gnu-v3-abi.c (gnuv3_baseclass_offset): Call check_typedef on
vbasetype.
2009-01-22 Pedro Alves <pedro@codesourcery.com>
PR c++/9631:
* gdb.cp/pr9631.cc, gdb.cp/pr9631.exp: New.
|
|
* gdb.server/file-transfer.exp: Use EXEEXT variable for
binfile definition to fix Windows OS failure.
|
|
* infcmd.c (signal_command): Do not specify a resume PC.
testsuite/
PR gdb/9346
* gdb.base/interrupt.c (sigint_handler): New.
(main): Install a SIGINT handler if SIGNALS is defined. Exit
on error.
* gdb.base/interrupt.exp: Define SIGNALS unless gdb,nosignals.
Test "signal SIGINT".
|
|
caller_state.
(dummy_frame_push): Replace caller_regcache arg with caller_state.
All callers updated.
(remove_dummy_frame,pop_dummy_frame,lookup_dummy_frame): New fns.
(dummy_frame_pop): Rewrite. Verify requested frame is in the
dummy frame stack. Restore program state.
(cleanup_dummy_frames): Rewrite.
(dummy_frame_sniffer): Update. Make static.
* dummy-frame.h (regcache,frame_info): Delete forward decls.
(inferior_thread_state): New forward decl.
(dummy_frame_push): Update prototype.
* frame.c (frame_pop): dummy_frame_pop now does all the work for
DUMMY_FRAMEs.
* infcall.c (breakpoint_auto_delete_contents): Delete.
(get_function_name,run_inferior_call): New fns.
(call_function_by_hand): Simplify by moving some code to
get_function_name, run_inferior_call. Inferior function call wrapped
in TRY_CATCH so there's less need for cleanups and all exits from
proceed are handled similarily. Detect program exit.
Detect program stopping in a different thread.
Make error messages more consistent.
* inferior.h (inferior_thread_state): Declare (opaque type).
(save_inferior_thread_state,restore_inferior_thread_state,
make_cleanup_restore_inferior_thread_state,
discard_inferior_thread_state, get_inferior_thread_state_regcache):
Declare.
(save_inferior_status): Update prototype.
* infrun.c: (normal_stop): When stopped for the completion of an
inferior function call, verify the expected stack frame kind.
(inferior_thread_state): New struct.
(save_inferior_thread_state,restore_inferior_thread_state,
do_restore_inferior_thread_state_cleanup,
make_cleanup_restore_inferior_thread_state,
discard_inferior_thread_state,
get_inferior_thread_state_regcache): New functions.
(inferior_status): Move stop_signal, stop_pc, registers to
inferior_thread_state. Remove restore_stack_info.
(save_inferior_status): Remove arg restore_stack_info.
All callers updated. Remove saving of state now saved by
save_inferior_thread_state.
(restore_inferior_status): Remove restoration of state now done by
restore_inferior_thread_state.
(discard_inferior_status): Remove freeing of registers, now done by
discard_inferior_thread_state.
* gdb.base/break.exp: Update expected gdb output.
* gdb.base/sepdebug.exp: Ditto.
* gdb.mi/mi-syn-frame.exp: Ditto.
* gdb.mi/mi2-syn-frame.exp: Ditto.
* gdb.base/call-signal-resume.exp: New file.
* gdb.base/call-signals.c: New file.
* gdb.base/unwindonsignal.exp: New file.
* gdb.base/unwindonsignal.c: New file.
* gdb.threads/interrupted-hand-call.exp: New file.
* gdb.threads/interrupted-hand-call.c: New file.
* gdb.threads/thread-unwindonsignal.exp: New file.
|
|
* cli/cli-cmds.c (show_user): Update calls to show_user_1. Call
show_user_1 for prefix commands.
* cli/cli-decode.c (help_cmd_list): Recurse for "help user-defined".
* cli/cli-script.c (validate_comname): Rewrite to handle prefix
commands. Return the containing command list.
(define_command, document_command): Update to handle prefix commands.
(show_user_1): Add prefix and name arguments. Handle prefix
commands.
* cli/cli-script.h (show_user_1): Update prototype.
doc/
* gdb.texinfo (Define, Hooks): Document prefix command support.
testsuite/
* gdb.base/define.exp: Test defining and hooking prefix commands.
* gdb.python/python.exp: Update test for "show user" output.
|
|
in the previous copyright update.
|
|
* f-typeprint.c (f_type_print_base <TYPE_CODE_STRUCT>): Fix output
spacing, a regression from 2008-04-22.
gdb/testsuite/
* gdb.fortran/derived-type.exp: New variables int4 and real4. Match
now the output exactly, using less wildcards. Expect also the output
of gfortran-4.3. Update for the f-valprint.c modification from
2008-04-22.
* gdb.fortran/subarray.exp: Expect also the output of gfortran-4.3.
Remove gdb_test test names where matching the command.
|
|
|
|
PR breakpoints/9681:
* exceptions.h (enum errors): New error type, MEMORY_ERROR.
* corefile.c (memory_error): Rewrite to throw a MEMORY_ERROR.
* breakpoint.c (fetch_watchpoint_value): Ignore MEMORY_ERRORs, but
retrow all other exceptions.
2009-01-01 Pedro Alves <pedro@codesourcery.com>
PR breakpoints/9681:
* gdb.base/watchpoint.exp: Add regression test.
|
|
* gdb.threads/attach-into-signal.exp: Don't use
gdb_suppress_entire_file.
* gdb.threads/attach-stopped.exp: Ditto.
* gdb.threads/attachstop-mt.exp: Ditto.
|
|
PR gdb/8812:
* infrun.c (handle_command): Don't print a header or notify the
target about signal changes if we didn't change any signal.
2008-12-31 Pedro Alves <pedro@codesourcery.com>
PR gdb/8812:
* gdb.base/signal.exp: Change kfail to fail, and update PR number.
|
|
PR gdb/7536:
* valprint.c (input_radix_1): New static global.
(set_input_radix): Use it instead of "input_radix".
(set_input_radix_1): Always leave input_radix_1 set to
input_radix.
(output_radix_1): New static global.
(set_output_radix): Use it instead of "output_radix".
(set_output_radix_1): Always leave output_radix_1 set to
output_radix.
(_initialize_valprint): Use "input_radix_1" instead of
"input_radix" with the "input-radix" command. Use
"output_radix_1" instead of "output_radix" with the "output-radix"
command.
2008-12-29 Pedro Alves <pedro@codesourcery.com>
PR gdb/7536:
* gdb.base/radix.exp: Add tests to ensure invalid input radices
and unsupported output radices are really rejected.
|
|
|
|
* c-exp.y (ident_tokens): New global.
(struct token) <cxx_only>: New field.
(tokentab3): Update.
(tokentab2): Update.
(yylex): Use ident_tokens.
gdb/testsuite
* gdb.cp/punctuator.exp: New file.
|
|
Fix memory double-free.
* completer.c (line_completion_function): Clear LIST after called xfree.
gdb/testsuite/
* gdb.base/completion.exp (Completing non-existing component): New test.
|
|
* gdb.arch/ppc-fp.exp, gdb.arch/vsx-regs.exp, gdb.base/watchpoint-hw.c,
gdb.gdbtk/browser.test, gdb.gdbtk/console.test, gdb.gdbtk/srcwin.test,
gdb.gdbtk/srcwin2.test, gdb.gdbtk/srcwin3.test, gdb.gdbtk/windows.test,
gdb.threads/tls2.c: Remove reference to bug-gdb@prep.ai.mit.edu .
|
|
Fix hw watchpoints created before the inferior was started.
* breakpoint.c (update_watchpoint): Convert the bp_watchpoint and
bp_hardware_watchpoint types according to the current runtime state.
gdb/testsuite/
* gdb.base/watchpoint-hw.exp, gdb.base/watchpoint-hw.c: New.
|
|
* gdb.base/expand-psymtabs.c: Insert code in foo so that the
compiler actually generate code at the expected line number.
|
|
|
|
PR cli/2563:
* cli/cli-decode.c (delete_cmd): Add hook-related out parameters.
(add_cmd): Update. Install hooks into new command.
(add_alias_cmd): Update.
gdb/testsuite
* gdb.base/commands.exp (redefine_hook_test): New proc.
Call it.
|
|
* macroexp.c (get_pp_number): Require digit after leading ".".
Correctly handle suffixes.
gdb/testsuite
* gdb.base/macscp.exp: New regression test.
|