2012-06-28 Jan Kratochvil <jan.kratochvil@redhat.com>
Pedro Alves <palves@redhat.com>
* gdbthread.h (ALL_THREADS): New macro.
(thread_list): Declare.
* infrun.c (handle_inferior_event) <spurious signal>: Don't keep
going, but instead fall through to the stepping handling.
* linux-nat.c (resume_lwp): New parameter 'signo'. Resume with
the passed in signal. Adjust debug output.
(resume_callback): Rename to ...
(linux_nat_resume_callback): ... this. Pass the thread's last
stop signal, if in "pass" state.
(linux_nat_resume): Adjust to rename.
(stop_wait_callback): New assertion. Don't respawn signals;
instead let the LWP remain with SIGNALLED set.
(linux_nat_wait_1): Remove flushing of pending SIGSTOPs.
* remote.c (append_pending_thread_resumptions): New.
(remote_vcont_resume): Call it.
* target.h (target_resume): Extend comment.
gdb/testsuite/
2012-06-28 Jan Kratochvil <jan.kratochvil@redhat.com>
Pedro Alves <palves@redhat.com>
* gdb.threads/siginfo-threads.exp: New file.
* gdb.threads/siginfo-threads.c: New file.
* gdb.threads/sigstep-threads.exp: New file.
* gdb.threads/sigstep-threads.c: New file.
* ld-arm/arm-elf.exp (armelftests_common): Add a test that gets
arm-lib.so built so armeabitests_common can use it.
(unresolved-1-dyn): Exclude this test for [istarget "arm*-*-nacl*"].
* config/tc-arm.c (encode_arm_addr_mode_common): Generate an error
message if literal pool addressing is used.
* gas/arm/ldr-t-bad.s: Add test of bogus use of literal pool
addressing.
* gas/arm/ldr-t-bad.l: Update expected assembler error message
output.
linker relaxation.
(dwarf2_gen_line_info): Generate real, local, labels for line
numbers.
(dwarf2dbg_convert_frag): Do not finalize the computation of the
frag's symbol value when linker relaxation is enabled.
(ADDR_DELTA_LIMIT): Define.
(size_fixed_inc_line_addr): Use ADDR_DELTA_LIMIT.
(emit_fixed_inc_line_addr): Likewise.
* write.c (fixup_segment): If the subtraction of two symbols
cannot be resolved but is valid, then prevent bogus range warnings
by pre-biasing add_number.
* config/tc-h8300.h (DWARF2_USE_FIXED_ADVANCE_PC): Define to 0.
* gas/lns/lns.exp: Use alternate lns-common test for targets
enabling linker relaxation.
* gas/lns/lns-big-delta.d: Allow for output from architectures
with 32-bit addresses.
* gdb.dwarf2/dw2-var-zero-addr.exp: Use standard_testfile.
* gdb.dwarf2/dw2-param-error.exp: Use standard_testfile.
* gdb.dwarf2/dw2-op-call.exp: Use standard_testfile.
* gdb.dwarf2/dw2-inline-param.exp: Use standard_testfile,
prepare_for_testing.
* gdb.dwarf2/dw2-inline-break.exp: Use standard_testfile.
* gdb.dwarf2/dw2-ifort-parameter.exp: Use standard_testfile.
* gdb.dwarf2/dw2-cp-infcall-ref-static.exp: Use
standard_testfile.
* gdb.dwarf2/dw2-case-insensitive.exp: Use standard_testfile.
* gdb.dwarf2/dw4-sig-types.exp: Use standard_testfile.
* gdb.dwarf2/dw2-objfile-overlap.exp: Use standard_testfile.
* gdb.dwarf2/callframecfa.exp: Use standard_testfile,
prepare_for_testing.
* gdb.dwarf2/dup-psym.exp: Use standard_testfile.
* gdb.dwarf2/dw2-ada-ffffffff.exp: Use standard_testfile.
* gdb.dwarf2/dw2-anonymous-func.exp: Use standard_testfile.
* gdb.dwarf2/dw2-bad-parameter-type.exp: Use standard_testfile.
* gdb.dwarf2/dw2-basic.exp: Use standard_testfile.
* gdb.dwarf2/dw2-compressed.exp: Use standard_testfile.
* gdb.dwarf2/dw2-const.exp: Use standard_testfile.
* gdb.dwarf2/dw2-cu-size.exp: Use standard_testfile.
* gdb.dwarf2/dw2-double-set-die-type.exp: Use standard_testfile.
* gdb.dwarf2/dw2-empty-namespace.exp: Use standard_testfile.
* gdb.dwarf2/dw2-empty-pc-range.exp: Use standard_testfile.
* gdb.dwarf2/dw2-filename.exp: Use standard_testfile.
* gdb.dwarf2/dw2-icc-opaque.exp: Use standard_testfile.
* gdb.dwarf2/dw2-inheritance.exp: Use standard_testfile.
* gdb.dwarf2/dw2-intercu.exp: Use standard_testfile.
* gdb.dwarf2/dw2-intermix.exp: Use standard_testfile.
* gdb.dwarf2/dw2-linkage-name-trust.exp: Use standard_testfile.
* gdb.dwarf2/dw2-modula2-self-type.exp: Use standard_testfile.
* gdb.dwarf2/dw2-namespaceless-anonymous.exp: Use standard_testfile.
* gdb.dwarf2/dw2-op-stack-value.exp: Use standard_testfile.
* gdb.dwarf2/dw2-producer.exp: Use standard_testfile.
* gdb.dwarf2/dw2-ranges.exp: Use standard_testfile,
standard_output_file.
* gdb.dwarf2/dw2-ref-missing-frame.exp: Use standard_testfile,
standard_output_file.
* gdb.dwarf2/dw2-restore.exp: Use standard_testfile.
* gdb.dwarf2/dw2-simple-locdesc.exp: Use standard_testfile.
* gdb.dwarf2/dw2-skip-prologue.exp: Use standard_testfile.
* gdb.dwarf2/dw2-stack-boundary.exp: Use standard_testfile.
* gdb.dwarf2/dw2-strp.exp: Use standard_testfile.
* gdb.dwarf2/dw4-sig-type-unused.exp: Use standard_testfile.
* gdb.dwarf2/implptr-64bit.exp: Use standard_testfile.
* gdb.dwarf2/implptr-optimized-out.exp: Use standard_testfile.
* gdb.dwarf2/implptr.exp: Use standard_testfile.
* gdb.dwarf2/mac-fileno.exp: Use standard_testfile.
* gdb.dwarf2/member-ptr-forwardref.exp: Use standard_testfile.
* gdb.dwarf2/pieces.exp: Use standard_testfile.
* gdb.dwarf2/pr11465.exp: Use standard_testfile.
* gdb.dwarf2/pr13961.exp: Use standard_testfile.
* gdb.dwarf2/valop.exp: Use standard_testfile,
prepare_for_testing.
New attribute 'last' for gdb.Symtab_and_line.
* NEWS (Python Scripting): Add entry about the new attribute.
* python/py-symtab.c (salpy_get_last): New function which
implements the get method for the 'last' attribute of
gdb.Symtab_and_line.
(sal_object_getset): Add entry for the 'last' attribute.
doc/
* gdb.texinfo (Symbol Tables In Python): Add description about
the new 'last' attribute of gdb.Symtab_and line.
testsuite/
* gdb.python/py-symtab.exp: Add tests to test the new attribute
'last' of gdb.Symtab_and_line.
* gdb.python/py-symbol.c: Move break point comment to enable
testing of gdb.Symtab_and_line.last.
* gdb.trace/ax.exp: Use standard_testfile.
* gdb.trace/backtrace.exp: Use standard_testfile.
* gdb.trace/change-loc.exp: Use standard_testfile.
* gdb.trace/circ.exp: Use standard_testfile, prepare_for_testing.
* gdb.trace/collection.exp: Use standard_testfile,
prepare_for_testing.
* gdb.trace/deltrace.exp: Use standard_testfile.
* gdb.trace/disconnected-tracing.exp: Use standard_testfile.
* gdb.trace/ftrace.exp: Use standard_testfile.
* gdb.trace/infotrace.exp: Use standard_testfile.
* gdb.trace/packetlen.exp: Use standard_testfile.
* gdb.trace/passc-dyn.exp: Use standard_testfile.
* gdb.trace/passcount.exp: Use standard_testfile.
* gdb.trace/pending.exp: Use standard_testfile.
* gdb.trace/report.exp: Use standard_testfile.
* gdb.trace/save-trace.exp: Use standard_testfile.
* gdb.trace/stap-trace.exp: Use standard_testfile.
* gdb.trace/status-stop.exp: Use standard_testfile.
* gdb.trace/strace.exp: Use standard_testfile.
* gdb.trace/tfile.exp: Use standard_testfile.
* gdb.trace/tfind.exp: Use standard_testfile.
* gdb.trace/trace-break.exp: Use standard_testfile.
* gdb.trace/trace-mt.exp: Use standard_testfile.
* gdb.trace/tracecmd.exp: Use standard_testfile.
* gdb.trace/tspeed.exp: Use standard_testfile.
* gdb.trace/tstatus.exp: Use standard_testfile.
* gdb.trace/tsv.exp: Use standard_testfile.
* gdb.trace/unavailable.exp: Use standard_testfile,
prepare_for_testing.
* gdb.trace/while-dyn.exp: Use standard_testfile.
* gdb.trace/while-stepping.exp: Use standard_testfile.
* gdb.reverse/break-reverse.exp: Use standard_testfile.
* gdb.reverse/consecutive-precsave.exp: Use standard_testfile.
* gdb.reverse/consecutive-reverse.exp: Use standard_testfile.
* gdb.reverse/finish-precsave.exp: Use standard_testfile.
* gdb.reverse/finish-reverse-bkpt.exp: Use standard_testfile.
* gdb.reverse/finish-reverse.exp: Use standard_testfile.
* gdb.reverse/i386-precsave.exp: Use standard_testfile,
prepare_for_testing.
* gdb.reverse/i386-reverse.exp: Use standard_testfile,
prepare_for_testing.
* gdb.reverse/i386-sse-reverse.exp: Use standard_testfile,
prepare_for_testing.
* gdb.reverse/i387-env-reverse.exp: Use standard_testfile,
prepare_for_testing.
* gdb.reverse/i387-stack-reverse.exp: Use standard_testfile,
prepare_for_testing
* gdb.reverse/machinestate-precsave.exp: Use standard_testfile.
* gdb.reverse/machinestate.exp: Use standard_testfile.
* gdb.reverse/next-reverse-bkpt-over-sr.exp: Use standard_testfile.
* gdb.reverse/sigall-precsave.exp: Use standard_testfile,
build_executable.
* gdb.reverse/sigall-reverse.exp: Use standard_testfile,
build_executable.
* gdb.reverse/solib-precsave.exp: Use standard_testfile,
standard_output_file.
* gdb.reverse/solib-reverse.exp: Use standard_testfile,
standard_output_file.
* gdb.reverse/step-precsave.exp: Use standard_testfile.
* gdb.reverse/step-reverse.exp: Use standard_testfile.
* gdb.reverse/until-precsave.exp: Use standard_testfile.
* gdb.reverse/until-reverse.exp: Use standard_testfile.
* gdb.reverse/watch-precsave.exp: Use standard_testfile.
* gdb.reverse/watch-reverse.exp: Use standard_testfile.
* amd64-linux-nat.c: Include <sys/user.h>.
(ps_get_thread_area): Use PTRACE_PEEKUSER to get fs_base/gs_base
if HAVE_STRUCT_USER_REGS_STRUCT_FS_BASE or
HAVE_STRUCT_USER_REGS_STRUCT_GS_BASE is defined.
* configure.ac: Check if the fs_base and gs_base members of
`struct user_regs_struct' exist.
* config.in: Regenerated.
* configure: Likewise.
* gdb.multi/bkpt-multi-exec.exp: Use standard_output_file. Use
build_executable, not prepare_for_testing.
* gdb.multi/base.exp: Use standard_output_file. Use
build_executable, not prepare_for_testing.
prepare_for_testing.
* gdb.fortran/multi-dim.exp: Use standard_testfile.
* gdb.fortran/module.exp: Use standard_testfile.
* gdb.fortran/logical.exp: Use standard_testfile.
* gdb.fortran/library-module.exp: Use standard_testfile,
standard_output_file.
* gdb.fortran/derived-type.exp: Use standard_testfile,
prepare_for_testing.
* gdb.fortran/complex.exp: Use standard_testfile,
prepare_for_testing.
* gdb.fortran/charset.exp: Use standard_testfile.
* gdb.fortran/array-element.exp: Use standard_testfile,
prepare_for_testing.
* gdb.pascal/hello.exp: Use standard_testfile, clean_restart.
* gdb.pascal/gdb11492.exp: Use standard_testfile, clean_restart.
* gdb.pascal/floats.exp: Use standard_testfile, clean_restart.
prepare_for_testing.
* gdb.server/ext-run.exp: Use standard_testfile,
build_executable.
* gdb.server/file-transfer.exp: Use standard_testfile,
prepare_for_testing.
* gdb.server/server-exec-info.exp: Use standard_testfile.
* gdb.server/server-mon.exp: Use standard_testfile,
prepare_for_testing.
* gdb.server/server-run.exp: Use standard_testfile,
build_executable.
* gdb.server/solib-list.exp: Use standard_testfile,
standard_output_file.
* gdb.go/chan.exp: Use standard_testfile.
* gdb.go/handcall.exp: Use standard_testfile.
* gdb.go/hello.exp: Use standard_testfile.
* gdb.integers/chan.exp: Use standard_testfile.
* gdb.go/methods.exp: Use standard_testfile.
* gdb.go/package.exp: Use standard_testfile.
* gdb.go/strings.exp: Use standard_testfile.
* gdb.go/types.exp: Use standard_testfile.
* gdb.go/unsafe.exp: Use standard_testfile.