aboutsummaryrefslogtreecommitdiff
path: root/gdb
AgeCommit message (Collapse)AuthorFilesLines
2012-03-13gdb/Jan Kratochvil11-49/+237
* common/linux-procfs.c (linux_proc_get_int): New, from linux_proc_get_tgid, change its LWPID type to pid_t, add parameter field. (linux_proc_get_tgid): Only call linux_proc_get_int. (linux_proc_get_tracerpid): New. (linux_proc_pid_has_state): New, from linux_proc_pid_is_zombie. (linux_proc_pid_is_stopped, linux_proc_pid_is_zombie): Only call linux_proc_pid_has_state. * common/linux-procfs.h (linux_proc_get_tracerpid): New declaration. * common/linux-ptrace.c: Include linux-procfs.h and buffer.h. (linux_ptrace_attach_warnings): New. * common/linux-ptrace.h (struct buffer, linux_ptrace_attach_warnings): New declaration. * linux-nat.c: Include exceptions.h, linux-ptrace.h and buffer.h. (linux_nat_attach): New variables ex, buffer, message and message_s. Wrap to_attach by TRY_CATCH and call linux_ptrace_attach_warnings. gdb/gdbserver/ * linux-low.c (linux_attach_lwp_1): New variable buffer. Call linux_ptrace_attach_warnings. gdb/testsuite/ * gdb.base/attach-twice.c: New files. * gdb.base/attach-twice.exp: New files.
2012-03-13gdb/Jan Kratochvil26-54/+146
* Makefile.in (linux-ptrace.o): New. * common/linux-procfs.c (linux_proc_pid_is_zombie): New, from linux-nat.c. * common/linux-procfs.h (linux_proc_pid_is_zombie): New declaration. * common/linux-ptrace.c: New file. * config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-ptrace.o. * config/arm/linux.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/mips/linux.mh: Likewise. * config/pa/linux.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/s390.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/xtensa/linux.mh: Likewise. * linux-nat.c (linux_lwp_is_zombie): Remove, move it to common/linux-procfs.c. (wait_lwp): Rename linux_lwp_is_zombie to linux_proc_pid_is_zombie. gdb/gdbserver/ * Makefile.in (linux-ptrace.o): New. * configure.srv (arm*-*-linux*, bfin-*-*linux*, crisv32-*-linux*) (cris-*-linux*, i[34567]86-*-linux*, ia64-*-linux*, m32r*-*-linux*) (m68*-*-linux*, m68*-*-uclinux*, mips*-*-linux*, powerpc*-*-linux*) (s390*-*-linux*, sh*-*-linux*, sparc*-*-linux*, tic6x-*-uclinux) (x86_64-*-linux*, xtensa*-*-linux*): Add linux-ptrace.o to SRV_TGTOBJ of these targets. * linux-low.c (linux_attach_lwp_1): Remove redundent else clause.
2012-03-132012-03-13 Hui Zhu <teawater@gmail.com>Pedro Alves7-29/+72
Pedro Alves <palves@redhat.com> * breakpoint.c (init_breakpoint_sal): New flags parameter. Handle CREATE_BREAKPOINT_FLAGS_INSERTED. (create_breakpoint_sal, create_breakpoints_sal) (base_breakpoint_create_breakpoints_sal) (tracepoint_create_breakpoints_sal) (strace_marker_create_breakpoints_sal): New flags parameter. Pass down. (break_command_1, handle_gnu_v3_exceptions, trace_command) (ftrace_command, strace_command): Adjust. (create_tracepoint_from_upload): Pass CREATE_BREAKPOINT_FLAGS_INSERTED. * breakpoint.h (enum breakpoint_create_flags): New. (create_breakpoint): New flags parameter. * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust. * python/py-breakpoint.c (bppy_init): Adjust. * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust. * spu-tdep.c (spu_catch_start): Adjust.
2012-03-132012-03-13 Pedro Alves <palves@redhat.com>Pedro Alves2-2/+34
Hui Zhu <teawater@gmail.com> Yao Qi <yao@codesourcery.com> * remote.c (struct remote_state): New field `starting_up'. (remote_start_remote): Set and clear it. (remote_can_download_tracepoint): If starting up, return false.
2012-03-13gdb:Yao Qi6-44/+110
* inferior.h (struct inferior): Remove fields any_syscall_count, syscalls_counts and total_syscalls_count. Move them to new struct catch_syscall_inferior_data in breakpoint.c. * breakpoint.c: Call DEF_VEC_I(int). (struct catch_syscall_inferior_data): New. (get_catch_syscall_inferior_data): New. (catch_syscall_inferior_data_cleanup): New. (insert_catch_syscall): Update to access data in struct catch_syscall_inferior_data. (insert_catch_syscall): Likewise. (remove_catch_syscall): Likewise. (remove_catch_syscall): Likewise. (is_syscall_catchpoint_enabled): Likewise. (add_catch_command): Likewise. (_initialize_breakpoint): Register cleanup. * breakpoint.h: Removed DEF_VEC_I(int). * dwarf2loc.c: Call DEF_VEC_I(int). * mi/mi-main.c: Likewise.
2012-03-13*** empty log message ***gdbadmin1-1/+1
2012-03-12 * inf-ptrace.c (inf_ptrace_post_attach): Make static.Mark Kettenis2-1/+5
2012-03-12Add missing prototypes for build in ppx-aix.Joel Brobecker4-0/+12
gdb/ChangeLog: 2012-03-12 Chris January <chris.january@allinea.com> * aix-thread.c (_initialize_aix_thread): Add prototype. * rs6000-nat.c (_initialize_rs6000_nat): Ditto. * xcoffsolib.c (_initialize_xcoffsolib): Ditto.
2012-03-12amd64bsd-nat.c: Move "amd64bsd-nat.h" include...Joel Brobecker2-1/+6
... after include of "amd64-nat.h". gdb/ChangeLog: * amd64bsd-nat.c: Move #include of "amd64bsd-nat.h" after include of "amd64-nat.h".
2012-03-12 * buildsym.c (record_pending_block): Now static.Tom Tromey3-9/+10
* buildsym.h: (record_pending_block): Remove.
2012-03-122012-03-12 Andreas Tobler <andreast@fgznet.ch>Andreas Tobler2-0/+5
* amd64bsd-nat.c: Include amd64bsd-nat.h.
2012-03-12*** empty log message ***gdbadmin1-1/+1
2012-03-11*** empty log message ***gdbadmin1-1/+1
2012-03-10*** empty log message ***gdbadmin1-1/+1
2012-03-09 * dwarf2read.c (struct dwarf2_cu) <checked_producer,Tom Tromey2-10/+31
producer_is_gxx_lt_4_6>: New fields. (producer_is_gxx_lt_4_6): Use and update producer cache fields.
2012-03-09 * dwarf2read.c (dwarf2_attr): Avoid tail-recursive call.Tom Tromey2-13/+19
2012-03-09Fix a couple of ChangeLog entries.Joel Brobecker1-4/+2
2012-03-09 * lib/gdb.exp (gdb_get_line_number): Throw anKeith Seitz5-10/+17
error instead of returning -1. * gdb.base/break.exp: Remove unused variable bp_location5. * gdb.base/hbreak2.exp: Likewise. * gdb.base/sepdebug.exp: Likewise.
2012-03-092012-03-08 Yao Qi <yao@codesourcery.com>Yao Qi6-46/+187
Pedro Alves <palves@redhat.com> Fix PR server/13392. * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Check offset of JMP insn. * tracepoint.c (remove_tracepoint): New. (cmd_qtdp): Call remove_tracepoint when failed to install. 2012-03-08 Yao Qi <yao@codesourcery.com> Pedro Alves <palves@redhat.com> Fix PR server/13392. * gdb.trace/change-loc.exp (tracepoint_change_loc_1): Remove kfail. (tracepoint_change_loc_2): Remove kfail. Return if failed to download tracepoints. * gdb.trace/pending.exp (pending_tracepoint_works): Likewise. (pending_tracepoint_resolved_during_trace): Likewise. (pending_tracepoint_installed_during_trace): Likewise. (pending_tracepoint_with_action_resolved): Likewise.
2012-03-09Add missing _initialize_ravenscar_sparc prototype.Joel Brobecker2-0/+8
This is required now that we compile GDB with -Wmissing-prototype. gdb/ChangeLog: * ravenscar-sparc-thread.c (_initialize_ravenscar_sparc): Add prototype.
2012-03-09Add missing _initialize_ravenscar prototype.Joel Brobecker2-0/+7
gdb/ChangeLog: * ravenscar-thread.c (_initialize_ravenscar): Add prototype.
2012-03-09*** empty log message ***gdbadmin1-1/+1
2012-03-08gdb/Jan Kratochvil3-2/+8
Fix -Wmissing-prototypes build. * arm-linux-nat.c (get_thread_id): Make it static. * xtensa-linux-nat.c (get_thread_id): Likewise.
2012-03-08Make breakpoint condition detection trace conditional on remote_debug.Joel Brobecker2-1/+7
gdb/gdbserver/ChangeLog: * server.c (process_point_options): If a conditional expression is found, only print a message if remote_debug is nonzero.
2012-03-08 * gdb.ada/array_bounds.exp: Get breakpoint for lineKeith Seitz3-3/+8
with "START", not "STOP". * gdb.python/py-infthread.exp: Do not continue to line marked "Break here.", which is undefined.
2012-03-08Revert "ax-gdb: Do not treat enums and bools as integers."Joel Brobecker1-0/+6
This patch was checked hasn't been reviewed and has been checked in by mistake (wrong patch applied).
2012-03-082012-03-08 Luis Machado <lgustavo@codesourcery.com>Luis Machado2-24/+23
Revert: 2012-03-03 Jan Kratochvil <jan.kratochvil@redhat.com> Implement testsuite workaround for PR breakpoints/13781. * gdb.cp/mb-templates.exp: New loop with variable $workaround. (set breakpoint condition-evaluation host): New conditional command.
2012-03-082012-03-08 Luis Machado <lgustavo@codesourcery.com>Luis Machado2-6/+10
* ax-gdb.c (gen_fetch): Fail gracefully and use error instead of internal error for unknown/unsupported types.
2012-03-08ax-gdb: Do not treat enums and bools as integers.Joel Brobecker1-6/+0
This patch fixes a problem when using gdb + gdbserver, and trying to break on a function when one of the (enum) parameters is equal to a certain value, and the size of that enum is 1 byte. (gdb) break mixed.adb:15 if light = green Breakpoint 2 at 0x402d5a: file mixed.adb, line 15. (gdb) cont Continuing. [Inferior 1 (process 9742) exited normally] The debugger should have stopped once when our function was call with light set to green. Here is what happens: Because we're using a recent GDBserver, GDB hands off the evaluation of the condition to GDBserver, by providing it in the Z0 packet. This is what GDB sends: $Z0,402d5a,1;X13,26000622100223ff1c16100219162022011327#cf I decoded the condition as follow: 260006 reg 6 -> push 2210 const8 0x10 -> push 02 add (stack now has 1 element equal to reg6 + 16) 23ff1c const16 0xff1c 1610 ext 16 (sign extend 16 bits) 02 add (stack now has 1 element equal to reg6 + 16 - 228) 19 ref32: Pop as addr, push 32bit value at addr. 1620 ext 32 (sign extend 32 bits) 2201 const8 0x01 13 equal 27 end The beginning of the agent expression can be explained by the address of symbol "light": (gdb) info addr light Symbol "light" is a variable at frame base reg $rbp offset 16+-228. However, the mistake is the "ext 32" operation (extend 32 bits), because our variable is *not* 32bits, only 8: (gdb) print light'size $5 = 8 But the reason why GDB decides to use a 32bit extension is because it overrides the symbol's type with a plain integer type in ax-gdb.c:gen_usual_unary... /* If the value is an enum or a bool, call it an integer. */ case TYPE_CODE_ENUM: case TYPE_CODE_BOOL: value->type = builtin_type (exp->gdbarch)->builtin_int; break; ... before calling require_rvalue. And of course, that causes the generator to generate a sizeof(int) extension of the result. One way to fix this would be to use an integer type of the correct size, but I do not understand why this is necessary. The two routines that use that information to generate the opcode down the line are gen_fetch (for a memory value), or gen_extend (for a register value). And they both have handling of enums and bools. So the fix we elected to implement was simply to remove that code. gdb/ChangeLog: * ax-gdb.c (gen_usual_unary): Remove special handling of enum and bool types.
2012-03-08gdb/Jan Kratochvil5-3/+38
Fix CU relative vs. absolute DIE offsets. * dwarf2loc.h (dwarf2_fetch_die_location_block): Rename parameter offset to offset_in_cu. * dwarf2read.c (process_enumeration_scope): Add CU offset to TYPE_OFFSET. (dwarf2_fetch_die_location_block): Rename parameter offset to offset_in_cu. New variable offset, add CU offset to OFFSET_IN_CU. gdb/testsuite/ Fix CU relative vs. absolute DIE offsets. * gdb.dwarf2/dw2-op-call.S: New compilation unit preceding the existing one.
2012-03-08gdb/Jan Kratochvil11-76/+138
* libunwind-frame.c: Rename to ... * ia64-libunwind-tdep.c: ... here. * libunwind-frame.h: Rename to ... * ia64-libunwind-tdep.h: ... here. * Makefile.in (HFILES_NO_SRCDIR): Rename libunwind-frame.h to ia64-libunwind-tdep.h. (ALLDEPFILES): Rename libunwind-frame.c to ia64-libunwind-tdep.c. * README (--with-libunwind): Rename to ... (--with-libunwind-ia64): ... here, note it is ia64 specific now. * config.in: Regenerate. * configure: Regenerate. * configure.ac: New option --with-libunwind-ia64, make the AS_HELP_STRING ia64 specific. Deprecate option --with-libunwind. Remove AC_DEFINE for HAVE_LIBUNWIND. * ia64-libunwind-tdep.c: Make the file top comment ia64 specific. Rename libunwind-frame.h #include to ia64-libunwind-tdep.h. Rename libunwind-frame in the general comment. * ia64-libunwind-tdep.h: Make the file top comment ia64 specific. Rename symbol LIBUNWIND_FRAME_H to IA64_TDEP_LIBUNWIND_FRAME_H. Move forward declarations inside #ifndef. Rename libunwind-frame in the general comment. * ia64-tdep.c: Rename libunwind-frame.h #include to ia64-libunwind-tdep.h. (ia64_gdb2uw_regnum, ia64_uw2gdb_regnum, ia64_is_fpreg) (ia64_libunwind_descr): Rename libunwind-frame to ia64-libunwind-tdep in these function comments. * ia64-tdep.h: Rename libunwind-frame.h #include to ia64-libunwind-tdep.h. * ia64-vms-tdep.c (ia64_vms_libunwind_descr): Rename libunwind-frame to ia64-libunwind-tdep in that data comment.
2012-03-08gdb/Jan Kratochvil2-0/+5
* libunwind-frame.h (struct frame_unwind): New declaration.
2012-03-08Fix thinko in help of "set breakpoint condition-evaluation".Joel Brobecker2-1/+6
The 3 valid values for this setting are "auto", "host" and "target". The help was advertising one of them to be "gdb" instead of "host". gdb/ChangeLog: * breakpoint.c (_initialize_breakpoint): Fix error in help of "set breakpoint condition-evaluation" command.
2012-03-08gdb/Tristan Gingold7-0/+16
2012-03-08 Tristan Gingold <gingold@adacore.com> * sparc-stub.c: Move to stubs/ * sh-stub.c: Likewise. * m68k-stub.c: Likewise. * m32r-stub.c: Likewise. * i386-stub.c: Likewise. gdb/stubs/ 2012-03-08 Tristan Gingold <gingold@adacore.com> * sparc-stub.c: Move from .. * sh-stub.c: Likewise. * m68k-stub.c: Likewise. * m32r-stub.c: Likewise. * i386-stub.c: Likewise.
2012-03-08* m68klinux-tdep.c (m68k_linux_init_abi): RegisterAndreas Schwab2-0/+5
linux_get_siginfo_type.
2012-03-08* m68klinux-nat.c: Include "gdb_proc_service.h".Andreas Schwab2-0/+31
(PTRACE_GET_THREAD_AREA): Define. (ps_get_thread_area): New function.
2012-03-08gdb/Yao Qi2-67/+121
* remote.c (remote_get_noisy_reply): Replace `sprintf' with `xsnprintf'. (remote_query_attached): Likewise. (remote_static_tracepoint_marker_at): Likewise. (remote_set_permissions): Likewise. (remote_detach_1, extended_remote_attach_1): Likewise. (send_g_packet, remote_vkill): Likewise. (extended_remote_disable_randomization): Likewise. (remote_add_target_side_condition): Likewise. (remote_insert_breakpoint): Likewise. (remote_remove_breakpoint): Likewise. (remote_insert_watchpoint): Likewise. (remote_remove_watchpoint): Likewise. (remote_insert_hw_breakpoint): Likewise. (remote_insert_hw_breakpoint): Likewise. (remote_remove_hw_breakpoint): Likewise. (remote_download_command_source): Likewise. (remote_download_tracepoint): Likewise. (remote_download_trace_state_variable): Likewise. (remote_disable_tracepoint): Likewise. (remote_trace_set_readonly_regions): Likewise. (remote_get_tracepoint_status): Likewise. (remote_trace_find): Likewise. (remote_get_trace_state_variable_value): Likewise. (remote_set_disconnected_tracing): Likewise. (remote_set_circular_trace_buffer): Likewise. (remote_get_min_fast_tracepoint_insn_len): Likewise. (remote_use_agent): Likewise. (remote_add_target_side_condition): Add one parameter BUF_SIZE. Update callers.
2012-03-08gdb/testsuite/Jan Kratochvil2-1/+13
Fix false FAIL on distros with relro linkage as default. * gdb.reverse/solib-precsave.exp: Try to compile the test using -Wl,-z,norelro first.
2012-03-08*** empty log message ***gdbadmin1-1/+1
2012-03-072012-03-07 Pedro Alves <palves@redhat.com>Pedro Alves13-9/+359
gdb/doc/ * gdb.texinfo (General Query Packets): Document new QProgramSignals packet. * gdb.texinfo (Remote configuration): Mention "program-signals-packet". gdb/gdbserver/ * linux-low.c (get_detach_signal): New. (linux_detach_one_lwp): Get rid of a pending SIGSTOP with SIGCONT. Pass on pending signals to PTRACE_DETACH. Check the result of the ptrace call. * server.c (program_signals, program_signals_p): New. (handle_general_set): Handle QProgramSignals. * server.h (program_signals, program_signals_p): Declare. gdb/ * NEWS: Mention QProgramSignals. * inferior.h (update_signals_program_target): Declare. * infrun.c: (update_signals_program_target): New. (handle_command): Update the target of the new program signals array changes. * remote.c (PACKET_QProgramSignals): New enum. (last_program_signals_packet): New global. (remote_program_signals): New. (remote_start_remote): Update the target with the program signals list. (remote_protocol_features): Add entry for QPassSignals. (remote_open_1): Free anc clear last_program_signals_packet. (init_remote_ops): Install remote_program_signals. * target.c (update_current_target): Adjust. (target_program_signals): New. * target.h (struct target_ops) <to_program_signals>: New field. (target_program_signals): Declare.
2012-03-072012-03-07 Pedro Alves <palves@redhat.com>Pedro Alves2-0/+7
* NEWS: Add subtitle for new z0/z1 conditional breakpoint extensions.
2012-03-07* m68klinux-nat.c (getregs_supplies): Make static.Andreas Schwab2-3/+9
(getfpregs_supplies): Likewise. (have_ptrace_getregs): Likewise.
2012-03-07*** empty log message ***gdbadmin1-1/+1
2012-03-06Pass absolute die offset in call to get_die_type_at_offsetJoel Brobecker2-1/+6
gdb/ChangeLog: * dwarf2read.c (dwarf2_get_die_type): Pass absolute offset in call to get_die_type_at_offset.
2012-03-06 * mi/mi-cmd-break.c: Enforce coding standards, fix comments.Stan Shebs19-471/+501
* mi/mi-cmd-disas.c: Ditto. * mi/mi-cmd-env.c: Ditto. * mi/mi-cmd-file.c: Ditto. * mi/mi-cmd-stack.c: Ditto. * mi/mi-cmd-target.c: Ditto. * mi/mi-cmd-var.c: Ditto. * mi/mi-cmds.c: Ditto. * mi/mi-cmds.h: Ditto. * mi/mi-console.c: Ditto. * mi/mi-getopt.c: Ditto. * mi/mi-getopt.h: Ditto. * mi/mi-interp.c: Ditto. * mi/mi-main.c: Ditto. * mi/mi-out.c: Ditto. * mi/mi-parse.c: Ditto. * mi/mi-parse.h: Ditto. * mi/mi-symbol-cmds.c: Ditto. * mi/mi-getopt.h: Move mi_opt struct up. * mi/mi-main.c (captured_mi_execute_command): Remove redundant return. * mi/mi-out.c (_initialize_mi_out): Remove empty initialize.
2012-03-06 * proc-service.c (ps_pglobal_lookup): Set the current programTom Tromey2-3/+18
space.
2012-03-06New Ada testcase (bp_on_var.exp).Joel Brobecker5-0/+119
gdb/testsuite/ChangeLog: * gdb.ada/bp_on_var: New testcase.
2012-03-062012-03-06 Pedro Alves <palves@redhat.com>Pedro Alves2-0/+8
* gregset.h [HAVE_SYS_PROCFS_H]: Include <sys/procfs.h>.
2012-03-06New Ada testcase (bp_enum_homonym).Joel Brobecker5-0/+133
gdb/testsuite/ChangeLog: * gdb.ada/bp_enum_homonym: New testcase.
2012-03-06gdb/testsuite/Yao Qi2-1/+9
* gdb.trace/ftrace.exp (test_fast_tracepoints): Run test on target x86_64-*-* and i?86-*-*. Set up KFAIL for gdb/13808.