public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac
@ 2015-12-19 23:30 Simon Marchi
  2015-12-19 23:31 ` [PATCH 3/3] Remove HP-UX references fom testsuite Simon Marchi
  2015-12-20  4:49 ` [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac Joel Brobecker
  0 siblings, 2 replies; 14+ messages in thread
From: Simon Marchi @ 2015-12-19 23:30 UTC (permalink / raw)
  To: gdb-patches; +Cc: Simon Marchi

gdb/testsuite/ChangeLog:

	* configure.ac: Remove HP-UX case.
	* configure: Regenerate.
---
 gdb/testsuite/configure    | 2 --
 gdb/testsuite/configure.ac | 2 --
 2 files changed, 4 deletions(-)

diff --git a/gdb/testsuite/configure b/gdb/testsuite/configure
index 0853e48..687e06d 100755
--- a/gdb/testsuite/configure
+++ b/gdb/testsuite/configure
@@ -2273,8 +2273,6 @@ else
       fi ;;
     darwin* | rhapsody*)
       RPATH_ENVVAR=DYLD_LIBRARY_PATH ;;
-    hpux*)
-      RPATH_ENVVAR=SHLIB_PATH ;;
   esac
 fi
 
diff --git a/gdb/testsuite/configure.ac b/gdb/testsuite/configure.ac
index f7e9eea..c5271e4 100644
--- a/gdb/testsuite/configure.ac
+++ b/gdb/testsuite/configure.ac
@@ -77,8 +77,6 @@ else
       fi ;;
     darwin* | rhapsody*)
       RPATH_ENVVAR=DYLD_LIBRARY_PATH ;;
-    hpux*)
-      RPATH_ENVVAR=SHLIB_PATH ;;
   esac
 fi
 AC_SUBST(RPATH_ENVVAR)
-- 
2.6.4

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 3/3] Remove HP-UX references fom testsuite
  2015-12-19 23:30 [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac Simon Marchi
@ 2015-12-19 23:31 ` Simon Marchi
  2015-12-20  5:08   ` Joel Brobecker
  2015-12-21 12:48   ` Pedro Alves
  2015-12-20  4:49 ` [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac Joel Brobecker
  1 sibling, 2 replies; 14+ messages in thread
From: Simon Marchi @ 2015-12-19 23:31 UTC (permalink / raw)
  To: gdb-patches; +Cc: Simon Marchi

This patch removes all special cases for HP-UX, for which support has
been removed earlier, that I found in the testsuite.  Note that the hppa
architecture != HP-UX, since other OSes can run on hppa, so I tried to
leave everything that is not HP-UX specific.

Two complete tests were completely HP-UX specific, so I removed them.

I ran the testsuite on Linux x86-64, native and native-gdbserver, and
noticed no regressions.

gdb/testsuite/ChangeLog:

	* gdb.asm/asm-source.exp: Remove HP-UX references.
	* gdb.base/annota1.exp: Likewise.
	* gdb.base/annota3.exp: Likewise.
	* gdb.base/attach.exp: Likewise.
	* gdb.base/bigcore.exp: Likewise.
	* gdb.base/break.exp: Likewise.
	* gdb.base/call-ar-st.exp: Likewise.
	* gdb.base/callfuncs.exp: Likewise.
	* gdb.base/catch-fork-static.exp: Likewise.
	* gdb.base/display.exp: Likewise.
	* gdb.base/foll-exec-mode.exp: Likewise.
	* gdb.base/foll-exec.exp: Likewise.
	* gdb.base/foll-fork.exp: Likewise.
	* gdb.base/foll-vfork.exp: Likewise.
	* gdb.base/funcargs.exp: Likewise.
	* gdb.base/hbreak2.exp: Likewise.
	* gdb.base/inferior-died.exp: Likewise.
	* gdb.base/interrupt.exp: Likewise.
	* gdb.base/multi-forks.exp: Likewise.
	* gdb.base/nodebug.exp: Likewise.
	* gdb.base/sepdebug.exp: Likewise.
	* gdb.base/solib1.c: Likewise.
	* gdb.base/step-test.exp: Likewise.
	* gdb.dwarf2/pr10770.c: Likewise.
	* gdb.mi/non-stop.c: Likewise.
	* gdb.mi/pthreads.c: Likewise.
	* gdb.multi/bkpt-multi-exec.ex: Likewise.p
	* gdb.threads/pthreads.c: Likewise.
	* gdb.threads/staticthreads.exp: Likewise.
	* lib/future.exp: Likewise.
	* lib/gdb.exp: Likewise.
	* gdb.base/so-indr-cl.c: Remove.
	* gdb.base/so-indr-cl.exp: Likewise.
	* gdb.base/solib.c: Likewise.
	* gdb.base/solib.exp: Likewise.
	* gdb.base/solib2.c: Likewise.
---
 gdb/testsuite/gdb.asm/asm-source.exp         |   4 -
 gdb/testsuite/gdb.base/annota1.exp           |  10 -
 gdb/testsuite/gdb.base/annota3.exp           |  11 -
 gdb/testsuite/gdb.base/attach.exp            |  12 -
 gdb/testsuite/gdb.base/bigcore.exp           |   1 -
 gdb/testsuite/gdb.base/break.exp             |  77 +-----
 gdb/testsuite/gdb.base/call-ar-st.exp        |  58 ++---
 gdb/testsuite/gdb.base/callfuncs.exp         |   3 -
 gdb/testsuite/gdb.base/catch-fork-static.exp |   3 +-
 gdb/testsuite/gdb.base/display.exp           |  12 +-
 gdb/testsuite/gdb.base/foll-exec-mode.exp    |   2 +-
 gdb/testsuite/gdb.base/foll-exec.exp         |   6 +-
 gdb/testsuite/gdb.base/foll-fork.exp         |   3 +-
 gdb/testsuite/gdb.base/foll-vfork.exp        |  60 +----
 gdb/testsuite/gdb.base/funcargs.exp          |   7 -
 gdb/testsuite/gdb.base/hbreak2.exp           |  18 +-
 gdb/testsuite/gdb.base/inferior-died.exp     |   2 +-
 gdb/testsuite/gdb.base/interrupt.exp         |   9 -
 gdb/testsuite/gdb.base/multi-forks.exp       |   8 +-
 gdb/testsuite/gdb.base/nodebug.exp           |  55 +----
 gdb/testsuite/gdb.base/sepdebug.exp          |  55 +----
 gdb/testsuite/gdb.base/so-indr-cl.c          |  22 --
 gdb/testsuite/gdb.base/so-indr-cl.exp        | 129 ----------
 gdb/testsuite/gdb.base/solib.c               |  60 -----
 gdb/testsuite/gdb.base/solib.exp             | 352 ---------------------------
 gdb/testsuite/gdb.base/solib1.c              |   4 -
 gdb/testsuite/gdb.base/solib2.c              |  14 --
 gdb/testsuite/gdb.base/step-test.exp         |   4 +-
 gdb/testsuite/gdb.dwarf2/pr10770.c           |   1 -
 gdb/testsuite/gdb.mi/non-stop.c              |  15 +-
 gdb/testsuite/gdb.mi/pthreads.c              |  15 +-
 gdb/testsuite/gdb.multi/bkpt-multi-exec.exp  |   2 +-
 gdb/testsuite/gdb.threads/pthreads.c         |  17 +-
 gdb/testsuite/gdb.threads/staticthreads.exp  |   2 +-
 gdb/testsuite/lib/future.exp                 |   3 -
 gdb/testsuite/lib/gdb.exp                    | 101 +++-----
 36 files changed, 110 insertions(+), 1047 deletions(-)
 delete mode 100644 gdb/testsuite/gdb.base/so-indr-cl.c
 delete mode 100644 gdb/testsuite/gdb.base/so-indr-cl.exp
 delete mode 100644 gdb/testsuite/gdb.base/solib.c
 delete mode 100644 gdb/testsuite/gdb.base/solib.exp
 delete mode 100644 gdb/testsuite/gdb.base/solib2.c

diff --git a/gdb/testsuite/gdb.asm/asm-source.exp b/gdb/testsuite/gdb.asm/asm-source.exp
index bd66c93..7824a98 100644
--- a/gdb/testsuite/gdb.asm/asm-source.exp
+++ b/gdb/testsuite/gdb.asm/asm-source.exp
@@ -159,10 +159,6 @@ switch -glob -- [istarget] {
         set asm-arch pa
 	set debug-flags "-gdwarf-2"
     }
-    "hppa64-*-hpux*" {
-        set asm-arch pa64
-	set debug-flags "-gdwarf-2"
-    }
     "h83*-*" {
 	set asm-arch h8300
         set debug-flags "-gdwarf-2"
diff --git a/gdb/testsuite/gdb.base/annota1.exp b/gdb/testsuite/gdb.base/annota1.exp
index c19b945..2d98720 100644
--- a/gdb/testsuite/gdb.base/annota1.exp
+++ b/gdb/testsuite/gdb.base/annota1.exp
@@ -405,20 +405,10 @@ gdb_test_multiple "info inferior 1" "$test" {
 # annotate-signal-string-end
 # FIXME: annotate-signal not tested (requires that the inferior be 
 #                        stopped by a "random" signal)
-#
-# SIGTRAP signals are dropped before they get to the inferior process
-# on hpux11.  In theory, this behaivor can be controlled by setting
-# TTEO_NORM_SIGTRAP in the inferior, but doing so did not cause
-# the signal to be properly delivered.
-#
-# It has been verified that other signals will be delivered.  However,
-# rather than twiddle the test, I choose to leave it as-is as it
-# exposes an interesting failure on hpux11.
 
 if [target_info exists gdb,nosignals] {
     unsupported "signal sent"
 } else {
-    setup_xfail hppa*-*-hpux11*
     gdb_test_multiple "signal SIGTRAP" "signal sent" {
 	-re ".*\032\032post-prompt\r\nContinuing with signal SIGTRAP.\r\n\r\n\032\032starting\(\r\n\r\n\032\032frames-invalid\)+\r\n\r\n\032\032signalled\r\n\r\nProgram terminated with signal \r\n\032\032signal-name\r\nSIGTRAP\r\n\032\032signal-name-end\r\n, \r\n\032\032signal-string\r\nTrace.breakpoint trap\r\n\032\032signal-string-end\r\n.\r\nThe program no longer exists.\r\n\r\n\032\032stopped\r\n$gdb_prompt$" {
 	    pass "signal sent"
diff --git a/gdb/testsuite/gdb.base/annota3.exp b/gdb/testsuite/gdb.base/annota3.exp
index 870a681..c8b5b40 100644
--- a/gdb/testsuite/gdb.base/annota3.exp
+++ b/gdb/testsuite/gdb.base/annota3.exp
@@ -362,22 +362,11 @@ gdb_test_multiple "info inferior 1" "$test" {
     }
 }
 
-#
 # Send a signal that is not handled
-#
-# SIGTRAP signals are dropped before they get to the inferior process
-# on hpux11.  In theory, this behaivor can be controlled by setting
-# TTEO_NORM_SIGTRAP in the inferior, but doing so did not cause
-# the signal to be properly delivered.
-#
-# It has been verified that other signals will be delivered.  However,
-# rather than twiddle the test, I choose to leave it as-is as it
-# exposes an interesting failure on hpux11.
 
 if [target_info exists gdb,nosignals] {
     unsupported "signal sent"
 } else {
-    setup_xfail hppa*-*-hpux11*
     send_gdb "signal SIGTRAP\n"
     gdb_expect_list "signal sent" "$gdb_prompt$" {
 	"\r\n\032\032post-prompt\r\n"
diff --git a/gdb/testsuite/gdb.base/attach.exp b/gdb/testsuite/gdb.base/attach.exp
index bf0d84e..ab59e2d 100644
--- a/gdb/testsuite/gdb.base/attach.exp
+++ b/gdb/testsuite/gdb.base/attach.exp
@@ -13,18 +13,6 @@
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
-
-# On HP-UX 11.0, this test is causing a process running the program
-# "attach" to be left around spinning.  Until we figure out why, I am
-# commenting out the test to avoid polluting tiamat (our 11.0 nightly
-# test machine) with these processes. RT
-#
-# Setting the magic bit in the target app should work.  I added a
-# "kill", and also a test for the R3 register warning.  JB
-if { [istarget "hppa*-*-hpux*"] } {
-    return 0
-}
-
 if {![can_spawn_for_attach]} {
     return 0
 }
diff --git a/gdb/testsuite/gdb.base/bigcore.exp b/gdb/testsuite/gdb.base/bigcore.exp
index 4e407e0..21d96b9 100644
--- a/gdb/testsuite/gdb.base/bigcore.exp
+++ b/gdb/testsuite/gdb.base/bigcore.exp
@@ -31,7 +31,6 @@ if ![isnative] then {
 # I/O bandwith.
 
 if { [istarget "*-*-*bsd*"]
-     || [istarget "*-*-hpux*"]
      || [istarget "*-*-solaris*"] 
      || [istarget "*-*-darwin*"] 
      || [istarget "*-*-cygwin*"] } {
diff --git a/gdb/testsuite/gdb.base/break.exp b/gdb/testsuite/gdb.base/break.exp
index 003a73f..6ca910c 100644
--- a/gdb/testsuite/gdb.base/break.exp
+++ b/gdb/testsuite/gdb.base/break.exp
@@ -485,24 +485,13 @@ gdb_test_multiple "catch fork" "$name" {
 }
 
 
-# If we are on HP-UX 10.20, we expect an error message to be
-# printed if we type "catch vfork" at the gdb gdb_prompt.  This is
-# because on HP-UX 10.20, we cannot catch vfork events.
-
 set name "set catch vfork, never expected to trigger"
-
-if [istarget "hppa*-hp-hpux10.20"] then {
-    gdb_test "catch vfork" \
-	"Catch of vfork events not supported on HP-UX 10.20..*" \
-	"$name"
-} else {
-    gdb_test_multiple "catch vfork" "$name" {
-	-re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
-	    pass $name
-	}
-	-re "Catch of vfork not yet implemented.*$gdb_prompt $" {
-	    pass $name
-	}
+gdb_test_multiple "catch vfork" "$name" {
+    -re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
+	pass $name
+    }
+    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
+	pass $name
     }
 }
 
@@ -641,32 +630,20 @@ gdb_test "break marker2" \
     "set breakpoint on to-be-called function"
 
 gdb_test "print marker2(99)" \
-    "The program being debugged stopped while in a function called from GDB.\r\nEvaluation of the expression containing the function\r\n.marker2$proto. will be abandoned.\r\nWhen the function is done executing, GDB will silently stop.*" \
+    "The program being debugged stopped while in a function called from GDB.\r\nEvaluation of the expression containing the function\r\n.marker2. will be abandoned.\r\nWhen the function is done executing, GDB will silently stop.*" \
     "hit breakpoint on called function"
 
 # As long as we're stopped (breakpointed) in a called function,
 # verify that we can successfully backtrace & such from here.
-#
-# In this and the following test, the _sr4export check apparently is needed
-# for hppa*-*-hpux.
-#
-gdb_test_multiple "bt" "backtrace while in called function" {
-    -re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*_sr4export.*$gdb_prompt $" {
-	pass "backtrace while in called function"
-    }
-    -re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*function called from gdb.*$gdb_prompt $" {
-	pass "backtrace while in called function"
-    }
-}
+gdb_test "bt" \
+    "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1\[ \t\]*<function called from gdb>.*" \
+    "backtrace while in called function"
 
 # Return from the called function.  For remote targets, it's important to do
 # this before runto_main, which otherwise may silently stop on the dummy
 # breakpoint inserted by GDB at the program's entry point.
 #
 gdb_test_multiple "finish" "finish from called function" {
-    -re "Run till exit from .*marker2.* at .*$bp_location8\r\n.* in _sr4export.*$gdb_prompt $" {
-	pass "finish from called function"
-    }
     -re "Run till exit from .*marker2.* at .*$bp_location8\r\n.*function called from gdb.*$gdb_prompt $" {
 	pass "finish from called function"
     }
@@ -704,40 +681,6 @@ gdb_test_multiple "finish" "finish from outermost frame disallowed" {
     }
 }
 
-# Verify that we can explicitly ask GDB to stop on all shared library
-# events, and that it does so.
-#
-if [istarget "hppa*-*-hpux*"] then {
-    if ![runto_main] then { fail "break tests suppressed" }
-
-    gdb_test_no_output "set stop-on-solib-events 1" \
-	"set stop-on-solib-events"
-
-    gdb_test "run" \
-	"Stopped due to shared library event.*" \
-	"triggered stop-on-solib-events" \
-	"Start it from the beginning.*y or n. $" \
-	"y" 
-
-    gdb_test_no_output "set stop-on-solib-events 0" \
-	"reset stop-on-solib-events"
-}
-
-# Hardware breakpoints are unsupported on HP-UX.  Verify that GDB
-# gracefully responds to requests to create them.
-#
-if [istarget "hppa*-*-hpux*"] then {
-    if ![runto_main] then { fail "break tests suppressed" }
-
-    gdb_test "hbreak" \
-	"No hardware breakpoint support in the target.*" \
-	"hw breaks disallowed"
-
-    gdb_test "thbreak" \
-	"No hardware breakpoint support in the target.*" \
-	"temporary hw breaks disallowed"
-}
-
 #********
 
 
diff --git a/gdb/testsuite/gdb.base/call-ar-st.exp b/gdb/testsuite/gdb.base/call-ar-st.exp
index 5a9b0fc..2b49116 100644
--- a/gdb/testsuite/gdb.base/call-ar-st.exp
+++ b/gdb/testsuite/gdb.base/call-ar-st.exp
@@ -390,46 +390,28 @@ gdb_test "tbreak $stop_line" \
 gdb_test continue "Continuing\\..*main \\(.*\\) at.*$srcfile:$stop_line\[\t\r\n \]+$stop_line.*print_long_arg_list \\( a, b, c, d, e, f, .struct1, .struct2, .struct3, .struct4,.*" "continue to tbreak7"
 
 set stop_line [gdb_get_line_number "-step2-"]
-if { [istarget "hppa*-*-hpux*"] } {
-    #
-    # NOTE:(FIXME)
-    # the aCC demangler cannot demangle the name of a function with >10 args.
-    # so I added a .* after the name of the function, to match the
-    # incredibly long mangled name 
-    # (getting aCC's libdemangle.a bundled w/ the system?)
-    # DTS CLLbs16994  coulter 990114
-    # 
-    # FIXME: use step for hppa* testing for now
-    # guo 990621
-    #
-    gdb_test "step" \
-	"print_long_arg_list.*\\(a=22.25, b=33.375, c=0, d=-25, e=100, f=2345, struct1=\{value = 6, head = 0\}, struct2=\{value = 10, head = 0\}, struct3=\{value = 12, head = 0\}, struct4=\{value = 14, head = 0\}, flags=\{alpha = 1, beta = 0, gamma = 1, delta = 0, epsilon = 1, omega = 0\}, flags_combo=\{alpha = 1, beta = 0, ch1 = 121 \'y\', gamma = 1, delta = 0, ch2 = 110 \'n\', epsilon = 1, omega = 0\}, three_char=\{ch1 = 97 \'a\', ch2 = 98 \'b\', ch3 = 99 \'c\'\}, five_char=\{ch1 = 108 \'l\', ch2 = 109 \'m\', ch3 = 110 \'n\', ch4 = 111 \'o\', ch5 = 112 \'p\'\}, int_char_combo=\{int1 = 123, ch1 = 122 \'z\'\}, d1=\{double1 = 10.5\}, d2=\{double1 = -3.375\}, d3=\{double1 = 675.09375\}, f1=\{float1 = 45.2340012, float2 = 43.5999985\}, f2=\{float1 = 78.0100021, float2 = 122.099998\}, f3=\{float1 = -1232.34497, float2 = -199.210007\}\\) at .*${srcfile}:$stop_line\[\r\n\]+$stop_line\[ \t\]+printf\\(\"double :.*\", a\\);" \
-	"step into print_long_arg_list"
-} else {
-
-    # We can't just assume that a "step" will get us into
-    # print_long_arg_list here,either.
-    gdb_test "tbreak print_long_arg_list" \
-	"Temporary breakpoint .* file .*$srcfile, line .*" \
-	"tbreak in print_long_arg_list after stepping into memcpy"
-    # The short match case below handles cases where a buffer
-    # overflows or something, and expect can't deal with the full
-    # line.  Perhaps a more elegant solution exists... -sts 1999-08-17
-    if {![gdb_skip_float_test "step into print_long_arg_list"]} {
-	gdb_test_multiple "continue" "step into print_long_arg_list" {
-	    -re ".*print_long_arg_list \\(a=22.25, b=33.375, c=0, d=-25, e=100, f=2345, struct1=\{value = 6, head = 0\}, struct2=\{value = 10, head = 0\}, struct3=\{value = 12, head = 0\}, struct4=\{value = 14, head = 0\}, flags=\{alpha = 1, beta = 0, gamma = 1, delta = 0, epsilon = 1, omega = 0\}, flags_combo=\{alpha = 1, beta = 0, ch1 = 121 \'y\', gamma = 1, delta = 0, ch2 = 110 \'n\', epsilon = 1, omega = 0\}, three_char=\{ch1 = 97 \'a\', ch2 = 98 \'b\', ch3 = 99 \'c\'\}, five_char=\{ch1 = 108 \'l\', ch2 = 109 \'m\', ch3 = 110 \'n\', ch4 = 111 \'o\', ch5 = 112 \'p\'\}, int_char_combo=\{int1 = 123, ch1 = 122 \'z\'\}, d1=\{double1 = 10.5\}, d2=\{double1 = -3.375\}, d3=\{double1 = 675.09375\}, f1=\{float1 = 45.2340012, float2 = 43.5999985\}, f2=\{float1 = 78.0100021, float2 = 122.099998\}, f3=\{float1 = -1232.34497, float2 = -199.210007\}\\) at .*${srcfile}:$stop_line\[\r\n\]+$stop_line\[ \t\]+printf\\(\"double :.*\", a\\);.*$gdb_prompt $" {
-		pass "step into print_long_arg_list"
-	    }
-	    -re ".*print_long_arg_list.*\\(a=22.25, b=33.375, c=0, d=-25, e=100, f=2345, struct1=\{value = 6, head = 0\}, struct2=\{value = 10, head = 0\}, struct3=\{value = 12, head = 0\}, struct4=\{value = 14, head = 0\}, flags=\{alpha = 1, beta = 0, gamma = 1, delta = 0, epsilon = 1, omega = 0\}, flags_combo=\{alpha = 1, beta = 0, ch1 = 121 \'y\', gamma = 1, delta = 0, ch2 = 110 \'n\', epsilon = 1, omega = 0\}, three_char=\{ch1 = 97 \'a\', ch2 = 98 \'b\', ch3 = 99 \'c\'\}.*\\) at .*${srcfile}:$stop_line\[\r\n\]+$stop_line\[ \t\]+printf\\(\"double :.*\", a\\);.*$gdb_prompt $" {
-		pass "step into print_long_arg_list (short match)"
-	    }
+# We can't just assume that a "step" will get us into
+# print_long_arg_list here,either.
+gdb_test "tbreak print_long_arg_list" \
+    "Temporary breakpoint .* file .*$srcfile, line .*" \
+    "tbreak in print_long_arg_list after stepping into memcpy"
+# The short match case below handles cases where a buffer
+# overflows or something, and expect can't deal with the full
+# line.  Perhaps a more elegant solution exists... -sts 1999-08-17
+if {![gdb_skip_float_test "step into print_long_arg_list"]} {
+    gdb_test_multiple "continue" "step into print_long_arg_list" {
+	-re ".*print_long_arg_list \\(a=22.25, b=33.375, c=0, d=-25, e=100, f=2345, struct1=\{value = 6, head = 0\}, struct2=\{value = 10, head = 0\}, struct3=\{value = 12, head = 0\}, struct4=\{value = 14, head = 0\}, flags=\{alpha = 1, beta = 0, gamma = 1, delta = 0, epsilon = 1, omega = 0\}, flags_combo=\{alpha = 1, beta = 0, ch1 = 121 \'y\', gamma = 1, delta = 0, ch2 = 110 \'n\', epsilon = 1, omega = 0\}, three_char=\{ch1 = 97 \'a\', ch2 = 98 \'b\', ch3 = 99 \'c\'\}, five_char=\{ch1 = 108 \'l\', ch2 = 109 \'m\', ch3 = 110 \'n\', ch4 = 111 \'o\', ch5 = 112 \'p\'\}, int_char_combo=\{int1 = 123, ch1 = 122 \'z\'\}, d1=\{double1 = 10.5\}, d2=\{double1 = -3.375\}, d3=\{double1 = 675.09375\}, f1=\{float1 = 45.2340012, float2 = 43.5999985\}, f2=\{float1 = 78.0100021, float2 = 122.099998\}, f3=\{float1 = -1232.34497, float2 = -199.210007\}\\) at .*${srcfile}:$stop_line\[\r\n\]+$stop_line\[ \t\]+printf\\(\"double :.*\", a\\);.*$gdb_prompt $" {
+	    pass "step into print_long_arg_list"
+	}
+	-re ".*print_long_arg_list.*\\(a=22.25, b=33.375, c=0, d=-25, e=100, f=2345, struct1=\{value = 6, head = 0\}, struct2=\{value = 10, head = 0\}, struct3=\{value = 12, head = 0\}, struct4=\{value = 14, head = 0\}, flags=\{alpha = 1, beta = 0, gamma = 1, delta = 0, epsilon = 1, omega = 0\}, flags_combo=\{alpha = 1, beta = 0, ch1 = 121 \'y\', gamma = 1, delta = 0, ch2 = 110 \'n\', epsilon = 1, omega = 0\}, three_char=\{ch1 = 97 \'a\', ch2 = 98 \'b\', ch3 = 99 \'c\'\}.*\\) at .*${srcfile}:$stop_line\[\r\n\]+$stop_line\[ \t\]+printf\\(\"double :.*\", a\\);.*$gdb_prompt $" {
+	    pass "step into print_long_arg_list (short match)"
 	}
-    } else {
-	# If skipping float tests, don't expect anything in arg list.
-	gdb_test "continue" \
-	    "print_long_arg_list \\(.*\\).*" \
-	    "step into print_long_arg_list"
     }
+} else {
+    # If skipping float tests, don't expect anything in arg list.
+    gdb_test "continue" \
+	"print_long_arg_list \\(.*\\).*" \
+	"step into print_long_arg_list"
 }
 
 set ws "\[\n\r\t \]+"
diff --git a/gdb/testsuite/gdb.base/callfuncs.exp b/gdb/testsuite/gdb.base/callfuncs.exp
index e717270..7cbc3be 100644
--- a/gdb/testsuite/gdb.base/callfuncs.exp
+++ b/gdb/testsuite/gdb.base/callfuncs.exp
@@ -165,15 +165,12 @@ proc do_function_calls {} {
     # and attempting a jump through that (a totally random address).
     setup_kfail gdb/1457 "rs6000*-*-aix*"
     setup_kfail gdb/1457 "powerpc*-*-aix*"
-    setup_kfail gdb/1457 hppa*-*-hpux*
     gdb_test "p t_func_values(add,func_val2)" " = 1"
     setup_kfail gdb/1457 "rs6000*-*-aix*"
     setup_kfail gdb/1457 "powerpc*-*-aix*"
-    setup_kfail gdb/1457 hppa*-*-hpux*
     gdb_test "p t_func_values(func_val1,doubleit)" " = 1"
     setup_kfail gdb/1457 "rs6000*-*-aix*"
     setup_kfail gdb/1457 "powerpc*-*-aix*"
-    setup_kfail gdb/1457 hppa*-*-hpux*
     gdb_test "p t_call_add(add,3,4)" " = 7"
     gdb_test "p t_call_add(func_val1,3,4)" " = 7"
 
diff --git a/gdb/testsuite/gdb.base/catch-fork-static.exp b/gdb/testsuite/gdb.base/catch-fork-static.exp
index 96570eb..78ce95e 100644
--- a/gdb/testsuite/gdb.base/catch-fork-static.exp
+++ b/gdb/testsuite/gdb.base/catch-fork-static.exp
@@ -27,8 +27,7 @@ if { [is_remote target] || ![isnative] } then {
 
 # Until "catch fork" is implemented on other targets...
 #
-if { ![istarget "hppa*-hp-hpux*"] && ![istarget "*-*-linux*"]
-     && ![istarget "*-*-openbsd*"] } then {
+if { ![istarget "*-*-linux*"] && ![istarget "*-*-openbsd*"] } then {
     continue
 }
 
diff --git a/gdb/testsuite/gdb.base/display.exp b/gdb/testsuite/gdb.base/display.exp
index 1d02629..2c6ce27 100644
--- a/gdb/testsuite/gdb.base/display.exp
+++ b/gdb/testsuite/gdb.base/display.exp
@@ -194,15 +194,9 @@ gdb_test "print/r j" " = 0x0\[\\r\\n\]+" "debug test output 2a"
 gdb_test "print j"   " = 0\[\\r\\n\]+"   "debug test output 3"
 
 # x/0 j doesn't produce any output and terminates PA64 process when testing
-if [istarget "hppa2.0w-hp-hpux11*"] {
-    xfail "'x/0 j' terminates PA64 process - skipped test point"
-} else {
-    gdb_test_no_output "x/0 j"
-}
-if [istarget "hppa*-hp-hpux*"] {
-    # on HP-UX you could access the first page without getting an error
-    gdb_test "x/rx j" ".*(Cannot access|Error accessing) memory.*|.*0xa:\[ \t\]*\[0-9\]+.*"
-}
+gdb_test_no_output "x/0 j"
+
+gdb_test "x/rx j" ".*(Cannot access|Error accessing) memory.*|.*0xa:\[ \t\]*\[0-9\]+.*"
 gdb_test "print/0 j" ".*Item count other than 1 is meaningless.*" "print/0 j"
 gdb_test "print/s sum" " = 1000" "ignored s"
 gdb_test "print/i sum" ".*Format letter.*is meaningless.*.*" "no i"
diff --git a/gdb/testsuite/gdb.base/foll-exec-mode.exp b/gdb/testsuite/gdb.base/foll-exec-mode.exp
index 8a0a3a9..181aa12 100644
--- a/gdb/testsuite/gdb.base/foll-exec-mode.exp
+++ b/gdb/testsuite/gdb.base/foll-exec-mode.exp
@@ -35,7 +35,7 @@ if { [target_info exists gdb_protocol]
 
 # Until "catch exec" is implemented on other targets...
 #
-if {![istarget "hppa*-hp-hpux*"] && ![istarget "*-linux*"]} then {
+if {![istarget "*-linux*"]} then {
      continue
 }
 
diff --git a/gdb/testsuite/gdb.base/foll-exec.exp b/gdb/testsuite/gdb.base/foll-exec.exp
index a36f212..8d4875a 100644
--- a/gdb/testsuite/gdb.base/foll-exec.exp
+++ b/gdb/testsuite/gdb.base/foll-exec.exp
@@ -18,7 +18,7 @@
 
 # Until "catch exec" is implemented on other targets...
 #
-if {![istarget "hppa*-hp-hpux*"] && ![istarget "*-linux*"]} then {
+if { ![istarget "*-linux*"] } then {
     continue
 }
 
@@ -193,10 +193,6 @@ proc do_exec_tests {} {
        }
    }
 
-   # DTS CLLbs16760
-   # PA64 doesn't know about $START$ in dld.sl at this point.  It should.
-   # - Michael Coulter
-   setup_xfail hppa2.0w-hp-hpux* CLLbs16760
    send_gdb "continue\n"
    gdb_expect {
      -re ".*xecuting new program:.*${testfile2}.*Catchpoint .*(exec\'d .*${testfile2}).*in .*$gdb_prompt $"\
diff --git a/gdb/testsuite/gdb.base/foll-fork.exp b/gdb/testsuite/gdb.base/foll-fork.exp
index 51e6a7a..1f23bf3 100644
--- a/gdb/testsuite/gdb.base/foll-fork.exp
+++ b/gdb/testsuite/gdb.base/foll-fork.exp
@@ -16,8 +16,7 @@
 # Until "set follow-fork-mode" and "catch fork" are implemented on
 # other targets...
 #
-if { ![istarget "hppa*-hp-hpux*"] && ![istarget "*-*-linux*"]
-     && ![istarget "*-*-openbsd*"] } then {
+if { ![istarget "*-*-linux*"] && ![istarget "*-*-openbsd*"] } then {
     continue
 }
 
diff --git a/gdb/testsuite/gdb.base/foll-vfork.exp b/gdb/testsuite/gdb.base/foll-vfork.exp
index 0659509..0356598 100644
--- a/gdb/testsuite/gdb.base/foll-vfork.exp
+++ b/gdb/testsuite/gdb.base/foll-vfork.exp
@@ -21,26 +21,10 @@
 # Until "set follow-fork-mode" and "catch vfork" are implemented on
 # other targets...
 #
-if {![istarget "hppa*-hp-hpux*"] && ![istarget "*-linux*"]} then {
+if {![istarget "*-linux*"]} then {
     continue
 }
 
-# Test to see if we are on an HP-UX 10.20 and if so,
-# do not run these tests as catching vfork is disabled for
-# 10.20.
-
-if [istarget "hppa*-hp-hpux10.20"] then {
-    return 0
-}
-
-# NOTE drow/2002-12-06: I don't know what the referenced kernel problem
-# is, but it appears to be fixed in recent HP/UX versions.
-
-##if [istarget "hppa2.0w-hp-hpux*"] {
-##  warning "Don't run gdb.base/foll-vfork.exp until JAGaa43495 kernel problem is fixed."
-##  return 0
-##}
-
 standard_testfile
 
 set compile_options debug
@@ -207,46 +191,18 @@ proc vfork_and_exec_child_follow_through_step {} {
    global gdb_prompt
    global srcfile2
 
-   if { [istarget "hppa*-*-hpux*"] && ![istarget "hppa*-*-hpux11.*"] } {
-      # This test cannot be performed prior to HP-UX 10.30, because
-      # ptrace-based debugging of a vforking program basically doesn't
-      # allow the child to do things like hit a breakpoint between a
-      # vfork and exec.  This means that saying "set follow-fork
-      # child; next" at a vfork() call won't work, because the
-      # implementation of "next" sets a "step resume" breakpoint at
-      # the return from the vfork(), which the child will hit on its
-      # way to exec'ing.
-      #
-      verbose "vfork child-following next test ignored for pre-HP/UX-10.30 targets."
-      return 0
-   }
-
    setup_gdb
 
    gdb_test_no_output "set follow-fork child"
 
    set test "step over vfork"
-   if { [istarget "hppa*-*-hpux*"]} {
-       # Since the child cannot be debugged until after it has exec'd,
-       # and since there's a bp on "main" in the parent, and since the
-       # bp's for the parent are recomputed in the exec'd child, the
-       # step through a vfork should land us in the "main" for the
-       # exec'd child, too.
-       #
-       set linenum [gdb_get_line_number "printf(\"Hello from vforked-prog" ${srcfile2}]
-       gdb_test_multiple "next" $test {
-	   -re "Attaching after vfork to.*Executing new program.*Breakpoint.*vforked-prog.c:${linenum}.*$gdb_prompt " {
-	       pass "$test"
-	   }
-       }
-   } else {
-       # The ideal support is to be able to debug the child even
-       # before it execs.  Thus, "next" lands on the next line after
-       # the vfork.
-       gdb_test_multiple "next" $test {
-	   -re "Attaching after .* vfork to child.*if \\(pid == 0\\).*$gdb_prompt " {
-	       pass "$test"
-	   }
+
+   # The ideal support is to be able to debug the child even
+   # before it execs.  Thus, "next" lands on the next line after
+   # the vfork.
+   gdb_test_multiple "next" $test {
+       -re "Attaching after .* vfork to child.*if \\(pid == 0\\).*$gdb_prompt " {
+	   pass "$test"
        }
    }
    # The parent has been detached; allow time for any output it might
diff --git a/gdb/testsuite/gdb.base/funcargs.exp b/gdb/testsuite/gdb.base/funcargs.exp
index 4cc92f4..1c1280f 100644
--- a/gdb/testsuite/gdb.base/funcargs.exp
+++ b/gdb/testsuite/gdb.base/funcargs.exp
@@ -1013,13 +1013,6 @@ proc localvars_in_indirect_call { } {
     #
 
     gdb_test_multiple "finish" "finish from indirectly called function" {
-	-re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
-	    #On hppa2.0w-hp-hpux11.00, gdb finishes at one line earlier than 
-	    #hppa1.1-hp-hpux11.00. Therefore, an extra "step" is necessary 
-	    #to continue the test.
-	    send_gdb "step\n"
-	    exp_continue
-	}
 	-re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
 	    pass "finish from indirectly called function"
 	}
diff --git a/gdb/testsuite/gdb.base/hbreak2.exp b/gdb/testsuite/gdb.base/hbreak2.exp
index 6330d95..e227e1e 100644
--- a/gdb/testsuite/gdb.base/hbreak2.exp
+++ b/gdb/testsuite/gdb.base/hbreak2.exp
@@ -396,27 +396,15 @@ gdb_test "print marker2(99)" \
 
 # As long as we're stopped (breakpointed) in a called function,
 # verify that we can successfully backtrace & such from here.
-#
-# In this and the following test, the _sr4export check apparently is needed
-# for hppa*-*-hpux.
-#
-gdb_test_multiple "bt" "backtrace while in called function" {
-    -re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*_sr4export.*$gdb_prompt $" {
-	pass "backtrace while in called function"
-    }
-    -re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*function called from gdb.*$gdb_prompt $" {
-	pass "backtrace while in called function"
-    }
-}
+gdb_test "bt" \
+    "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1\[ \t\]*<function called from gdb>.*" \
+    "backtrace while in called function"
 
 # Return from the called function.  For remote targets, it's important to do
 # this before runto_main, which otherwise may silently stop on the dummy
 # breakpoint inserted by GDB at the program's entry point.
 #
 gdb_test_multiple "finish" "finish from called function" {
-    -re "Run till exit from .*marker2.* at .*$bp_location8\r\n.* in _sr4export.*$gdb_prompt $" {
-	pass "finish from called function"
-    }
     -re "Run till exit from .*marker2.* at .*$bp_location8\r\n.*function called from gdb.*$gdb_prompt $" {
 	pass "finish from called function"
     }
diff --git a/gdb/testsuite/gdb.base/inferior-died.exp b/gdb/testsuite/gdb.base/inferior-died.exp
index c441484..5a88a13 100644
--- a/gdb/testsuite/gdb.base/inferior-died.exp
+++ b/gdb/testsuite/gdb.base/inferior-died.exp
@@ -21,7 +21,7 @@ if { [is_remote target] || ![isnative] } then {
 # Until "set follow-fork-mode" and "catch fork" are implemented on
 # other targets...
 #
-if {![istarget "hppa*-hp-hpux*"] && ![istarget "*-*-linux*"]} then {
+if { ![istarget "*-*-linux*"] } then {
     unsupported "inferior-died.exp"
     continue
 }
diff --git a/gdb/testsuite/gdb.base/interrupt.exp b/gdb/testsuite/gdb.base/interrupt.exp
index 426c2a6..ed9bf32 100644
--- a/gdb/testsuite/gdb.base/interrupt.exp
+++ b/gdb/testsuite/gdb.base/interrupt.exp
@@ -99,11 +99,6 @@ if ![file exists $binfile] then {
 		return
 	    }
 	    -re "$gdb_prompt $" {
-		# On HPUX-11.0 'send "p func1 ()"' above
-		# terminates the program. A defect is pending on this
-		# issue [defect #DTS CHFts24203]. Hence calling setup_xfail
-		# below.
-	        setup_xfail "hppa*-*-*11*" CHFts24203
 		fail "call function when asleep (wrong output)"
 	    }
 	    default {
@@ -118,7 +113,6 @@ if ![file exists $binfile] then {
 		setup_xfail "vax-*-*"
 		setup_xfail "alpha-*-*"
 		setup_xfail "*-*-*bsd*"
-		setup_xfail "*-*-hpux*"
 		setup_xfail "*-*-*lynx*"
 		fail "$msg (stays asleep)"
 		# Send the inferior a newline to wake it up.
@@ -153,9 +147,6 @@ if ![file exists $binfile] then {
 	# The optional leading \r\n is in case we sent a newline above
 	# to wake the program, in which case the program now sends it
 	# back.
-        # FIXME: The pattern below leads to an expected success on HPUX-11.0
-        # but the success is spurious. Need to provide the right reg.expr.
-        # here.
 
 	set msg "echo data"
 	gdb_test_multiple "" $msg {
diff --git a/gdb/testsuite/gdb.base/multi-forks.exp b/gdb/testsuite/gdb.base/multi-forks.exp
index cb1464d..d9937db 100644
--- a/gdb/testsuite/gdb.base/multi-forks.exp
+++ b/gdb/testsuite/gdb.base/multi-forks.exp
@@ -16,7 +16,7 @@
 # Until "set follow-fork-mode" and "catch fork" are implemented on
 # other targets...
 #
-if {![istarget "hppa*-hp-hpux*"] && ![istarget "*-*-linux*"]} then {
+if { ![istarget "*-*-linux*"] } then {
     continue
 }
 
@@ -129,12 +129,6 @@ gdb_test "print pids\[0\]==0 || pids\[1\]==0 || pids\[2\]==0 || pids\[3\]==0" \
 # Now test with detach-on-fork off.
 #
 
-# detach-on-fork isn't implemented on hpux.
-#
-if {![istarget "*-*-linux*"]} then {
-    continue
-}
-
 # Start with a fresh gdb
 
 clean_restart ${binfile}
diff --git a/gdb/testsuite/gdb.base/nodebug.exp b/gdb/testsuite/gdb.base/nodebug.exp
index 5cf7c77..fd021a6 100644
--- a/gdb/testsuite/gdb.base/nodebug.exp
+++ b/gdb/testsuite/gdb.base/nodebug.exp
@@ -81,54 +81,37 @@ if [runto inner] then {
     # doesn't know the variables exist at all.
     setup_xfail "rs6000*-*-aix*"
     setup_xfail "powerpc*-*-aix*"
-    if ![test_compiler_info "gcc-*"] {
-        setup_xfail "hppa*-*-hpux*"
-    }
 
     gdb_test "p datalocal" "= 4"
 
     setup_xfail "rs6000*-*-aix*"
     setup_xfail "powerpc*-*-aix*"
-    if ![test_compiler_info "gcc-*"] {
-        setup_xfail "hppa*-*-hpux*"
-    }
 
     gdb_test "whatis datalocal" "<(data variable|variable), no debug info>"
 
     setup_xfail "rs6000*-*-aix*"
     setup_xfail "powerpc*-*-aix*"
-    if ![test_compiler_info "gcc-*"] {
-        setup_xfail "hppa*-*-hpux*"
-    }
 
     gdb_test "ptype datalocal" "<(data variable|variable), no debug info>"
     gdb_test "p bssglobal" "= 0"
     gdb_test "whatis bssglobal" "<(data variable|variable), no debug info>|int"
     gdb_test "ptype bssglobal" "<(data variable|variable), no debug info>|int"
-    
+
     setup_xfail "rs6000*-*-aix*"
     setup_xfail "powerpc*-*-aix*"
-    if ![test_compiler_info "gcc-*"] {
-        setup_xfail "hppa*-*-hpux*"
-    }
 
     gdb_test "p bsslocal" "= 0"
 
     setup_xfail "rs6000*-*-aix*"
     setup_xfail "powerpc*-*-aix*"
-    if ![test_compiler_info "gcc-*"] {
-        setup_xfail "hppa*-*-hpux*"
-    }
 
     gdb_test "whatis bsslocal" "<(data variable|variable), no debug info>"
 
     setup_xfail "rs6000*-*-aix*"
     setup_xfail "powerpc*-*-aix*"
-    if ![test_compiler_info "gcc-*"] {
-        setup_xfail "hppa*-*-hpux*"
-    }
+
     gdb_test "ptype bsslocal" "<(data variable|variable), no debug info>"
-    
+
     gdb_test "backtrace 10" "#0.*inner.*#1.*middle.*#2.*top.*#3.*main.*" \
 	"backtrace from inner in nodebug.exp"
     # Or if that doesn't work, at least hope for the external symbols
@@ -143,32 +126,12 @@ if [runto inner] then {
 	setup_xfail "*-*-*" 2416
 	fail "p/c array_index(\"abcdef\",2)"
     } else {
-	#
-	# On HP-UX, a support function (__d_plt_call) necessary to
-	# implement an inferior call is normally only available when
-	# the inferior was compiled with -g.  Thus, we expect this
-	# testpoint to fail on HP-UX.
-	if { [istarget "hppa*-hpux*"] } {
-	    gdb_test_multiple "p/c array_index(\"abcdef\",2)" \
-		"p/c array_index(\"abcdef\",2)" {
-		    -re ".*Suggest linking executable with -g.*$gdb_prompt $" {
-			pass "p/c array_index(\"abcdef\",2)" 
-		    }
-		    -re ".*Cannot find __wdb_call_dummy in.*end.o.*" {
-			pass "p/c array_index(\"abcdef\",2)" 
-		    }
-		-re ".*99 'c'.*" {
-		    pass "p/c array_index(\"abcdef\",2)"
-		}
-	    }
-	} else {
-	    # We need to up this because this can be really slow on some boards.
-	    # (malloc() is called as part of the test).
-	    set prev_timeout $timeout
-	    set timeout 60
-	    gdb_test {p/c array_index("abcdef",2)} " = 99 'c'"
-	    set timeout $prev_timeout
-	}
+	# We need to up this because this can be really slow on some boards.
+	# (malloc() is called as part of the test).
+	set prev_timeout $timeout
+	set timeout 60
+	gdb_test {p/c array_index("abcdef",2)} " = 99 'c'"
+	set timeout $prev_timeout
     }
     
     # Now, try that we can give names of file-local symbols which happen
diff --git a/gdb/testsuite/gdb.base/sepdebug.exp b/gdb/testsuite/gdb.base/sepdebug.exp
index c363be4..518cf4c 100644
--- a/gdb/testsuite/gdb.base/sepdebug.exp
+++ b/gdb/testsuite/gdb.base/sepdebug.exp
@@ -456,19 +456,10 @@ gdb_test "print marker2(99)" \
 
 # As long as we're stopped (breakpointed) in a called function,
 # verify that we can successfully backtrace & such from here.
-#
-# In this and the following test, the _sr4export check apparently is needed
-# for hppa*-*-hpux.
-#
 
-gdb_test_multiple "bt" "backtrace while in called function" {
-    -re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*_sr4export.*$gdb_prompt $" {
-	pass "backtrace while in called function"
-    }
-    -re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*function called from gdb.*$gdb_prompt $" {
-	pass "backtrace while in called function"
-    }
-}
+gdb_test "bt" \
+    "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1\[ \t\]*<function called from gdb>.*" \
+    "backtrace while in called function"
 
 # Return from the called function.  For remote targets, it's important to do
 # this before runto_main, which otherwise may silently stop on the dummy
@@ -476,9 +467,6 @@ gdb_test_multiple "bt" "backtrace while in called function" {
 #
 
 gdb_test_multiple "finish" "finish from called function" {
-    -re "Run till exit from .*marker2.* at .*$bp_location8\r\n.* in _sr4export.*$gdb_prompt $" {
-	pass "finish from called function"
-    }
     -re "Run till exit from .*marker2.* at .*$bp_location8\r\n.*function called from gdb.*$gdb_prompt $" {
 	pass "finish from called function"
     }
@@ -511,43 +499,6 @@ gdb_test_multiple "finish" "finish from outermost frame disallowed" {
     }
 }
 
-# Verify that we can explicitly ask GDB to stop on all shared library
-# events, and that it does so.
-#
-if [istarget "hppa*-*-hpux*"] then {
-    if ![runto_main] then { fail "sepdebug tests suppressed" }
-
-    gdb_test_no_output "set stop-on-solib-events 1" \
-	"set stop-on-solib-events"
-
-    gdb_test "run" \
-	"Stopped due to shared library event.*" \
-	"triggered stop-on-solib-events" \
-	"Start it from the beginning.*y or n. $" \
-	"y"
-
-    gdb_test_no_output "set stop-on-solib-events 0" \
-      "reset stop-on-solib-events"
-}
-
-# Hardware breakpoints are unsupported on HP-UX.  Verify that GDB
-# gracefully responds to requests to create them.
-#
-if [istarget "hppa*-*-hpux*"] then {
-    if ![runto_main] then { fail "sepdebug tests suppressed" }
-
-    gdb_test "hbreak" \
-	"No hardware breakpoint support in the target.*" \
-	"hw breaks disallowed"
-
-    gdb_test "thbreak" \
-      "No hardware breakpoint support in the target.*" \
-      "temporary hw breaks disallowed"
-}
-
-#********
-
-
 #
 # Test "next" over recursive function call.
 #
diff --git a/gdb/testsuite/gdb.base/so-indr-cl.c b/gdb/testsuite/gdb.base/so-indr-cl.c
deleted file mode 100644
index 9b5e5a9..0000000
--- a/gdb/testsuite/gdb.base/so-indr-cl.c
+++ /dev/null
@@ -1,22 +0,0 @@
-/* This program is linked against SOM shared libraries, which the loader
-   automatically loads along with the program itself).
-   */
-
-#include <stdio.h>
-extern "C" int solib_main (int);
-
-static int
-solib_wrapper (int (*function)(int))
-{
-  return (*function)(100);
-}
-
-
-int main ()
-{
-  int  result;
-
-  /* This is an indirect call to solib_main. */
-  result = solib_wrapper (solib_main);
-  return 0;
-}
diff --git a/gdb/testsuite/gdb.base/so-indr-cl.exp b/gdb/testsuite/gdb.base/so-indr-cl.exp
deleted file mode 100644
index d27c9f0..0000000
--- a/gdb/testsuite/gdb.base/so-indr-cl.exp
+++ /dev/null
@@ -1,129 +0,0 @@
-#   Copyright 1997-2015 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-# are we on a target board
-if ![isnative] then {
-    return
-}
-
-# This test is presently only valid on HP-UX, since it requires
-# that we use HP-UX-specific compiler & linker options to build
-# the testcase.
-#
-if {! [istarget "hppa*-*-*hpux*"] } {
-    return
-}
-
-set libfile "solib"
-set testfile "so-indr-cl"
-set srcfile ${testfile}.c
-set binfile ${objdir}/${subdir}/${testfile}
-
-if [get_compiler_info] {
-    return -1
-}
-
-# Build the shared libraries this test case needs.
-#
-#cd ${subdir}
-#remote_exec build "$CC -g +z -c ${libfile}1.c -o ${libfile}1.o"
-
-
-if {$hp_cc_compiler || $hp_aCC_compiler} {
-    set additional_flags "additional_flags=+z"
-} else {
-    set additional_flags "additional_flags=-fpic"
-}
-if {[gdb_compile "${srcdir}/${subdir}/${libfile}1.c" "${objdir}/${subdir}/${libfile}1.o" object [list debug $additional_flags]] != ""} {
-    perror "Couldn't compile ${libfile}1.c"
-    return -1
-}
-
-if [istarget "hppa*-hp-hpux*"] then {
-    remote_exec build "ld -b ${objdir}/${subdir}/${libfile}1.o -o ${objdir}/${subdir}/${libfile}1.sl"
-} else {
-    set additional_flags "additional_flags=-shared"
-    gdb_compile "${objdir}/${subdir}/${libfile}1.o" "${objdir}/${subdir}/${libfile}1.sl" executable [list debug $additional_flags]
-}
-
-# Build the test case
-#remote_exec build "$CC -Aa -g ${srcfile} ${libfile}1.sl -o ${binfile}"
-
-
-if {$hp_cc_compiler} {
-    set additional_flags "additional_flags=-Ae"
-} else {
-    set additional_flags ""
-}
-if {[gdb_compile "${srcdir}/${subdir}/${srcfile} ${objdir}/${subdir}/${libfile}1.sl" "${binfile}" executable [list debug $additional_flags]] != ""} {
-    perror "Couldn't build ${binfile}"
-    return -1
-}
-
-#cd ..
-
-# Start with a fresh gdb
-
-gdb_exit
-gdb_start
-gdb_reinitialize_dir $srcdir/$subdir
-gdb_load ${binfile}
-
-# This program implicitly loads SOM shared libraries.  We wish to test
-# whether a user can set breakpoints in a shlib before running the
-# program, where the program doesn't directly call the shlib, but
-# indirectly does via passing its address to another function.
-#
-# ??rehrauer: Currently, this doesn't work, but we do catch the case
-# and explicitly disallow it.  The reason it fails appears to be that
-#
-#  [1] gdb consults only the linker symbol table in this scenario, and
-#  [2] For a shlib function that is only indirectly called from the
-#      main a.out, there is in the linker symbol table a stub whose
-#      address is negative.  Possibly this is to be interpreted as
-#      an index into the DLT??
-#
-send_gdb "break solib_main\n"
-gdb_expect {
-  -re "Cannot break on solib_main without a running program.*$gdb_prompt $"\
-          {pass "break on indirect solib call before running"}
-  -re "Breakpoint.*deferred.*\\(\"solib_main\" was not found.*$gdb_prompt $"\
-	  {pass "break on indirect solib call before running 2"}
-  -re "$gdb_prompt $"\
-          {fail "break on indirect solib call before running"}
-  timeout {fail "(timeout) break on indirect solib call before running"}
-}
-
-# However, if we do run to the program's main, we then ought to be
-# able to set a breakpoint on the indirectly called function.  (Apparently,
-# once the inferior is running, gdb consults the debug info rather than
-# the linker symbol table, and is able to find the correct address.)
-#
-if ![runto_main] then { fail "indirect solib call tests suppressed" }
-
-# Verify that we can step over the first shlib call.
-#
-send_gdb "break solib_main\n"
-gdb_expect {
-  -re ".*\[Bb\]reakpoint \[0-9\]* at 0x\[0-9a-fA-F\]*: file.*${libfile}1.c.*$gdb_prompt $"\
-          {pass "break on indirect solib call after running"}
-  -re "$gdb_prompt $"\
-          {fail "break on indirect solib call after running"}
-  timeout {fail "(timeout) break on indirect solib call after running"}
-}
-
-gdb_exit
-return 0
diff --git a/gdb/testsuite/gdb.base/solib.c b/gdb/testsuite/gdb.base/solib.c
deleted file mode 100644
index 6fb9f5e..0000000
--- a/gdb/testsuite/gdb.base/solib.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* This program uses HP-UX-specific features to load and unload SOM
-   shared libraries that it wasn't linked against (i.e., libraries
-   that the loader doesn't automatically load along with the program
-   itself).
-   */
-
-#include <stdio.h>
-#include <dl.h>
-
-int main ()
-{
-  shl_t  solib_handle;
-  int  dummy;
-  int  status;
-  int  (*solib_main) (int);
-
-  /* Load a shlib, with immediate binding of all symbols.
-
-     Note that the pathname of the loaded shlib is assumed to be relative
-     to the testsuite directory (from whence the tested GDB is run), not
-     from dot/.
-   */
-  dummy = 1;  /* Put some code between shl_ calls... */
-  solib_handle = shl_load ("gdb.base/solib1.sl", BIND_IMMEDIATE, 0);
-
-  /* Find a function within the shlib, and call it. */
-  status = shl_findsym (&solib_handle,
-                        "solib_main",
-                        TYPE_PROCEDURE,
-                        (long *) &solib_main);
-  status = (*solib_main) (dummy);
-
-  /* Unload the shlib. */
-  status = shl_unload (solib_handle);
-
-  /* Load a different shlib, with deferred binding of all symbols. */
-  dummy = 2;
-  solib_handle = shl_load ("gdb.base/solib2.sl", BIND_DEFERRED, 0);
-
-  /* Find a function within the shlib, and call it. */
-  status = shl_findsym (&solib_handle,
-                        "solib_main",
-                        TYPE_PROCEDURE,
-                        (long *) &solib_main);
-  status = (*solib_main) (dummy);
-
-  /* Unload the shlib. */
-  status = shl_unload (solib_handle);
-
-  /* Reload the first shlib again, with deferred symbol binding this time. */
-  dummy = 3;
-  solib_handle = shl_load ("gdb.base/solib1.sl", BIND_IMMEDIATE, 0);
-
-  /* Unload it without trying to find any symbols in it. */
-  status = shl_unload (solib_handle);
-
-  /* All done. */
-  dummy = -1;
-  return 0;
-}
diff --git a/gdb/testsuite/gdb.base/solib.exp b/gdb/testsuite/gdb.base/solib.exp
deleted file mode 100644
index 5e08d5b..0000000
--- a/gdb/testsuite/gdb.base/solib.exp
+++ /dev/null
@@ -1,352 +0,0 @@
-#   Copyright 1997-2015 Free Software Foundation, Inc.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-# are we on a target board
-if ![isnative] then {
-    return
-}
-
-# This test is presently only valid on HP-UX.  It verifies GDB's
-# ability to catch loads and unloads of shared libraries.
-#
-
-#setup_xfail "*-*-*"
-#clear_xfail "hppa*-*-*hpux*"
-if {![istarget "hppa*-*-hpux*"]} {
-    return 0
-}
-
-set testfile "solib"
-set srcfile ${testfile}.c
-set binfile ${objdir}/${subdir}/${testfile}
-
-# build the first test case
-if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
-     untested solib.exp
-     return -1
-}
-
-if [get_compiler_info] {
-    return -1
-}
-
-# Build the shared libraries this test case needs.
-#
-#cd ${subdir}
-#remote_exec build "$CC -g +z -c ${testfile}1.c -o ${testfile}1.o"
-#remote_exec build "$CC -g +z -c ${testfile}2.c -o ${testfile}2.o"
-
-if {$gcc_compiled == 0} {
-    if [istarget "hppa*-hp-hpux*"] then {
-	set additional_flags "additional_flags=+z"
-    } else {
-	# don't know what the compiler is...
-	set additional_flags ""
-    }
-} else {
-    set additional_flags "additional_flags=-fpic"
-}
-
-if {[gdb_compile "${srcdir}/${subdir}/${testfile}1.c" "${binfile}1.o" object [list debug $additional_flags]] != ""} {
-    perror "Couldn't compile ${testfile}1.c"
-    #return -1
-}
-if {[gdb_compile "${srcdir}/${subdir}/${testfile}2.c" "${binfile}2.o" object [list debug, $additional_flags]] != ""} {
-    perror "Couldn't compile ${testfile}2.c"
-    #return -1
-}
-
-if [istarget "hppa*-*-hpux*"] {
-    remote_exec build "ld -b ${binfile}1.o -o ${binfile}1.sl"
-    remote_exec build "ld -b ${binfile}2.o -o ${binfile}2.sl"
-} else {
-    set additional_flags "additional_flags=-shared"
-    gdb_compile "${binfile}1.o" "${binfile}1.sl" executable [list debug $additional_flags]
-    gdb_compile "${binfile}2.o" "${binfile}2.sl" executable [list debug $additional_flags]
-}
-
-# Build a version where the main program is in a shared library.  For
-# testing an indirect call made in a shared library.
-
-if {[gdb_compile "${srcdir}/${subdir}/${testfile}.c" "${binfile}_sl.o" object [list debug $additional_flags]] != ""} {
-    perror "Couldn't compile ${testfile}.c for ${binfile}_sl.o"
-    #return -1
-}
-
-if { [istarget "hppa*-*-hpux*"] } {
-    remote_exec build "ld -b ${binfile}_sl.o -o ${binfile}_sl.sl"
-} else {
-    set additional_flags "additional_flags=-shared"
-    gdb_compile "${binfile}_sl.o" "${binfile}_sl.sl" executable [list debug $additional_flags]
-}
-
-if { [istarget "hppa*-*-hpux*"] } {
-    set additional_flags "-Wl,-u,main"
-    if { [gdb_compile "${binfile}_sl.sl" "${binfile}_sl" executable [list debug $additional_flags]] != "" } {
-        untested solib.exp
-        return -1
-    }
-} else {
-    # FIXME: need to fill this part in for non-HP build
-}
-
-#cd ..
-
-# Start with a fresh gdb
-
-gdb_exit
-gdb_start
-gdb_reinitialize_dir $srcdir/$subdir
-gdb_load ${binfile}
-
-# This program manually loads and unloads SOM shared libraries, via calls
-# to shl_load and shl_unload.
-#
-if ![runto_main] then { fail "catch load/unload tests suppressed" }
-
-# Verify that we complain if the user tells us to catch something we
-# don't understand.
-#
-send_gdb "catch a_cold\n"
-gdb_expect {
-  -re "Unknown event kind specified for catch.*$gdb_prompt $"\
-          {pass "bogus catch kind is disallowed"}
-  -re "$gdb_prompt $"\
-          {fail "bogus catch kind is disallowed"}
-  timeout {fail "(timeout) bogus catch kind is disallowed"}
-}
-
-# Verify that we can set a generic catchpoint on shlib loads.  I.e., that
-# we can catch any shlib load, without specifying the name.
-#
-send_gdb "catch load\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\]* .load <any library>.*$gdb_prompt $"\
-          {pass "set generic catch load"}
-  -re "$gdb_prompt $"\
-          {fail "set generic catch load"}
-  timeout {fail "(timeout) set generic catch load"}
-}
-
-send_gdb "continue\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\] .loaded gdb.base/solib1.sl.*$gdb_prompt $"\
-          {pass "caught generic solib load"}
-  -re "$gdb_prompt $"\
-          {fail "caught generic solib load"}
-  timeout {fail "(timeout) caught generic solib load"}
-}
-
-# Set a breakpoint on the line following the shl_load call, and
-# continue.
-#
-# ??rehrauer: It appears that we can't just say "finish" from here;
-# GDB is getting confused by the dld's presense on the stack.
-#
-send_gdb "break 27\n"
-gdb_expect {
-  -re "Breakpoint \[0-9\]* at.*$gdb_prompt $"\
-          {pass "set break after shl_load"}
-  -re "$gdb_prompt $"\
-          {fail "set break after shl_load"}
-  timeout {fail "(timeout) set break after shl_load"}
-}
-
-send_gdb "continue\n"
-gdb_expect {
-  -re "Breakpoint \[0-9\]*, main .. at .*solib.c:27.*$gdb_prompt $"\
-          {pass "continue after generic catch load"}
-  -re "$gdb_prompt $"\
-          {fail "continue after generic catch load"}
-  timeout {fail "(timeout) continue after generic catch load"}
-}
-
-# Step over the call to shl_findsym.
-#
-# ??rehrauer: In theory, since the call to shl_load asked for
-# immediate binding of the shlib's symbols, and since the
-# shlib's symbols should have been auto-loaded, we ought to
-# be able to set a breakpoint on solib_main now.  However,
-# that seems not to be the case.  Dunno why for sure; perhaps
-# the breakpoint wants to be set on an import stub in the
-# main program for solib_main?  There wouldn't be one, in
-# this case...
-# 
-send_gdb "next\n"
-gdb_expect {
-  -re "$gdb_prompt $"\
-          {pass "step over shl_findsym"}
-  timeout {fail "(timeout) step over shl_findsym"}
-}
-
-# Verify that we can catch an unload of any library.
-#
-send_gdb "catch unload\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\]* .unload <any library>.*$gdb_prompt $"\
-          {pass "set generic catch unload"}
-  -re "$gdb_prompt $"\
-          {fail "set generic catch unload"}
-  timeout {fail "(timeout) set generic catch load"}
-}
-
-send_gdb "continue\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\] .unloaded gdb.base/solib1.sl.*$gdb_prompt $"\
-          {pass "caught generic solib unload"}
-  -re "$gdb_prompt $"\
-          {fail "caught generic solib unload"}
-  timeout {fail "(timeout) caught generic solib unload"}
-}
-
-# Verify that we can catch a load of a specific library.  (Delete
-# all the other catchpoints first, so that the generic catchpoints
-# we've previously set don't trigger.)
-#
-send_gdb "delete\n"
-gdb_expect {
-  -re "Delete all breakpoints.*y or n.*"\
-          {send_gdb "y\n"
-           gdb_expect {
-             -re "$gdb_prompt $"\
-                     {pass "delete all catchpoints"}
-             timeout {fail "(timeout) delete all catchpoints"}
-           }
-          }
-  -re "$gdb_prompt $"\
-          {fail "delete all catchpoints"}
-  timeout {fail "(timeout) delete all catchpoints"}
-}
-
-send_gdb "catch load gdb.base/solib2.sl\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\]* .load gdb.base/solib2.sl.*$gdb_prompt $"\
-          {pass "set specific catch load"}
-  -re "$gdb_prompt $"\
-          {fail "set specific catch load"}
-  timeout {fail "(timeout) set specific catch load"}
-}
-
-send_gdb "continue\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\] .loaded gdb.base/solib2.sl.*$gdb_prompt $"\
-          {pass "caught specific solib load"}
-  -re "$gdb_prompt $"\
-          {fail "caught specific solib load"}
-  timeout {fail "(timeout) caught specific solib load"}
-}
-
-# Verify that we can catch an unload of a specific library.
-#
-send_gdb "catch unload gdb.base/solib2.sl\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\]* .unload gdb.base/solib2.sl.*$gdb_prompt $"\
-          {pass "set specific catch unload"}
-  -re "$gdb_prompt $"\
-          {fail "set specific catch unload"}
-  timeout {fail "(timeout) set specific catch unload"}
-}
-
-send_gdb "continue\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\] .unloaded gdb.base/solib2.sl.*$gdb_prompt $"\
-          {pass "caught specific solib unload"}
-  -re "$gdb_prompt $"\
-          {fail "caught specific solib unload"}
-  timeout {fail "(timeout) caught specific solib unload"}
-}
-
-# Verify that we can set a catchpoint on a specific library that
-# happens not to be loaded by the program.  And, that this catchpoint
-# won't trigger inappropriately when other shlibs are loaded.
-#
-send_gdb "break 55\n"
-gdb_expect {
-  -re "Breakpoint \[0-9\]* at.*$gdb_prompt $"\
-          {pass "set break on shl_unload"}
-  -re "$gdb_prompt $"\
-          {fail "set break on shl_unload"}
-  timeout {fail "(timeout) set break on shl_unload"}
-}
-
-send_gdb "break 58\n"
-gdb_expect {
-  -re "Breakpoint \[0-9\]* at.*$gdb_prompt $"\
-          {pass "set break after shl_unload"}
-  -re "$gdb_prompt $"\
-          {fail "set break after shl_unload"}
-  timeout {fail "(timeout) set break after shl_unload"}
-}
-
-send_gdb "catch load foobar.sl\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\]* .load foobar.sl.*$gdb_prompt $"\
-          {pass "set specific catch load for nonloaded shlib"}
-  -re "$gdb_prompt $"\
-          {fail "set specific catch load for nonloaded shlib"}
-  timeout {fail "(timeout) set specific catch load for nonloaded shlib"}
-}
-
-send_gdb "catch unload foobar.sl\n"
-gdb_expect {
-  -re "Catchpoint \[0-9\]* .unload foobar.sl.*$gdb_prompt $"\
-          {pass "set specific catch unload for nonloaded shlib"}
-  -re "$gdb_prompt $"\
-          {fail "set specific catch unload for nonloaded shlib"}
-  timeout {fail "(timeout) set specific catch unload for nonloaded shlib"}
-}
-
-send_gdb "continue\n"
-gdb_expect {
-  -re "Breakpoint \[0-9\]*.*$gdb_prompt $"\
-          {pass "specific catch load doesn't trigger inappropriately"}
-  -re "$gdb_prompt $"\
-          {fail "specific catch load doesn't trigger inappropriately"}
-  timeout {fail "(timeout) specific catch load doesn't trigger inappropriately"}
-}
-
-send_gdb "continue\n"
-gdb_expect {
-  -re "Breakpoint \[0-9\]*.*$gdb_prompt $"\
-          {pass "specific catch unload doesn't trigger inappropriately"}
-  -re "$gdb_prompt $"\
-          {fail "specific catch unload doesn't trigger inappropriately"}
-  timeout {fail "(timeout) specific catch unload doesn't trigger inappropriately"}
-}
-
-# ??rehrauer: There ought to be testpoints here that verify that
-# load/unload catchpoints can use conditionals, can be temporary,
-# self-disabling, etc etc.
-#
-
-gdb_exit
-
-#
-# Test stepping into an indirect call in a shared library.
-#
-
-gdb_start
-gdb_load ${binfile}_sl
-gdb_test "break main" ".*deferred. at .main..*" "break on main"
-gdb_test "run" ".*Breakpoint.*main.*solib.c.*" "hit breakpoint at main"
-gdb_test "break 45" "Breakpoint.*solib.c, line 45.*" "break on indirect call"
-gdb_test "continue" "Continuing.*solib.c:45.*" \
-	"continue to break on indirect call"
-gdb_test "step" "solib_main.*solib1.c:17.*return arg.arg.*" \
-	"step into indirect call from a shared library"
-gdb_exit
-
-return 0
diff --git a/gdb/testsuite/gdb.base/solib1.c b/gdb/testsuite/gdb.base/solib1.c
index c7d17f4..16b7233 100644
--- a/gdb/testsuite/gdb.base/solib1.c
+++ b/gdb/testsuite/gdb.base/solib1.c
@@ -1,7 +1,3 @@
-/* This program is intended to be built as an HP-UX SOM shared
-   library, for use by the solib.exp testcase.  It simply returns
-   the square of its integer argument.
-   */
 #if defined(__cplusplus) || defined(__STDCPP__)
 extern "C"
 #endif
diff --git a/gdb/testsuite/gdb.base/solib2.c b/gdb/testsuite/gdb.base/solib2.c
deleted file mode 100644
index 131c337..0000000
--- a/gdb/testsuite/gdb.base/solib2.c
+++ /dev/null
@@ -1,14 +0,0 @@
-/* This program is intended to be built as an HP-UX SOM shared
-   library, for use by the solib.exp testcase.  It simply returns
-   the cube of its integer argument.
-   */
-#ifdef __cplusplus
-extern "C" {
-#endif
-int  solib_main (int  arg)
-{
-  return arg*arg*arg;
-}
-#ifdef __cplusplus
-}
-#endif
diff --git a/gdb/testsuite/gdb.base/step-test.exp b/gdb/testsuite/gdb.base/step-test.exp
index 13938b0..50534fc 100644
--- a/gdb/testsuite/gdb.base/step-test.exp
+++ b/gdb/testsuite/gdb.base/step-test.exp
@@ -65,7 +65,7 @@ gdb_test "step" ".*${decimal}.*myglob.*"   "step into"
 # to the restoration of the global pointer (which is a caller-save).
 # Similarly on MIPS PIC targets.
 set test "step out"
-if { [istarget "hppa2.0w-hp-hpux*"] || [istarget "ia64-*-*"] || [istarget "mips*-*-*"]} {
+if { [istarget "ia64-*-*"] || [istarget "mips*-*-*"]} {
     gdb_test_multiple "finish" "$test" {
         -re ".*${decimal}.*a.*5.*= a.*3.*$gdb_prompt $" {
 	    pass "$test"
@@ -157,7 +157,7 @@ gdb_test_multiple "finish" "$test" {
 	# On IA-64, we end up on callee instead of on the following line due
 	# to the restoration of the global pointer.
 	# Similarly on MIPS PIC targets.
-	if { [istarget "hppa2.0w-hp-hpux*"] || [istarget "ia64-*-*"] || [istarget "mips*-*-*"] } {
+	if { [istarget "ia64-*-*"] || [istarget "mips*-*-*"] } {
 	    test_i "$test" "stepi" \
 		".*${decimal}.*callee.*STEPI"  ".*${decimal}.*callee.*NEXTI"
 	} else {
diff --git a/gdb/testsuite/gdb.dwarf2/pr10770.c b/gdb/testsuite/gdb.dwarf2/pr10770.c
index 64dfc91..b7e0ed4 100644
--- a/gdb/testsuite/gdb.dwarf2/pr10770.c
+++ b/gdb/testsuite/gdb.dwarf2/pr10770.c
@@ -4,7 +4,6 @@
 /* HP-UX libunwind.so doesn't provide _UA_END_OF_STACK */
 /* { dg-do run } */
 /* { dg-options "-fexceptions" } */
-/* { dg-skip-if "" { "ia64-*-hpux11.*" }  { "*" } { "" } } */
 /* Verify DW_OP_* handling in the unwinder.  */
 
 #include <unwind.h>
diff --git a/gdb/testsuite/gdb.mi/non-stop.c b/gdb/testsuite/gdb.mi/non-stop.c
index 5acfefa..530b5d6 100644
--- a/gdb/testsuite/gdb.mi/non-stop.c
+++ b/gdb/testsuite/gdb.mi/non-stop.c
@@ -21,19 +21,6 @@
 #include <pthread.h>
 #include <unistd.h>
 
-/* Under HPUX 10, the second arg of pthread_create
-   is prototyped to be just a "pthread_attr_t", while under Solaris it
-   is a "pthread_attr_t *".  Arg! */
-
-#if defined (__hpux__)
-#define PTHREAD_CREATE_ARG2(arg) arg
-#define PTHREAD_CREATE_NULL_ARG2 null_attr
-static pthread_attr_t null_attr;
-#else
-#define PTHREAD_CREATE_ARG2(arg) &arg
-#define PTHREAD_CREATE_NULL_ARG2 NULL
-#endif
-
 int exit_first_thread = 0;
 
 void break_at_me (int id, int i)
@@ -71,7 +58,7 @@ create_thread (int id)
   int *id2 = malloc (sizeof (int));
   *id2 = id;
 
-  if (pthread_create (&tid, PTHREAD_CREATE_NULL_ARG2, worker, (void *) id2))
+  if (pthread_create (&tid, NULL, worker, (void *) id2))
     {
       perror ("pthread_create 1");
       exit (1);
diff --git a/gdb/testsuite/gdb.mi/pthreads.c b/gdb/testsuite/gdb.mi/pthreads.c
index 70fd521..e5d7b61 100644
--- a/gdb/testsuite/gdb.mi/pthreads.c
+++ b/gdb/testsuite/gdb.mi/pthreads.c
@@ -25,19 +25,6 @@
 #include <pthread.h>
 #include <unistd.h>
 
-/* Under HPUX 10, the second arg of pthread_create
-   is prototyped to be just a "pthread_attr_t", while under Solaris it
-   is a "pthread_attr_t *".  Arg! */
-
-#if defined (__hpux__)
-#define PTHREAD_CREATE_ARG2(arg) arg
-#define PTHREAD_CREATE_NULL_ARG2 null_attr
-static pthread_attr_t null_attr;
-#else
-#define PTHREAD_CREATE_ARG2(arg) &arg
-#define PTHREAD_CREATE_NULL_ARG2 NULL
-#endif
-
 void *
 routine (void *arg)
 {
@@ -64,7 +51,7 @@ create_thread (void)
 {
   pthread_t tid;
 
-  if (pthread_create (&tid, PTHREAD_CREATE_NULL_ARG2, routine, (void *) 0xfeedface))
+  if (pthread_create (&tid, NULL, routine, (void *) 0xfeedface))
     {
       perror ("pthread_create 1");
       exit (1);
diff --git a/gdb/testsuite/gdb.multi/bkpt-multi-exec.exp b/gdb/testsuite/gdb.multi/bkpt-multi-exec.exp
index e66c1ba..bd994fe 100644
--- a/gdb/testsuite/gdb.multi/bkpt-multi-exec.exp
+++ b/gdb/testsuite/gdb.multi/bkpt-multi-exec.exp
@@ -19,7 +19,7 @@ if { [is_remote target] || ![isnative] } then {
 
 # Until "catch exec" is implemented on other targets...
 #
-if {![istarget "hppa*-hp-hpux*"] && ![istarget "*-linux*"]} then {
+if {![istarget "*-linux*"]} then {
     continue
 }
 
diff --git a/gdb/testsuite/gdb.threads/pthreads.c b/gdb/testsuite/gdb.threads/pthreads.c
index 1ad521f..2e1b452 100644
--- a/gdb/testsuite/gdb.threads/pthreads.c
+++ b/gdb/testsuite/gdb.threads/pthreads.c
@@ -24,19 +24,6 @@
 #include <pthread.h>
 #include <unistd.h>
 
-/* Under HPUX 10, the second arg of pthread_create
-   is prototyped to be just a "pthread_attr_t", while under Solaris it
-   is a "pthread_attr_t *".  Arg! */
-
-#if defined (__hpux__)
-#define PTHREAD_CREATE_ARG2(arg) arg
-#define PTHREAD_CREATE_NULL_ARG2 null_attr
-static pthread_attr_t null_attr;
-#else
-#define PTHREAD_CREATE_ARG2(arg) &arg
-#define PTHREAD_CREATE_NULL_ARG2 NULL
-#endif
-
 static int verbose = 0;
 
 static void
@@ -140,7 +127,7 @@ main(argc, argv)
     }
 #endif
 
-  if (pthread_create (&tid1, PTHREAD_CREATE_ARG2(attr), thread1, (void *) 0xfeedface))
+  if (pthread_create (&tid1, &attr, thread1, (void *) 0xfeedface))
     {
       perror ("pthread_create 1");
       exit (1);
@@ -148,7 +135,7 @@ main(argc, argv)
   if (verbose) printf ("Made thread %ld\n", (long) tid1);
   sleep (1);
 
-  if (pthread_create (&tid2, PTHREAD_CREATE_NULL_ARG2, thread2, (void *) 0xdeadbeef))
+  if (pthread_create (&tid2, NULL, thread2, (void *) 0xdeadbeef))
     {
       perror ("pthread_create 2");
       exit (1);
diff --git a/gdb/testsuite/gdb.threads/staticthreads.exp b/gdb/testsuite/gdb.threads/staticthreads.exp
index 2527204..18648ed 100644
--- a/gdb/testsuite/gdb.threads/staticthreads.exp
+++ b/gdb/testsuite/gdb.threads/staticthreads.exp
@@ -58,7 +58,7 @@ gdb_test_multiple "continue" "$test" {
 
 set sig "SIG32"
 
-# SIGRTMIN is 37 on hppa-linux and hpux
+# SIGRTMIN is 37 on hppa-linux
 if [istarget hppa*-*-*] {
   set sig "SIG37"
 }
diff --git a/gdb/testsuite/lib/future.exp b/gdb/testsuite/lib/future.exp
index 994843e..9a9becb 100644
--- a/gdb/testsuite/lib/future.exp
+++ b/gdb/testsuite/lib/future.exp
@@ -380,9 +380,6 @@ proc gdb_default_target_compile {source destfile type options} {
 		} elseif {[regexp ".*(osf|irix5|linux).*" $target_triplet]} {
 		    # OSF/1 or IRIX 5
 		    append add_flags " -Wl,-rpath,$tool_root_dir/libstdc++"
-		} elseif {[regexp ".*hppa.*" $target_triplet]} {
-		    # HP-UX
-		    append add_flags " -Wl,-a,shared_archive"
 		}
 	    }
 	}
diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp
index caf6ad4..765ac83 100644
--- a/gdb/testsuite/lib/gdb.exp
+++ b/gdb/testsuite/lib/gdb.exp
@@ -2840,15 +2840,6 @@ gdb_caching_proc skip_btrace_pt_tests {
     return $skip_btrace_tests
 }
 
-# Skip all the tests in the file if you are not on an hppa running
-# hpux target.
-
-proc skip_hp_tests {} {
-    eval set skip_hp [ expr ![isnative] || ![istarget "hppa*-*-hpux*"] ]
-    verbose "Skip hp tests is $skip_hp"
-    return $skip_hp
-}
-
 # Return whether we should skip tests for showing inlined functions in
 # backtraces.  Requires get_compiler_info and get_debug_format.
 
@@ -3374,8 +3365,7 @@ proc gdb_compile {source dest type options} {
     if { $shlib_load || ($shlib_found && [is_remote target]) } {
 	if { ([istarget "*-*-mingw*"]
 	      || [istarget *-*-cygwin*]
-	      || [istarget *-*-pe*]
-	      || [istarget hppa*-*-hpux*])} {
+	      || [istarget *-*-pe*]) } {
 	    # Do not need anything.
 	} elseif { [istarget *-*-freebsd*] || [istarget *-*-openbsd*] } {
 	    lappend new_options "ldflags=-Wl,-rpath,${outdir}"
@@ -3554,14 +3544,7 @@ proc gdb_compile_shlib {sources dest options} {
             }
         }
         default {
-            switch -glob [istarget] {
-                "hppa*-hp-hpux*" {
-                    lappend obj_options "additional_flags=+z"
-                }
-                default {
-                    # don't know what the compiler is...
-                }
-            }
+	    # don't know what the compiler is...
         }
     }
 
@@ -3575,49 +3558,46 @@ proc gdb_compile_shlib {sources dest options} {
        lappend objects ${outdir}/${sourcebase}.o
     }
 
-    if [istarget "hppa*-*-hpux*"] {
-       remote_exec build "ld -b ${objects} -o ${dest}"
+    set link_options $options
+    if [test_compiler_info "xlc-*"] {
+	lappend link_options "additional_flags=-qmkshrobj"
     } else {
-       set link_options $options
-       if [test_compiler_info "xlc-*"] {
-          lappend link_options "additional_flags=-qmkshrobj"
-       } else {
-          lappend link_options "additional_flags=-shared"
-
-	   if { ([istarget "*-*-mingw*"]
-		 || [istarget *-*-cygwin*]
-		 || [istarget *-*-pe*]) } {
-	       if { [is_remote host] } {
-		   set name [file tail ${dest}]
-	       } else {
-		   set name ${dest}
-	       }
-	       lappend link_options "additional_flags=-Wl,--out-implib,${name}.a"
-	   } elseif [is_remote target] {
-	     # By default, we do not set the soname.  This causes the linker
-	     # on ELF systems to create a DT_NEEDED entry in the executable
-	     # refering to the full path name of the library.  This is a
-	     # problem in remote testing if the library is in a different
-	     # directory there.  To fix this, we set a soname of just the
-	     # base filename for the library, and add an appropriate -rpath
-	     # to the main executable (in gdb_compile).
-             set destbase [file tail $dest]
-             lappend link_options "additional_flags=-Wl,-soname,$destbase"
-           }
-       }
-       if {[gdb_compile "${objects}" "${dest}" executable $link_options] != ""} {
-           return -1
-       }
-	if { [is_remote host]
-	     && ([istarget "*-*-mingw*"]
-		 || [istarget *-*-cygwin*]
-		 || [istarget *-*-pe*]) } {
-	    set dest_tail_name [file tail ${dest}]
-	    remote_upload host $dest_tail_name.a ${dest}.a
-	    remote_file host delete $dest_tail_name.a
-	}
+	lappend link_options "additional_flags=-shared"
+
+	if { ([istarget "*-*-mingw*"]
+	      || [istarget *-*-cygwin*]
+	      || [istarget *-*-pe*]) } {
+	    if { [is_remote host] } {
+		set name [file tail ${dest}]
+	    } else {
+		set name ${dest}
+	    }
+	    lappend link_options "additional_flags=-Wl,--out-implib,${name}.a"
+	} elseif [is_remote target] {
+	    # By default, we do not set the soname.  This causes the linker
+	    # on ELF systems to create a DT_NEEDED entry in the executable
+	    # refering to the full path name of the library.  This is a
+	    # problem in remote testing if the library is in a different
+	    # directory there.  To fix this, we set a soname of just the
+	    # base filename for the library, and add an appropriate -rpath
+	    # to the main executable (in gdb_compile).
+	    set destbase [file tail $dest]
+	    lappend link_options "additional_flags=-Wl,-soname,$destbase"
+	}
+    }
+    if {[gdb_compile "${objects}" "${dest}" executable $link_options] != ""} {
+	return -1
     }
-  return ""
+    if { [is_remote host]
+	 && ([istarget "*-*-mingw*"]
+	     || [istarget *-*-cygwin*]
+	     || [istarget *-*-pe*]) } {
+	set dest_tail_name [file tail ${dest}]
+	remote_upload host $dest_tail_name.a ${dest}.a
+	remote_file host delete $dest_tail_name.a
+    }
+
+    return ""
 }
 
 # This is just like gdb_compile_shlib, above, except that it tries compiling
@@ -4954,7 +4934,6 @@ gdb_caching_proc gdb_has_argv0 {
 	  || [istarget *-wince-pe] || [istarget *-*-mingw32ce*]
 	  || [istarget *-*-symbianelf*]
 	  || [istarget *-*-osf*]
-	  || [istarget *-*-hpux*]
 	  || [istarget *-*-dicos*]
 	  || [istarget *-*-nto*]
 	  || [istarget *-*-*vms*]
-- 
2.6.4

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac
  2015-12-19 23:30 [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac Simon Marchi
  2015-12-19 23:31 ` [PATCH 3/3] Remove HP-UX references fom testsuite Simon Marchi
@ 2015-12-20  4:49 ` Joel Brobecker
  2015-12-20 15:00   ` Simon Marchi
  1 sibling, 1 reply; 14+ messages in thread
From: Joel Brobecker @ 2015-12-20  4:49 UTC (permalink / raw)
  To: Simon Marchi; +Cc: gdb-patches

> gdb/testsuite/ChangeLog:
> 
> 	* configure.ac: Remove HP-UX case.
> 	* configure: Regenerate.

Looks good to me. Go ahead an push.

Thanks!
-- 
Joel

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/3] Remove HP-UX references fom testsuite
  2015-12-19 23:31 ` [PATCH 3/3] Remove HP-UX references fom testsuite Simon Marchi
@ 2015-12-20  5:08   ` Joel Brobecker
  2015-12-20 15:45     ` Simon Marchi
  2015-12-21 12:48   ` Pedro Alves
  1 sibling, 1 reply; 14+ messages in thread
From: Joel Brobecker @ 2015-12-20  5:08 UTC (permalink / raw)
  To: Simon Marchi; +Cc: gdb-patches

On Sat, Dec 19, 2015 at 06:30:45PM -0500, Simon Marchi wrote:
> This patch removes all special cases for HP-UX, for which support has
> been removed earlier, that I found in the testsuite.  Note that the hppa
> architecture != HP-UX, since other OSes can run on hppa, so I tried to
> leave everything that is not HP-UX specific.
> 
> Two complete tests were completely HP-UX specific, so I removed them.
> 
> I ran the testsuite on Linux x86-64, native and native-gdbserver, and
> noticed no regressions.
> 
> gdb/testsuite/ChangeLog:
> 
> 	* gdb.asm/asm-source.exp: Remove HP-UX references.
> 	* gdb.base/annota1.exp: Likewise.
> 	* gdb.base/annota3.exp: Likewise.
> 	* gdb.base/attach.exp: Likewise.
> 	* gdb.base/bigcore.exp: Likewise.
> 	* gdb.base/break.exp: Likewise.
> 	* gdb.base/call-ar-st.exp: Likewise.
> 	* gdb.base/callfuncs.exp: Likewise.
> 	* gdb.base/catch-fork-static.exp: Likewise.
> 	* gdb.base/display.exp: Likewise.
> 	* gdb.base/foll-exec-mode.exp: Likewise.
> 	* gdb.base/foll-exec.exp: Likewise.
> 	* gdb.base/foll-fork.exp: Likewise.
> 	* gdb.base/foll-vfork.exp: Likewise.
> 	* gdb.base/funcargs.exp: Likewise.
> 	* gdb.base/hbreak2.exp: Likewise.
> 	* gdb.base/inferior-died.exp: Likewise.
> 	* gdb.base/interrupt.exp: Likewise.
> 	* gdb.base/multi-forks.exp: Likewise.
> 	* gdb.base/nodebug.exp: Likewise.
> 	* gdb.base/sepdebug.exp: Likewise.
> 	* gdb.base/solib1.c: Likewise.
> 	* gdb.base/step-test.exp: Likewise.
> 	* gdb.dwarf2/pr10770.c: Likewise.
> 	* gdb.mi/non-stop.c: Likewise.
> 	* gdb.mi/pthreads.c: Likewise.
> 	* gdb.multi/bkpt-multi-exec.ex: Likewise.p
> 	* gdb.threads/pthreads.c: Likewise.
> 	* gdb.threads/staticthreads.exp: Likewise.
> 	* lib/future.exp: Likewise.
> 	* lib/gdb.exp: Likewise.
> 	* gdb.base/so-indr-cl.c: Remove.
> 	* gdb.base/so-indr-cl.exp: Likewise.
> 	* gdb.base/solib.c: Likewise.
> 	* gdb.base/solib.exp: Likewise.
> 	* gdb.base/solib2.c: Likewise.

Looks good to me, with one question below.

> index 003a73f..6ca910c 100644
> --- a/gdb/testsuite/gdb.base/break.exp
> +++ b/gdb/testsuite/gdb.base/break.exp
> @@ -485,24 +485,13 @@ gdb_test_multiple "catch fork" "$name" {
>  }
>  
>  
> -# If we are on HP-UX 10.20, we expect an error message to be
> -# printed if we type "catch vfork" at the gdb gdb_prompt.  This is
> -# because on HP-UX 10.20, we cannot catch vfork events.
> -
>  set name "set catch vfork, never expected to trigger"
> -
> -if [istarget "hppa*-hp-hpux10.20"] then {
> -    gdb_test "catch vfork" \
> -	"Catch of vfork events not supported on HP-UX 10.20..*" \
> -	"$name"
> -} else {
> -    gdb_test_multiple "catch vfork" "$name" {
> -	-re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
> -	    pass $name
> -	}
> -	-re "Catch of vfork not yet implemented.*$gdb_prompt $" {
> -	    pass $name
> -	}
> +gdb_test_multiple "catch vfork" "$name" {
> +    -re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
> +	pass $name
> +    }
> +    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
> +	pass $name
>      }
>  }
>  
> @@ -641,32 +630,20 @@ gdb_test "break marker2" \
>      "set breakpoint on to-be-called function"
>  
>  gdb_test "print marker2(99)" \
> -    "The program being debugged stopped while in a function called from GDB.\r\nEvaluation of the expression containing the function\r\n.marker2$proto. will be abandoned.\r\nWhen the function is done executing, GDB will silently stop.*" \
> +    "The program being debugged stopped while in a function called from GDB.\r\nEvaluation of the expression containing the function\r\n.marker2. will be abandoned.\r\nWhen the function is done executing, GDB will silently stop.*" \
>      "hit breakpoint on called function"

There is a discrepancy I do not understand, here. You removed the $proto
suffix for marker2. proto is empty unless hp_aCC_compiler is non-zero.
I assume that HP ACC is only available on HP-UX, which means it's OK
to remove it here, but then why not remove...

    if {$hp_aCC_compiler} {
        set proto "\\(int\\)"
    } else {
        set proto ""
    }

... earlier in the test, and all references to proto?

-- 
Joel

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac
  2015-12-20  4:49 ` [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac Joel Brobecker
@ 2015-12-20 15:00   ` Simon Marchi
  0 siblings, 0 replies; 14+ messages in thread
From: Simon Marchi @ 2015-12-20 15:00 UTC (permalink / raw)
  To: Joel Brobecker; +Cc: gdb-patches

On 19 December 2015 at 23:49, Joel Brobecker <brobecker@adacore.com> wrote:
> Looks good to me. Go ahead an push.
>
> Thanks!


Thanks, I pushed this one.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/3] Remove HP-UX references fom testsuite
  2015-12-20  5:08   ` Joel Brobecker
@ 2015-12-20 15:45     ` Simon Marchi
  0 siblings, 0 replies; 14+ messages in thread
From: Simon Marchi @ 2015-12-20 15:45 UTC (permalink / raw)
  To: Joel Brobecker; +Cc: gdb-patches

On 20 December 2015 at 00:08, Joel Brobecker <brobecker@adacore.com> wrote:
> There is a discrepancy I do not understand, here. You removed the $proto
> suffix for marker2. proto is empty unless hp_aCC_compiler is non-zero.
> I assume that HP ACC is only available on HP-UX, which means it's OK
> to remove it here, but then why not remove...
>
>     if {$hp_aCC_compiler} {
>         set proto "\\(int\\)"
>     } else {
>         set proto ""
>     }
>
> ... earlier in the test, and all references to proto?


Oh, I actually removed it in 2/3 (references to CC/aCC compilers).  I
had left out this $proto by mistake.  I updated 2/3 to remove it.

Thanks!

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/3] Remove HP-UX references fom testsuite
  2015-12-19 23:31 ` [PATCH 3/3] Remove HP-UX references fom testsuite Simon Marchi
  2015-12-20  5:08   ` Joel Brobecker
@ 2015-12-21 12:48   ` Pedro Alves
  2015-12-21 16:57     ` Simon Marchi
  1 sibling, 1 reply; 14+ messages in thread
From: Pedro Alves @ 2015-12-21 12:48 UTC (permalink / raw)
  To: Simon Marchi, gdb-patches

I looked this one over too.  A few minor comments below, but
otherwise looks good to me.  Thanks for doing this!

On 12/19/2015 11:30 PM, Simon Marchi wrote:

> 	* gdb.multi/bkpt-multi-exec.ex: Likewise.p

Typo: "ex: Likewise.p" -> "exp: Likewise."


> +gdb_test_multiple "catch vfork" "$name" {
> +    -re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
> +	pass $name
> +    }
> +    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {

This case can be removed.  GDB doesn't ever output this.

> +	pass $name
>      }
>  }
>



> --- a/gdb/testsuite/gdb.base/display.exp
> +++ b/gdb/testsuite/gdb.base/display.exp
> @@ -194,15 +194,9 @@ gdb_test "print/r j" " = 0x0\[\\r\\n\]+" "debug test output 2a"
>  gdb_test "print j"   " = 0\[\\r\\n\]+"   "debug test output 3"
>
>  # x/0 j doesn't produce any output and terminates PA64 process when testing
> -if [istarget "hppa2.0w-hp-hpux11*"] {
> -    xfail "'x/0 j' terminates PA64 process - skipped test point"
> -} else {
> -    gdb_test_no_output "x/0 j"
> -}
> -if [istarget "hppa*-hp-hpux*"] {
> -    # on HP-UX you could access the first page without getting an error
> -    gdb_test "x/rx j" ".*(Cannot access|Error accessing) memory.*|.*0xa:\[ \t\]*\[0-9\]+.*"
> -}
> +gdb_test_no_output "x/0 j"
> +
> +gdb_test "x/rx j" ".*(Cannot access|Error accessing) memory.*|.*0xa:\[ \t\]*\[0-9\]+.*"

This last one used to only run on hpux.  It seems like it'll now fail
on is_address_zero_readable targets -- the non-error alternative assumes
the variable's value is "0xa" ?

You could guard it with "if [is_address_zero_readable]", but, that
proc does "x 0" internally, so it sounds like it'd be pointless?

>  gdb_test "print/0 j" ".*Item count other than 1 is meaningless.*" "print/0 j"
>  gdb_test "print/s sum" " = 1000" "ignored s"









> --- a/gdb/testsuite/gdb.dwarf2/pr10770.c
> +++ b/gdb/testsuite/gdb.dwarf2/pr10770.c
> @@ -4,7 +4,6 @@
>  /* HP-UX libunwind.so doesn't provide _UA_END_OF_STACK */
>  /* { dg-do run } */
>  /* { dg-options "-fexceptions" } */
> -/* { dg-skip-if "" { "ia64-*-hpux11.*" }  { "*" } { "" } } */
>  /* Verify DW_OP_* handling in the unwinder.  */
>  
>  #include <unwind.h>

You should remove the HP-UX reference at the top too then.
But, GDB doesn't use the dg-* markers.  Note the comment at the top:

/* This file comes from GCC.  If you are tempted to change it,
   consider also changing the copy there.  */

I'd either leave it be, or, remove the whole dg-* comment block.

Comparing our copy to the gcc copy, that's the only bit that diverged so far:

$ diff -up ~/gdb/mygit/src/gdb/testsuite/gdb.dwarf2/pr10770.c  src/gcc/testsuite/gcc.dg/cleanup-13.c
--- /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.dwarf2/pr10770.c        2015-05-08 17:35:43.878768249 +0100
+++ src/gcc/testsuite/gcc.dg/cleanup-13.c       2015-08-22 16:16:35.514064275 +0100
@@ -1,10 +1,8 @@
-/* This file comes from GCC.  If you are tempted to change it,
-   consider also changing the copy there.  */
-
 /* HP-UX libunwind.so doesn't provide _UA_END_OF_STACK */
 /* { dg-do run } */
 /* { dg-options "-fexceptions" } */
 /* { dg-skip-if "" { "ia64-*-hpux11.*" }  { "*" } { "" } } */
+/* { dg-skip-if "" { ! nonlocal_goto } { "*" } { "" } } */
 /* Verify DW_OP_* handling in the unwinder.  */

 #include <unwind.h>

Thanks,
Pedro Alves

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/3] Remove HP-UX references fom testsuite
  2015-12-21 12:48   ` Pedro Alves
@ 2015-12-21 16:57     ` Simon Marchi
  2015-12-21 17:07       ` Pedro Alves
  0 siblings, 1 reply; 14+ messages in thread
From: Simon Marchi @ 2015-12-21 16:57 UTC (permalink / raw)
  To: Pedro Alves; +Cc: gdb-patches

On 21 December 2015 at 07:48, Pedro Alves <palves@redhat.com> wrote:
> I looked this one over too.  A few minor comments below, but
> otherwise looks good to me.  Thanks for doing this!
>
> On 12/19/2015 11:30 PM, Simon Marchi wrote:
>
>>       * gdb.multi/bkpt-multi-exec.ex: Likewise.p
>
> Typo: "ex: Likewise.p" -> "exp: Likewise."

Fixed.

>> +gdb_test_multiple "catch vfork" "$name" {
>> +    -re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
>> +     pass $name
>> +    }
>> +    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
>
> This case can be removed.  GDB doesn't ever output this.

Actually, is it true for all "Catch of * not yet implemented" cases?

testsuite/gdb.base/break.exp
482:    -re "Catch of fork not yet implemented.*$gdb_prompt $" {
493:    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
503:    -re "Catch of exec not yet implemented.*$gdb_prompt $" {

testsuite/gdb.base/sepdebug.exp
291:    -re "Catch of fork not yet implemented.*$gdb_prompt $" {
302:    -re "Catch of vfork events not supported on HP-UX 10.20.*" {
308:    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
318:    -re "Catch of exec not yet implemented.*$gdb_prompt $" {

Oh damn, that just found another HP-UX reference.  I'll remove the
"Catch of vfork events not supported on HP-UX 10.20.*" as part of this
patch.

Grepping for "Catch of" in the source doesn't return anything, so I
guess they could all be removed from the testsuite. If that is right,
I think I would do it in a separate patch.

>> +     pass $name
>>      }
>>  }
>>
>
>
>
>> --- a/gdb/testsuite/gdb.base/display.exp
>> +++ b/gdb/testsuite/gdb.base/display.exp
>> @@ -194,15 +194,9 @@ gdb_test "print/r j" " = 0x0\[\\r\\n\]+" "debug test output 2a"
>>  gdb_test "print j"   " = 0\[\\r\\n\]+"   "debug test output 3"
>>
>>  # x/0 j doesn't produce any output and terminates PA64 process when testing
>> -if [istarget "hppa2.0w-hp-hpux11*"] {
>> -    xfail "'x/0 j' terminates PA64 process - skipped test point"
>> -} else {
>> -    gdb_test_no_output "x/0 j"
>> -}
>> -if [istarget "hppa*-hp-hpux*"] {
>> -    # on HP-UX you could access the first page without getting an error
>> -    gdb_test "x/rx j" ".*(Cannot access|Error accessing) memory.*|.*0xa:\[ \t\]*\[0-9\]+.*"
>> -}
>> +gdb_test_no_output "x/0 j"
>> +
>> +gdb_test "x/rx j" ".*(Cannot access|Error accessing) memory.*|.*0xa:\[ \t\]*\[0-9\]+.*"
>
> This last one used to only run on hpux.  It seems like it'll now fail
> on is_address_zero_readable targets -- the non-error alternative assumes
> the variable's value is "0xa" ?
>
> You could guard it with "if [is_address_zero_readable]", but, that
> proc does "x 0" internally, so it sounds like it'd be pointless?

Right it's pointless now, I'll just remove it.

>> --- a/gdb/testsuite/gdb.dwarf2/pr10770.c
>> +++ b/gdb/testsuite/gdb.dwarf2/pr10770.c
>> @@ -4,7 +4,6 @@
>>  /* HP-UX libunwind.so doesn't provide _UA_END_OF_STACK */
>>  /* { dg-do run } */
>>  /* { dg-options "-fexceptions" } */
>> -/* { dg-skip-if "" { "ia64-*-hpux11.*" }  { "*" } { "" } } */
>>  /* Verify DW_OP_* handling in the unwinder.  */
>>
>>  #include <unwind.h>
>
> You should remove the HP-UX reference at the top too then.
> But, GDB doesn't use the dg-* markers.  Note the comment at the top:
>
> /* This file comes from GCC.  If you are tempted to change it,
>    consider also changing the copy there.  */
>
> I'd either leave it be, or, remove the whole dg-* comment block.
>
> Comparing our copy to the gcc copy, that's the only bit that diverged so far:
>
> $ diff -up ~/gdb/mygit/src/gdb/testsuite/gdb.dwarf2/pr10770.c  src/gcc/testsuite/gcc.dg/cleanup-13.c
> --- /home/pedro/gdb/mygit/src/gdb/testsuite/gdb.dwarf2/pr10770.c        2015-05-08 17:35:43.878768249 +0100
> +++ src/gcc/testsuite/gcc.dg/cleanup-13.c       2015-08-22 16:16:35.514064275 +0100
> @@ -1,10 +1,8 @@
> -/* This file comes from GCC.  If you are tempted to change it,
> -   consider also changing the copy there.  */
> -
>  /* HP-UX libunwind.so doesn't provide _UA_END_OF_STACK */
>  /* { dg-do run } */
>  /* { dg-options "-fexceptions" } */
>  /* { dg-skip-if "" { "ia64-*-hpux11.*" }  { "*" } { "" } } */
> +/* { dg-skip-if "" { ! nonlocal_goto } { "*" } { "" } } */
>  /* Verify DW_OP_* handling in the unwinder.  */
>
>  #include <unwind.h>

Ok, I'll leave the file as-is.

Another thing, the gdb.base/environ.exp is guarded by a

 23 if ![istarget "hppa*-*-hpux*"] then {
 24   return
 25 }

but it doesn't test hp-ux specific things.  It overlaps
gdb.base/testenv.exp in what it tests, but it does test a few more
things (like having an equal sign in the value when setting an env
var).  Removing the guard, it seems like the test runs fine on Linux
native.  It does not run fine with
native-gdbserver/native-extended-gdbserver, however.  So I could
replace it with the appropriate "if not remote" check.
gdb.base/testenv.exp uses "if { [is_remote target] }", but it's not
right, because it doesn't catch when running with
native-extended-gdbserver.

So for now I think I'll just leave it as-is, and we can merge the two
tests and clean this up after.

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/3] Remove HP-UX references fom testsuite
  2015-12-21 16:57     ` Simon Marchi
@ 2015-12-21 17:07       ` Pedro Alves
  2015-12-21 17:53         ` Simon Marchi
  0 siblings, 1 reply; 14+ messages in thread
From: Pedro Alves @ 2015-12-21 17:07 UTC (permalink / raw)
  To: Simon Marchi; +Cc: gdb-patches

On 12/21/2015 04:57 PM, Simon Marchi wrote:
> On 21 December 2015 at 07:48, Pedro Alves <palves@redhat.com> wrote:
>> I looked this one over too.  A few minor comments below, but
>> otherwise looks good to me.  Thanks for doing this!
>>
>> On 12/19/2015 11:30 PM, Simon Marchi wrote:
>>
>>>       * gdb.multi/bkpt-multi-exec.ex: Likewise.p
>>
>> Typo: "ex: Likewise.p" -> "exp: Likewise."
> 
> Fixed.
> 
>>> +gdb_test_multiple "catch vfork" "$name" {
>>> +    -re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
>>> +     pass $name
>>> +    }
>>> +    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
>>
>> This case can be removed.  GDB doesn't ever output this.
> 
> Actually, is it true for all "Catch of * not yet implemented" cases?
> 

Yes.  I did a google search now for "Catch of fork not yet implemented"
and found this:

  https://www.sourceware.org/ml/gdb-patches/2004-01/msg00679.html

> testsuite/gdb.base/break.exp
> 482:    -re "Catch of fork not yet implemented.*$gdb_prompt $" {
> 493:    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
> 503:    -re "Catch of exec not yet implemented.*$gdb_prompt $" {
> 
> testsuite/gdb.base/sepdebug.exp
> 291:    -re "Catch of fork not yet implemented.*$gdb_prompt $" {
> 302:    -re "Catch of vfork events not supported on HP-UX 10.20.*" {
> 308:    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
> 318:    -re "Catch of exec not yet implemented.*$gdb_prompt $" {
> 
> Oh damn, that just found another HP-UX reference.  I'll remove the
> "Catch of vfork events not supported on HP-UX 10.20.*" as part of this
> patch.
> 
> Grepping for "Catch of" in the source doesn't return anything, so I
> guess they could all be removed from the testsuite. If that is right,
> I think I would do it in a separate patch.

That'd be great!

> 
> Another thing, the gdb.base/environ.exp is guarded by a
> 
>  23 if ![istarget "hppa*-*-hpux*"] then {
>  24   return
>  25 }
> 
> but it doesn't test hp-ux specific things.  

Right, that's old PR8595 - environ.exp could run on more platforms:
  https://sourceware.org/bugzilla/show_bug.cgi?id=8595

> It overlaps
> gdb.base/testenv.exp in what it tests, but it does test a few more
> things (like having an equal sign in the value when setting an env
> var).  Removing the guard, it seems like the test runs fine on Linux
> native.  It does not run fine with
> native-gdbserver/native-extended-gdbserver, however.  So I could
> replace it with the appropriate "if not remote" check.
> gdb.base/testenv.exp uses "if { [is_remote target] }", but it's not
> right, because it doesn't catch when running with
> native-extended-gdbserver.

Right.  I think most is_remote checks are wrong.  This is really
a protocol limitation, a bit orthogonal to protocol used or whether
the host and target machines are the same.   Probably the right
check is:

  [target_info gdb_protocol] == "remote" || [target_info gdb_protocol] == "extended-remote"

Better yet, add a new supports_target_env or some such to lib/gdb.exp
that encapsulates this.

> 
> So for now I think I'll just leave it as-is, and we can merge the two
> tests and clean this up after.
> 

That's fine.  It waited over 12 years already, it can wait a
little while longer.  :-)

Thanks,
Pedro Alves

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [PATCH 3/3] Remove HP-UX references fom testsuite
  2015-12-21 17:07       ` Pedro Alves
@ 2015-12-21 17:53         ` Simon Marchi
  2016-01-08 19:30           ` [testsuite patch] i386 regression for funcargs.exp [Re: [PATCH 3/3] Remove HP-UX references fom testsuite] Jan Kratochvil
  0 siblings, 1 reply; 14+ messages in thread
From: Simon Marchi @ 2015-12-21 17:53 UTC (permalink / raw)
  To: Pedro Alves; +Cc: gdb-patches

On 21 December 2015 at 12:07, Pedro Alves <palves@redhat.com> wrote:
> On 12/21/2015 04:57 PM, Simon Marchi wrote:
>> On 21 December 2015 at 07:48, Pedro Alves <palves@redhat.com> wrote:
>>> I looked this one over too.  A few minor comments below, but
>>> otherwise looks good to me.  Thanks for doing this!
>>>
>>> On 12/19/2015 11:30 PM, Simon Marchi wrote:
>>>
>>>>       * gdb.multi/bkpt-multi-exec.ex: Likewise.p
>>>
>>> Typo: "ex: Likewise.p" -> "exp: Likewise."
>>
>> Fixed.
>>
>>>> +gdb_test_multiple "catch vfork" "$name" {
>>>> +    -re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
>>>> +     pass $name
>>>> +    }
>>>> +    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
>>>
>>> This case can be removed.  GDB doesn't ever output this.
>>
>> Actually, is it true for all "Catch of * not yet implemented" cases?
>>
>
> Yes.  I did a google search now for "Catch of fork not yet implemented"
> and found this:
>
>   https://www.sourceware.org/ml/gdb-patches/2004-01/msg00679.html
>
>> testsuite/gdb.base/break.exp
>> 482:    -re "Catch of fork not yet implemented.*$gdb_prompt $" {
>> 493:    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
>> 503:    -re "Catch of exec not yet implemented.*$gdb_prompt $" {
>>
>> testsuite/gdb.base/sepdebug.exp
>> 291:    -re "Catch of fork not yet implemented.*$gdb_prompt $" {
>> 302:    -re "Catch of vfork events not supported on HP-UX 10.20.*" {
>> 308:    -re "Catch of vfork not yet implemented.*$gdb_prompt $" {
>> 318:    -re "Catch of exec not yet implemented.*$gdb_prompt $" {
>>
>> Oh damn, that just found another HP-UX reference.  I'll remove the
>> "Catch of vfork events not supported on HP-UX 10.20.*" as part of this
>> patch.
>>
>> Grepping for "Catch of" in the source doesn't return anything, so I
>> guess they could all be removed from the testsuite. If that is right,
>> I think I would do it in a separate patch.
>
> That'd be great!
>
>>
>> Another thing, the gdb.base/environ.exp is guarded by a
>>
>>  23 if ![istarget "hppa*-*-hpux*"] then {
>>  24   return
>>  25 }
>>
>> but it doesn't test hp-ux specific things.
>
> Right, that's old PR8595 - environ.exp could run on more platforms:
>   https://sourceware.org/bugzilla/show_bug.cgi?id=8595
>
>> It overlaps
>> gdb.base/testenv.exp in what it tests, but it does test a few more
>> things (like having an equal sign in the value when setting an env
>> var).  Removing the guard, it seems like the test runs fine on Linux
>> native.  It does not run fine with
>> native-gdbserver/native-extended-gdbserver, however.  So I could
>> replace it with the appropriate "if not remote" check.
>> gdb.base/testenv.exp uses "if { [is_remote target] }", but it's not
>> right, because it doesn't catch when running with
>> native-extended-gdbserver.
>
> Right.  I think most is_remote checks are wrong.  This is really
> a protocol limitation, a bit orthogonal to protocol used or whether
> the host and target machines are the same.   Probably the right
> check is:
>
>   [target_info gdb_protocol] == "remote" || [target_info gdb_protocol] == "extended-remote"
>
> Better yet, add a new supports_target_env or some such to lib/gdb.exp
> that encapsulates this.
>
>>
>> So for now I think I'll just leave it as-is, and we can merge the two
>> tests and clean this up after.
>>
>
> That's fine.  It waited over 12 years already, it can wait a
> little while longer.  :-)
>
> Thanks,
> Pedro Alves


Ok, I pushed this one in.  Thanks!

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [testsuite patch] i386 regression for funcargs.exp  [Re: [PATCH 3/3] Remove HP-UX references fom testsuite]
  2015-12-21 17:53         ` Simon Marchi
@ 2016-01-08 19:30           ` Jan Kratochvil
  2016-01-08 21:15             ` Simon Marchi
  0 siblings, 1 reply; 14+ messages in thread
From: Jan Kratochvil @ 2016-01-08 19:30 UTC (permalink / raw)
  To: Simon Marchi; +Cc: Pedro Alves, gdb-patches

[-- Attachment #1: Type: text/plain, Size: 1917 bytes --]

On Mon, 21 Dec 2015 18:52:59 +0100, Simon Marchi wrote:
> Ok, I pushed this one in.  Thanks!

3ca22649a6dfeb71058c33be4d0542b98f1f0ff5 is the first bad commit
commit 3ca22649a6dfeb71058c33be4d0542b98f1f0ff5
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Mon Dec 21 12:51:54 2015 -0500
    Remove HP-UX references fom testsuite
### a/gdb/testsuite/gdb.base/funcargs.exp
### b/gdb/testsuite/gdb.base/funcargs.exp
@@ -1013,13 +1013,6 @@ proc localvars_in_indirect_call { } {
     #
 
     gdb_test_multiple "finish" "finish from indirectly called function" {
-	-re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
-	    #On hppa2.0w-hp-hpux11.00, gdb finishes at one line earlier than 
-	    #hppa1.1-hp-hpux11.00. Therefore, an extra "step" is necessary 
-	    #to continue the test.
-	    send_gdb "step\n"
-	    exp_continue
-	}
 	-re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
 	    pass "finish from indirectly called function"
 	}

->

 finish^M
 Run till exit from #0  call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
 0x0804a189 in main () at ./gdb.base/funcargs.c:583^M
 583      (*pointer_to_call0a) (c, s, i, l);    /* First step into call0a.  */^M
-(gdb) step^M
-584      (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */^M
-(gdb) PASS: gdb.base/funcargs.exp: finish from indirectly called function
+(gdb) FAIL: gdb.base/funcargs.exp: finish from indirectly called function
 step^M
-call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
-82       c = 'a';^M
-(gdb) PASS: gdb.base/funcargs.exp: stepping into indirectly called function
+584      (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */^M
+(gdb) FAIL: gdb.base/funcargs.exp: stepping into indirectly called function

At least on x86_64 with testsuite in -m32 (expecting native i386 would be the
same).

OK for check-in?


Jan

[-- Attachment #2: 1 --]
[-- Type: text/plain, Size: 926 bytes --]

gdb/testsuite/ChangeLog
2016-01-08  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.base/funcargs.exp (finish from indirectly called function):
	Reintroduce the case for 'First'.

diff --git a/gdb/testsuite/gdb.base/funcargs.exp b/gdb/testsuite/gdb.base/funcargs.exp
index e5b6ced..a476169 100644
--- a/gdb/testsuite/gdb.base/funcargs.exp
+++ b/gdb/testsuite/gdb.base/funcargs.exp
@@ -1013,6 +1013,12 @@ proc localvars_in_indirect_call { } {
     #
 
     gdb_test_multiple "finish" "finish from indirectly called function" {
+	-re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
+	    # On i386, gdb finishes at one line earlier than on x86_64.
+	    # Therefore, an extra "step" is necessary to continue the test.
+	    send_gdb "step\n"
+	    exp_continue
+	}
 	-re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
 	    pass "finish from indirectly called function"
 	}

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [testsuite patch] i386 regression for funcargs.exp [Re: [PATCH 3/3] Remove HP-UX references fom testsuite]
  2016-01-08 19:30           ` [testsuite patch] i386 regression for funcargs.exp [Re: [PATCH 3/3] Remove HP-UX references fom testsuite] Jan Kratochvil
@ 2016-01-08 21:15             ` Simon Marchi
  2016-01-11 13:38               ` Pedro Alves
  0 siblings, 1 reply; 14+ messages in thread
From: Simon Marchi @ 2016-01-08 21:15 UTC (permalink / raw)
  To: Jan Kratochvil, Simon Marchi; +Cc: Pedro Alves, gdb-patches

On 16-01-08 02:30 PM, Jan Kratochvil wrote:
> 3ca22649a6dfeb71058c33be4d0542b98f1f0ff5 is the first bad commit
> commit 3ca22649a6dfeb71058c33be4d0542b98f1f0ff5
> Author: Simon Marchi <simon.marchi@polymtl.ca>
> Date:   Mon Dec 21 12:51:54 2015 -0500
>     Remove HP-UX references fom testsuite
> ### a/gdb/testsuite/gdb.base/funcargs.exp
> ### b/gdb/testsuite/gdb.base/funcargs.exp
> @@ -1013,13 +1013,6 @@ proc localvars_in_indirect_call { } {
>      #
>  
>      gdb_test_multiple "finish" "finish from indirectly called function" {
> -	-re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
> -	    #On hppa2.0w-hp-hpux11.00, gdb finishes at one line earlier than 
> -	    #hppa1.1-hp-hpux11.00. Therefore, an extra "step" is necessary 
> -	    #to continue the test.
> -	    send_gdb "step\n"
> -	    exp_continue
> -	}
>  	-re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
>  	    pass "finish from indirectly called function"
>  	}
> 
> ->
> 
>  finish^M
>  Run till exit from #0  call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
>  0x0804a189 in main () at ./gdb.base/funcargs.c:583^M
>  583      (*pointer_to_call0a) (c, s, i, l);    /* First step into call0a.  */^M
> -(gdb) step^M
> -584      (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */^M
> -(gdb) PASS: gdb.base/funcargs.exp: finish from indirectly called function
> +(gdb) FAIL: gdb.base/funcargs.exp: finish from indirectly called function
>  step^M
> -call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
> -82       c = 'a';^M
> -(gdb) PASS: gdb.base/funcargs.exp: stepping into indirectly called function
> +584      (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */^M
> +(gdb) FAIL: gdb.base/funcargs.exp: stepping into indirectly called function
> 
> At least on x86_64 with testsuite in -m32 (expecting native i386 would be the
> same).
> 
> OK for check-in?
> 
> 
> Jan

I also don't see this on Ubuntu 14.04.3 LTS, gdb master, gcc 4.8.4.

$ make check RUNTESTFLAGS="--target_board=unix/-m32 funcargs.exp"
make[1]: Entering directory `/home/emaisin/build/binutils-gdb/gdb/testsuite'
Nothing to be done for all...
make check-single
make[2]: Entering directory `/home/emaisin/build/binutils-gdb/gdb/testsuite'
rootme=`pwd`; export rootme; srcdir=/home/emaisin/src/binutils-gdb/gdb/testsuite ; export srcdir ; EXPECT=`if [ "${READ1}" != "" ] ; then echo ${rootme}/expect-read1; elif [ -f ${rootme}/../../expect/expect ] ; then echo ${rootme}/../../expect/expect ; else echo expect ; fi` ; export EXPECT ; EXEEXT= ; export EXEEXT ; LD_LIBRARY_PATH=$rootme/../../expect:$rootme/../../libstdc++:$rootme/../../tk/unix:$rootme/../../tcl/unix:$rootme/../../bfd:$rootme/../../opcodes:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; if [ -f ${rootme}/../../expect/expect ] ; then TCL_LIBRARY=${srcdir}/../../tcl/library ; export TCL_LIBRARY ; fi ; runtest --target_board=unix/-m32 funcargs.exp
WARNING: Couldn't find the global config file.
Test Run By emaisin on Fri Jan  8 16:10:58 2016
Native configuration is x86_64-pc-linux-gnu

		=== gdb tests ===

Schedule of variations:
    unix/-m32

Running target unix/-m32
Using /usr/local/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /usr/local/share/dejagnu/config/unix.exp as generic interface file for target.
Using /home/emaisin/src/binutils-gdb/gdb/testsuite/config/unix.exp as tool-and-target-specific interface file.
Running /home/emaisin/src/binutils-gdb/gdb/testsuite/gdb.base/funcargs.exp ...

		=== gdb Summary ===

# of expected passes		141
/home/emaisin/build/binutils-gdb/gdb/testsuite/../../gdb/gdb version  7.10.50.20160108-git -nw -nx -data-directory /home/emaisin/build/binutils-gdb/gdb/testsuite/../data-directory

make[2]: Leaving directory `/home/emaisin/build/binutils-gdb/gdb/testsuite'
make[1]: Leaving directory `/home/emaisin/build/binutils-gdb/gdb/testsuite'
$ ag "finish from indirectly called function" testsuite/gdb.sum
146:PASS: gdb.base/funcargs.exp: finish from indirectly called function


But if there is a configuration where this is needed, then yes, it should be re-added.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [testsuite patch] i386 regression for funcargs.exp [Re: [PATCH 3/3] Remove HP-UX references fom testsuite]
  2016-01-08 21:15             ` Simon Marchi
@ 2016-01-11 13:38               ` Pedro Alves
  2016-01-11 21:29                 ` [commit] " Jan Kratochvil
  0 siblings, 1 reply; 14+ messages in thread
From: Pedro Alves @ 2016-01-11 13:38 UTC (permalink / raw)
  To: Simon Marchi, Jan Kratochvil, Simon Marchi; +Cc: gdb-patches

On 01/08/2016 09:15 PM, Simon Marchi wrote:

> I also don't see this on Ubuntu 14.04.3 LTS, gdb master, gcc 4.8.4.
> 

I don't see it either on F20, gcc 4.8.3.  But I do see it with
gcc 6 (20151117, getting old, but what I had handy).

The difference is that with newer GCC there's an extra instruction
after the call which is still assigned to line 583:

$ diff -up /tmp/4.8.3 /tmp/6.0.0 -U 1000
--- /tmp/4.8.3  2016-01-11 12:37:39.611089156 +0000
+++ /tmp/6.0.0  2016-01-11 13:21:00.021127976 +0000
@@ -1,27 +1,30 @@
 583       (*pointer_to_call0a) (c, s, i, l);    /* First step into call0a.  */
    mov    0x804d060,%ebx
    mov    0x804d050,%ecx
    movzwl 0x804d040,%eax
    movswl %ax,%edx
    movzbl 0x804d030,%eax
    movsbl %al,%eax
-   mov    %ebx,0xc(%esp)
-   mov    %ecx,0x8(%esp)
-   mov    %edx,0x4(%esp)
-   mov    %eax,(%esp)
-   mov    0x7c(%esp),%eax
+   push   %ebx
+   push   %ecx
+   push   %edx
+   push   %eax
+   mov    -0x1c(%ebp),%eax
    call   *%eax
+   add    $0x10,%esp

 584       (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */
    mov    0x804d060,%ebx
    mov    0x804d050,%ecx
    movzwl 0x804d040,%eax
    movswl %ax,%edx
    movzbl 0x804d030,%eax
    movsbl %al,%eax
-   mov    %ebx,0xc(%esp)
-   mov    %ecx,0x8(%esp)
-   mov    %edx,0x4(%esp)
-   mov    %eax,(%esp)
-   mov    0x7c(%esp),%eax
+   push   %ebx
+   push   %ecx
+   push   %edx
+   push   %eax
+   mov    -0x1c(%ebp),%eax
    call   *%eax
+   add    $0x10,%esp
+

I don't know why -m32 changed to push/add instead of mov while 64-bit hasn't.

> But if there is a configuration where this is needed, then yes, it should be re-added.

I agree.

On 01/08/2016 07:30 PM, Jan Kratochvil wrote:
>      gdb_test_multiple "finish" "finish from indirectly called function" {
> +	-re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
> +	    # On i386, gdb finishes at one line earlier than on x86_64.
> +	    # Therefore, an extra "step" is necessary to continue the test.

This is most likely needed on non-x86 ports as well.
I think we should say:

 # If the branch instruction is not the last instruction in the function call
 # line, we'll stop at that line, and need an extra "step" to continue the test.

OK with that change.

Thanks,
Pedro Alves

> +	    send_gdb "step\n"
> +	    exp_continue
> +	}
>  	-re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
>  	    pass "finish from indirectly called function"
>  	}

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [commit] [testsuite patch] i386 regression for funcargs.exp [Re: [PATCH 3/3] Remove HP-UX references fom testsuite]
  2016-01-11 13:38               ` Pedro Alves
@ 2016-01-11 21:29                 ` Jan Kratochvil
  0 siblings, 0 replies; 14+ messages in thread
From: Jan Kratochvil @ 2016-01-11 21:29 UTC (permalink / raw)
  To: Pedro Alves; +Cc: Simon Marchi, Simon Marchi, gdb-patches

[-- Attachment #1: Type: text/plain, Size: 105 bytes --]

On Mon, 11 Jan 2016 14:38:14 +0100, Pedro Alves wrote:
> OK with that change.

Checked in.


Thanks,
Jan

[-- Attachment #2: Type: message/rfc822, Size: 5112 bytes --]

From: Jan Kratochvil <jan.kratochvil@redhat.com>
Subject: [PATCH] testsuite: i386 regression for funcargs.exp
Date: Mon, 11 Jan 2016 22:27:15 +0100

3ca22649a6dfeb71058c33be4d0542b98f1f0ff5 is the first bad commit
commit 3ca22649a6dfeb71058c33be4d0542b98f1f0ff5
Author: Simon Marchi <simon.marchi@polymtl.ca>
Date:   Mon Dec 21 12:51:54 2015 -0500
    Remove HP-UX references fom testsuite
@@ -1013,13 +1013,6 @@ proc localvars_in_indirect_call { } {
     #

     gdb_test_multiple "finish" "finish from indirectly called function" {
-       -re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
-           #On hppa2.0w-hp-hpux11.00, gdb finishes at one line earlier than
-           #hppa1.1-hp-hpux11.00. Therefore, an extra "step" is necessary
-           #to continue the test.
-           send_gdb "step\n"
-           exp_continue
-	}
        -re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
            pass "finish from indirectly called function"
       	}

->

 finish^M
 Run till exit from #0  call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
 0x0804a189 in main () at ./gdb.base/funcargs.c:583^M
 583	  (*pointer_to_call0a) (c, s, i, l);    /* First step into call0a.  */^M
-(gdb) step^M
-584	  (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */^M
-(gdb) PASS: gdb.base/funcargs.exp: finish from indirectly called function
+(gdb) FAIL: gdb.base/funcargs.exp: finish from indirectly called function
 step^M
-call0a (c=97 'a', s=1, i=2, l=3) at ./gdb.base/funcargs.c:82^M
-82	  c = 'a';^M
-(gdb) PASS: gdb.base/funcargs.exp: stepping into indirectly called function
+584	  (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */^M
+(gdb) FAIL: gdb.base/funcargs.exp: stepping into indirectly called function

At least on x86_64 with testsuite in -m32 (expecting native i386 would be the
same).

Pedro Alves:

The difference is that with newer GCC there's an extra instruction
after the call which is still assigned to line 583:

$ diff -up /tmp/4.8.3 /tmp/6.0.0 -U 1000
--- /tmp/4.8.3  2016-01-11 12:37:39.611089156 +0000
+++ /tmp/6.0.0  2016-01-11 13:21:00.021127976 +0000
@@ -1,27 +1,30 @@
 583       (*pointer_to_call0a) (c, s, i, l);    /* First step into call0a.  */
    mov    0x804d060,%ebx
    mov    0x804d050,%ecx
    movzwl 0x804d040,%eax
    movswl %ax,%edx
    movzbl 0x804d030,%eax
    movsbl %al,%eax
-   mov    %ebx,0xc(%esp)
-   mov    %ecx,0x8(%esp)
-   mov    %edx,0x4(%esp)
-   mov    %eax,(%esp)
-   mov    0x7c(%esp),%eax
+   push   %ebx
+   push   %ecx
+   push   %edx
+   push   %eax
+   mov    -0x1c(%ebp),%eax
    call   *%eax
+   add    $0x10,%esp

 584	   (*pointer_to_call0a) (c, s, i, l);    /* Second step into call0a.  */
    mov    0x804d060,%ebx
    mov    0x804d050,%ecx
    movzwl 0x804d040,%eax
    movswl %ax,%edx
    movzbl 0x804d030,%eax
    movsbl %al,%eax
-   mov    %ebx,0xc(%esp)
-   mov    %ecx,0x8(%esp)
-   mov    %edx,0x4(%esp)
-   mov    %eax,(%esp)
-   mov    0x7c(%esp),%eax
+   push   %ebx
+   push   %ecx
+   push   %edx
+   push   %eax
+   mov    -0x1c(%ebp),%eax
    call   *%eax
+   add    $0x10,%esp
+

I don't know why -m32 changed to push/add instead of mov while 64-bit hasn't.

This is most likely needed on non-x86 ports as well.

gdb/testsuite/ChangeLog
2016-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
	    Pedro Alves  <palves@redhat.com>

	* gdb.base/funcargs.exp (finish from indirectly called function):
	Reintroduce the case for 'First'.
---
 gdb/testsuite/ChangeLog             | 6 ++++++
 gdb/testsuite/gdb.base/funcargs.exp | 7 +++++++
 2 files changed, 13 insertions(+)

diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 8b0425b..c5cee45 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,6 +1,12 @@
 2016-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
 	    Pedro Alves  <palves@redhat.com>
 
+	* gdb.base/funcargs.exp (finish from indirectly called function):
+	Reintroduce the case for 'First'.
+
+2016-01-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+	    Pedro Alves  <palves@redhat.com>
+
 	* gdb.base/foll-vfork.exp (tcatch_vfork_then_parent_follow)
 	(tcatch_vfork_then_child_follow_exec)
 	(tcatch_vfork_then_child_follow_exit): Revert back DWARF vfork
diff --git a/gdb/testsuite/gdb.base/funcargs.exp b/gdb/testsuite/gdb.base/funcargs.exp
index e5b6ced..792ca9e 100644
--- a/gdb/testsuite/gdb.base/funcargs.exp
+++ b/gdb/testsuite/gdb.base/funcargs.exp
@@ -1013,6 +1013,13 @@ proc localvars_in_indirect_call { } {
     #
 
     gdb_test_multiple "finish" "finish from indirectly called function" {
+	-re "\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*First.*$gdb_prompt $" {
+	    # If the branch instruction is not the last instruction in the
+	    # function call line, we'll stop at that line, and need an extra
+	    # "step" to continue the test.
+	    send_gdb "step\n"
+	    exp_continue
+	}
 	-re ".*\\(\\*pointer_to_call0a\\) \\(c, s, i, l\\);.*Second.*$gdb_prompt $" {
 	    pass "finish from indirectly called function"
 	}
-- 
2.5.0

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2016-01-11 21:29 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-19 23:30 [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac Simon Marchi
2015-12-19 23:31 ` [PATCH 3/3] Remove HP-UX references fom testsuite Simon Marchi
2015-12-20  5:08   ` Joel Brobecker
2015-12-20 15:45     ` Simon Marchi
2015-12-21 12:48   ` Pedro Alves
2015-12-21 16:57     ` Simon Marchi
2015-12-21 17:07       ` Pedro Alves
2015-12-21 17:53         ` Simon Marchi
2016-01-08 19:30           ` [testsuite patch] i386 regression for funcargs.exp [Re: [PATCH 3/3] Remove HP-UX references fom testsuite] Jan Kratochvil
2016-01-08 21:15             ` Simon Marchi
2016-01-11 13:38               ` Pedro Alves
2016-01-11 21:29                 ` [commit] " Jan Kratochvil
2015-12-20  4:49 ` [PATCH 1/3] Remove HP-UX reference in testsuite/configure.ac Joel Brobecker
2015-12-20 15:00   ` Simon Marchi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).