aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-09-03 * inf-child.c (inf_child_follow_fork) New parameterLuis Machado9-18/+41
detach_fork. * inf-ptrace.c (inf_ptrace_follow_fork): Likewise. * inf-ttrace.c (inf_ttrace_follow_fork): Likewise. * inferior.h (detach_fork): Remove. * infrun.c (detach_fork): Adjust comment and make it static. (follow_fork): Pass detach_fork parameter to target_follow_fork. * linux-nat.c (linux_child_follow_fork): New parameter detach_fork. * target.c (target_follow_fork): New parameter detach_fork. Pass detach_fork as parameter and print its value. * target.h (struct target_ops) <to_follow_fork>: New int parameter. (target_follow_fork): New parameter detach_fork.
2013-09-03Fix build failure in solib-ia64-hpux.cJoel Brobecker2-1/+7
The field "bfd" no longer exists in struct target_section. Use the_bfd_section->owner instead. gdb/ChangeLog: * solib-ia64-hpux.c (ia64_hpux_relocate_section_addresses): Replace sec->bfd by sec->the_bfd_section->owner.
2013-09-03daily updateAlan Modra1-1/+1
2013-09-02gdb/Yao Qi4-18/+26
* linux-tdep.c (linux_is_uclinux): New function. Code moved from linux_has_shared_address_space. (linux_has_shared_address_space): Call linux_is_uclinux. * linux-tdep.h (linux_is_uclinux): Declare. * m68klinux-tdep.c (m68k_linux_get_sigtramp_info): Call linux_is_uclinux.
2013-09-02gdb/Yao Qi7-8/+13
* config/djgpp/fnchange.lst: Remove entry of i386-interix-nat.c and i386-interix-tdep.c. * configure.ac: Remove '*-*-interix*'. * configure: Re-generated. * defs.h (enum gdb_osabi): Remove GDB_OSABI_INTERIX. * i386-cygwin-tdep.c (i386_cygwin_osabi_sniffer): Remove obsolete comments. * osabi.c (gdb_osabi_names): Remove "Interix".
2013-09-02gdb/Yao Qi2-1/+5
* arch-utils.c: Fix typo in the comment to gdbarch_update_p.
2013-09-02[gdbserver] Fix trace-buffer-size.exp FAILs.Pedro Alves2-4/+20
I'm seeing trace-buffer-size.exp failing (with gdbserver): (gdb) PASS: gdb.trace/trace-buffer-size.exp: tstatus check 2 show trace-buffer-size 4 Requested size of trace buffer is 4. (gdb) PASS: gdb.trace/trace-buffer-size.exp: show trace buffer size set trace-buffer-size -1 memory clobbered past end of allocated block Remote connection closed (gdb) FAIL: gdb.trace/trace-buffer-size.exp: set trace buffer size 2 set trace-buffer-size unlimited (gdb) PASS: gdb.trace/trace-buffer-size.exp: set trace-buffer-size unlimited That "memory clobbered past end of allocated block" is mcheck triggering. Valgrind shows: ==23624== Invalid write of size 1 ==23624== at 0x418DD8: clear_trace_buffer (tracepoint.c:1443) ==23624== by 0x418F3A: init_trace_buffer (tracepoint.c:1497) ==23624== by 0x41D95B: cmd_bigqtbuffer_size (tracepoint.c:4061) ==23624== by 0x41DEEC: handle_tracepoint_general_set (tracepoint.c:4193) clear_trace_buffer does: static void clear_trace_buffer (void) { trace_buffer_start = trace_buffer_lo; trace_buffer_free = trace_buffer_lo; trace_buffer_end_free = trace_buffer_hi; trace_buffer_wrap = trace_buffer_hi; /* A traceframe with zeroed fields marks the end of trace data. */ ((struct traceframe *) trace_buffer_free)->tpnum = 0; ((struct traceframe *) trace_buffer_free)->data_size = 0; traceframe_read_count = traceframe_write_count = 0; traceframes_created = 0; } And the tpnum+data_size fields are over 4 bytes... This fixes it by ensuring we allocate space at least for an EOB. We have code elsewhere that relies on the EOB being present (like e.g., find_traceframe), so this seems simplest. gdb/gdbserver/ 2013-09-02 Pedro Alves <palves@redhat.com> * tracepoint.c (TRACEFRAME_EOB_MARKER_SIZE): New macro. (init_trace_buffer): Ensure at least TRACEFRAME_EOB_MARKER_SIZE is allocated. (trace_buffer_alloc): Use TRACEFRAME_EOB_MARKER_SIZE.
2013-09-02record: upcase record_print_flag enumeration constantsMarkus Metzger4-6/+13
* record.h (record_print_flag) <record_print_src_line, record_print_insn_range>: Rename into ... (record_print_flag) <record_print_src_line, record_print_insn_range>: ... this. Update all users.
2013-09-02 * win32-low.c (child_xfer_memory): Check if ReadProcessMemoryPierre Muller2-6/+21
or WriteProcessMemory complete successfully and handle ERROR_PARTIAL_COPY error.
2013-09-02server.c:gdb_read_memory: Fix error return.Pedro Alves2-1/+6
When I added gdb_read_memory, with bits factored out from elsewhere, I missed adjusting this error return. gdb_read_memory has an interface similar to Like GDB's xfer_partial: > /* Read trace frame or inferior memory. Returns the number of bytes > actually read, zero when no further transfer is possible, and -1 on > error. Return of a positive value smaller than LEN does not > indicate there's no more to be read, only the end of the transfer. Returning EIO, a positive value, is obviously bogus, for the caller will confuse it with a successful partial transfer. Found by inspection. Tested on x86_64 Fedora 17. gdb/gdbserver/ 2013-09-02 Pedro Alves <palves@redhat.com> * server.c (gdb_read_memory): Return -1 on traceframe memory read error instead of EIO.
2013-09-02 Fix small indentation error in last commitPierre Muller1-2/+2
2013-09-02 * windows-nat.c (windows_xfer_memory): Handle ERROR_PARTIAL_COPYPierre Muller2-1/+14
error code.
2013-09-02 * windows-nat.c (windows_xfer_memory): Fix compilation failurePierre Muller2-4/+9
by use of plongest function.
2013-09-022013-09-02 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>Andreas Krebbel2-3/+9
* s390-opc.txt: Fix description for fiebra, fidbra, and fixbra. For the load fp integer instructions only the suppression flag was new with z196 version.
2013-09-022013-09-02 Tristan Gingold <gingold@adacore.com>Tristan Gingold3-1/+788
* NEWS: Add entry mentioning support for native Windows x64 SEH data. * amd64-windows-tdep.c: #include "objfiles.h", "frame-unwind.h", "coff/internal.h", "coff/i386.h", "coff/pe.h" and "libcoff.h". (struct amd64_windows_frame_cache): New struct. (amd64_windows_w2gdb_regnum): New global. (pc_in_range, amd64_windows_frame_decode_epilogue) (amd64_windows_frame_decode_insns, amd64_windows_find_unwind_info) (amd64_windows_frame_cache, amd64_windows_frame_prev_register) (amd64_windows_frame_this_id): New functions. (amd64_windows_frame_unwind): New static global. (amd64_windows_skip_prologue): New function. (amd64_windows_init_abi): Call frame_unwind_prepend_unwinder with amd64_windows_frame_unwind. Call set_gdbarch_skip_prologue with amd64_windows_skip_prologue.
2013-09-02daily updateAlan Modra1-1/+1
2013-09-01daily updateAlan Modra1-1/+1
2013-08-312013-08-31 John David Anglin <dave.anglin@bell.net>Dave Anglin2-1/+6
* elf64-hppa.c (elf_hppa_final_link_relocate): Add missing '%' to format string.
2013-08-31daily updateAlan Modra1-1/+1
2013-08-30GDB 7.6.1 released.gdbadmin1-0/+4
2013-08-30gdb.base/code_elim.exp - force .bss creation.Andrew Burgess2-1/+14
https://sourceware.org/ml/gdb-patches/2013-08/msg00920.html gdb/ChangeLog * gdb.base/code_elim1.c (my_bss_symbol): New variable added. (my_static_symbol): Add comment. (main): Reference my_bss_symbol.
2013-08-30MI -trace-find, print frame with LOC_AND_ADDRESS instead of SRC_AND_LOC.Pedro Alves2-1/+6
When I looked for print_stack_frame calls in MI, I wondered why this one passing down SRC_AND_LOC. print_stack_frame does: /* For mi, alway print location and address. */ if (ui_out_is_mi_like_p (current_uiout)) print_what = LOC_AND_ADDRESS; So it really doesn't matter which value is passed down, but, to avoid confusion in readers, it's better to use the MI standard here. There's another SRC_AND_LOC in mi-interp.c, but that one makes sense. gdb/ 2013-08-30 Pedro Alves <palves@redhat.com> * mi/mi-main.c (mi_cmd_trace_find): Use LOC_AND_ADDRESS instead of SRC_AND_LOC.
2013-08-30restore_selected_frame: tweak warning.Pedro Alves2-2/+7
I noticed SRC_LINE has special handling within print_stack_frame (mid statement handling), so I audited all uses, and noticed the one in restore_selected_frame. I actually added this warning myself back in 2008, but reading back, I think we can do better. "reparsed frame" is probably confusing to users. Old: warning: Couldn't restore frame #2 in current thread, at reparsed frame #0 45 w = 0; (gdb) New: warning: Couldn't restore frame #2 in current thread. Bottom (innermost) frame selected: #0 foo () at foo.c:45 45 w = 0; (gdb) Tested on x86_64 Fedora 17. gdb/ 2013-08-30 Pedro Alves <palves@redhat.com> * thread.c (restore_selected_frame): Use SRC_AND_LOC, and change warning text.
2013-08-30bsd-kvm.c: Fix arguments to print_stack_frame.Pedro Alves2-3/+8
1 is SRC_AND_LOC. Then, this is passing -1 as print_level argument to print_stack_frame. -1 is not a valid print_level value (it's a regular boolean). But, it used to be, before <https://sourceware.org/ml/gdb-patches/2004-04/msg00585.html>. What happened is that bsd-kvm.c did not exist at the time of that patch, but went into the tree about a month after, without being adjusted to the new interface. Fixed now, exactly as e.g., ocd.c had been adjusted: > --- ocd.c 18 Jan 2004 19:26:51 -0000 1.28 > +++ ocd.c 23 Apr 2004 14:29:12 -0000 > @@ -225,7 +225,7 @@ > flush_cached_frames (); > registers_changed (); > stop_pc = read_pc (); > - print_stack_frame (get_selected_frame (), -1, 1); > + print_stack_frame (get_selected_frame (), 0, SRC_AND_LOC); gdb/ 2013-08-30 Pedro Alves <palves@redhat.com> * bsd-kvm.c (bsd_kvm_open, bsd_kvm_proc_cmd, bsd_kvm_pcb_cmd): Adjust arguments to print_stack_frame.
2013-08-30ada-tasks.c: write SRC_AND_LOC instead '1'.Pedro Alves2-1/+6
1 is SRC_AND_LOC. 2013-08-30 Pedro Alves <palves@redhat.com> * ada-tasks.c (task_command_1): Write SRC_AND_LOC instead '1'.
2013-08-30frame.h: Delete stale declaration.Pedro Alves2-3/+4
This is declaring a function that no longer exists. It was deleted back in 2003-01-13: ... show_and_print_stack_frame, print_only_stack_frame_stub, print_only_stack_frame): Delete functions. gdb/ 2013-08-30 Pedro Alves <palves@redhat.com> * frame.h (show_and_print_stack_frame): Delete declaration.
2013-08-302013-08-30 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon4-4/+43
PR python/15461 * python/py-arch.c (ARCHPY_REQUIRE_VALID): New macro. (archpy_name): Check for valid architecture. (archpy_disassemble): Ditto. 2013-08-30 Phil Muldoon <pmuldoon@redhat.com> * gdb.python/py-arch.exp: Tests for invalid architecture.
2013-08-30daily updateAlan Modra1-1/+1
2013-08-29thread support broken on ppc-aix.Joel Brobecker2-1/+6
Thread support got broken when adding 64bit support on ppc-aix. Upon digging further, I found that the following patch... | * gdb_ptrace.h: Use ptrace64 instead of ptrace if HAVE_PTRACE64 | is defined. | * rs6000-nat.c: Check for __ld_info64_ if compiling 64 BIT gdb. | (rs6000_ptrace32): Call ptrace64 instead of ptrace if present. | (rs6000_ptrace64): Call ptace64 instead of ptracex if present. | * configure.ac: Check for ptrace64. | * configure, config.in: Regenerate. ... is responsible for this regression: (gdb) x /x &__n_pthreads 0xf06a8258 <__n_pthreads>: Cannot access memory at address 0xf06a8258 Prior to the patch, we have: (gdb) x /x &__n_pthreads 0xf06a8258 <__n_pthreads>: 0x00000003 The problem occurs inside rs6000_ptrace32, while calling ptrace64. The address is given to rs6000_ptrace32 as an "int *", while ptrace64 takes a "long long". The cast causes the address to be sign-extended, which results in GDB trying to read the wrong address. This patch fixes the issue by casting the address to a "uintptr_t" instead, and letting the compiler do the implicit conversion to "long long" in the function call. gdb/ChangeLog: * rs6000-nat.c (rs6000_ptrace32): Cast "addr" to "uintptr_t" instead of "long long" in call to ptrace64.
2013-08-292013-08-29 Sterling Augustine <saugustine@google.com>Sterling Augustine2-6/+15
* boards/remote-stdio-gdbserver.exp: Set rcp_prog and rsh_prog in new conditional. Move use of REMOTE_PORTNUM into said conditional.
2013-08-29Remove use of deprecated_command_loop_hook from mi code.Andrew Burgess2-35/+16
https://sourceware.org/ml/gdb-patches/2013-08/msg00605.html gdb/ChangeLog * mi/mi-interp.c (mi_command_loop): Change signature to match interp_command_loop_ftype. (mi1_command_loop): Remove. (mi2_command_loop): Remove. (mi3_command_loop): Remove. (mi_interpreter_resume): Remove setting of deprecated_command_loop_hook. (_initialize_mi_interp): Set mi_command_loop as the command loop callback.
2013-08-292013-08-29 Sanimir Agovic <sanimir.agovic@intel.com>Sanimir Agovic2-1/+6
* valops.c (do_search_struct_field): Pass v2 instead of base_type to value_type.
2013-08-29cleanup: make allocate_value_contents staticSanimir Agovic3-2/+6
2013-08-29 Sanimir Agovic <sanimir.agovic@intel.com> * value.c (allocate_value_contents): Make static. * value.h (allocate_value_contents): Remove prototype.
2013-08-29cleanup: use value_lazy_at instead of allocate_value_lazy/attribute setterSanimir Agovic4-16/+13
I came across a pattern used to construct a value in the following way: struct value *val = allocate_value_lazy (type); VALUE_LVAL (val) = lval_memory; set_value_address (val, address); Instead we fold the above call into: value_at_lazy (type, addr); 2013-08-27 Sanimir Agovic <sanimir.agovic@intel.com> * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use value_at_lazy instead of assembling value via allocate_value_lazy and attribute setter. * findvar.c (default_read_var_value): Use value_at_lazy instead of assembling value via allocate_value_lazy and attribute setter. * valops.c (do_search_struct_field): Use value_at_lazy instead of assembling value via allocate_value_lazy and attribute setter.
2013-08-29cleanup: replace allocate_value and memcpy with value_from_contentsSanimir Agovic2-4/+6
2013-08-29 Sanimir Agovic <sanimir.agovic@intel.com> * value.c (value_from_contents_and_address): Replace allocate_value and memcpy with value_from_contents.
2013-08-29 * elf64-x86-64.c (elf_x86_64_check_tls_transition): AllowJakub Jelinek14-32/+546
64-bit -mcmodel=large -fpic TLS GD and LD sequences. (elf_x86_64_relocate_section): Handle -mcmodel=large -fpic TLS GD and LD sequences in GD->LE, GD->IE and LD->LE transitions. ld/testsuite/ * ld-x86-64/x86-64.exp: Add tlsld3, tlsgd7 and tlsgd8 tests. * ld-x86-64/tlspic1.s: Add -mcmodel=large -fpic TLS GD and LD sequences. * ld-x86-64/tlspic.dd: Adjusted. * ld-x86-64/tlspic.rd: Adjusted. * ld-x86-64/tlspic-nacl.rd: Adjusted. * ld-x86-64/tlsld3.dd: New test. * ld-x86-64/tlsld3.s: New file. * ld-x86-64/tlsgd7.dd: New test. * ld-x86-64/tlsgd7.s: New file. * ld-x86-64/tlsgd8.dd: New test. * ld-x86-64/tlsgd8.s: New file.
2013-08-292013-08-29 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon2-1/+5
* gdb.python/py-arch.exp: Load gdb-python.exp.
2013-08-292013-08-29 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon13-49/+116
* python/py-framefilter.c (py_print_frame): Remove usage of PyString_AsString. Use python_string_to_host_string instead. Refactor function to work with a string as a new allocation instead of a pointer. (py_print_frame): Ditto. * python/lib/gdb/frames.py (return_list): Cain iterators together instead of adding them as a list. (_sort_list): Call return_list, and remove duplicate code. (execute_frame_filters): Convert iterator to a list with list(). * python/lib/gdb/command/frame_filters.py (SetFrameFilterPriority._set_filter_priority): Convert priority attribute to an integer. * python/lib/gdb/FrameIterator.py (FrameIterator.next): Define wrapper function __next__. * python/lib/gdb/FrameDecorator.py: If basestring not defined, define as "str". 2013-08-29 Phil Muldoon <pmuldoon@redhat.com> * gdb.python/py-framefilter.py (FrameFilter.filter): Check itertools for imap attribute. Otherwise use map(). (ElidingIterator): Define wrapper function __next__. * gdb.python/py-framefilter-mi.exp: Do not use execfile, use exec (open (read ())) instead. * gdb.python/py-framefilter.exp: Ditto. * gdb.python/py-arch.exp: Update print based test to Python 3.x compliance. * gdb.python/py-frame.exp: Ditto. * gdb.python/py-type.exp: Ditto.
2013-08-292013-08-29 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon1-2/+0
* ChangeLog: Remove blank lines between PR and ChangeLog description.
2013-08-292013-08-29 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon2-1/+31
PR python/15752 * python/py-framefilter.c (apply_frame_filter): Check gdb_python_initialized. Exit if the Python frame-filter code cannot be initialized.
2013-08-292013-08-29 Phil Muldoon <pmuldoon@redhat.com>Phil Muldoon2-1/+8
PR cli/15842 * top.c (print_gdb_version): Remove erroneous newline after help text.
2013-08-29gdb/Yao Qi2-2/+7
* varobj.c (install_dynamic_child): Remove trailing space. Add one blank line after variable declaration.
2013-08-29daily updateAlan Modra1-1/+1
2013-08-28PR gdb/15415Jan Kratochvil13-28/+168
gdb/ 2013-08-27 Jan Kratochvil <jan.kratochvil@redhat.com> PR gdb/15415 * corefile.c (get_exec_file): Use exec_filename. * defs.h (OPF_DISABLE_REALPATH): New definition. Add new comment. * exec.c (exec_close): Free EXEC_FILENAME. (exec_file_attach): New variable canonical_pathname. Use OPF_DISABLE_REALPATH. Call gdb_realpath explicitly. Set EXEC_FILENAME. * exec.h (exec_filename): New. * inferior.c (print_inferior, inferior_command): Use PSPACE_EXEC_FILENAME. * mi/mi-main.c (print_one_inferior): Likewise. * progspace.c (clone_program_space, print_program_space): Likewise. * progspace.h (struct program_space): New field pspace_exec_filename. * source.c (openp): Describe OPF_DISABLE_REALPATH. New variable realpath_fptr, initialize it from OPF_DISABLE_REALPATH, use it. gdb/testsuite/ 2013-08-27 Jan Kratochvil <jan.kratochvil@redhat.com> PR gdb/15415 * gdb.base/argv0-symlink.c: New file. * gdb.base/argv0-symlink.exp: New file.
2013-08-28PR server/15604Jan Kratochvil5-0/+24
gdb/gdbserver/ 2013-08-28 Jan Kratochvil <jan.kratochvil@redhat.com> PR server/15604 * linux-low.c: Include filestuff.h. (linux_create_inferior) <pid == 0>: Call close_most_fds. * lynx-low.c: Include filestuff.h. (lynx_create_inferior) <pid == 0>: Call close_most_fds. * server.c: Include filestuff.h. (main): Call notice_open_fds. * spu-low.c: Include filestuff.h. (spu_create_inferior) <pid == 0>: Call close_most_fds.
2013-08-28 * gdb.dwarf2/gdb-index.exp (add_gdb_index): Use explicit test nameTom Tromey2-1/+7
when saving index.
2013-08-28gdb/common/linux-ptrace.c: Fix build on non-Intel architectures.Will Newton2-1/+6
As uintptr_t is used stdint.h must be included on all architectures. 2013-08-28 Will Newton <will.newton@linaro.org> * common/linux-ptrace.c: Include stdint.h unconditionally.
2013-08-28gdb/Jan Kratochvil2-1/+6
Code cleanup. * nto-tdep.c (nto_find_and_open_solib): Use OPF_TRY_CWD_FIRST.
2013-08-28gdb/Yao Qi5-2/+79
* event-top.c (gdb_setup_readline): Call stderr_fileopen instead of stdio_fileopen. * main.c (captured_main) [__MINGW32__]: Set stderr unbuffered. .Call stderr_fileopen instead of stdio_fileopen. * ui-file.c [__MINGW32__] (stderr_file_write): New function. [__MINGW32__] (stderr_file_fputs): New function. (stderr_fileopen): New function. * ui-file.h (stderr_fileopen): Declare.
2013-08-28 * aarch64-opc.c (aarch64_logical_immediate_p): Return FALSE if theNick Clifton5-2/+18
immediate is not suitable for the 32-bit ABI. * gas/aarch64/illegal.s: Add illegal constant for logical operation. * gas/aarch64/illegal.l: Add expected error message.