From patchwork Mon Jun 13 14:28:47 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Burgess X-Patchwork-Id: 13043 Received: (qmail 76054 invoked by alias); 13 Jun 2016 14:29:11 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 75957 invoked by uid 89); 13 Jun 2016 14:29:10 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.6 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.2 spammy=40, 8, painful, death X-HELO: mail-wm0-f47.google.com Received: from mail-wm0-f47.google.com (HELO mail-wm0-f47.google.com) (74.125.82.47) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Mon, 13 Jun 2016 14:28:58 +0000 Received: by mail-wm0-f47.google.com with SMTP id k204so82372216wmk.0 for ; Mon, 13 Jun 2016 07:28:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=CR3tEd+LPOkdKg2FHN6zaAgCgFummuG+d005mTXIyRM=; b=Jl7uL1c1zJmPkhg0hgNPwDh+ctlSLpAobhso9RNl8X5JjJyzfPQJZ0fXmWOP0L6lUP 3njC1pSYI6PupodTqDuAXpZs4B6NYzWL8Jkfc/pPnSnXBmXWIRiTVvZBoje7tjfyir5H H5H/RomCqNB3t7w8axXqWv4dWbM64I3ZCrD67g317gjLX8/PvQ3dMo7IUdcqTNBQIC1d Yuoeg/+U5BcLjjZwcCeyRCEJdaKqKUegdUno0sUKPrjeYe67B3T0Eq41ZKBm7eAGULg1 nl5PpGfqNzYfgis6WNB8Af8b9wEUPmzlz3Qgm04BEuj4ePVtcEReMam+EhMqLJgbArxS 627w== X-Gm-Message-State: ALyK8tKub4mNcVJHUE+IDwVu0fR3EF2o5hY99ymNhfb/fnHvrD+yHjxgBkQVksV3heo6hQ== X-Received: by 10.28.64.213 with SMTP id n204mr1527617wma.7.1465828134598; Mon, 13 Jun 2016 07:28:54 -0700 (PDT) Received: from localhost (host86-156-236-89.range86-156.btcentralplus.com. [86.156.236.89]) by smtp.gmail.com with ESMTPSA id f73sm3630326wmg.1.2016.06.13.07.28.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 13 Jun 2016 07:28:53 -0700 (PDT) Date: Mon, 13 Jun 2016 15:28:47 +0100 From: Andrew Burgess To: Yao Qi Cc: "gdb-patches@sourceware.org" Subject: [PUSHED] Re: [PATCH] gdb: Use UNSUPPORTED not FAIL for unsupported target features Message-ID: <20160613142847.GN26734@embecosm.com> References: <1465377976-21678-1-git-send-email-andrew.burgess@embecosm.com> <20160608114017.GB26734@embecosm.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-Editor: GNU Emacs [ http://www.gnu.org/software/emacs ] User-Agent: Mutt/1.6.1 (2016-04-27) X-IsSubscribed: yes * Yao Qi [2016-06-08 15:59:44 +0100]: > On Wed, Jun 8, 2016 at 12:40 PM, Andrew Burgess > > diff --git a/gdb/testsuite/gdb.base/callfuncs.exp b/gdb/testsuite/gdb.base/callfuncs.exp > > index fbe896c..1ec33d8 100644 > > --- a/gdb/testsuite/gdb.base/callfuncs.exp > > +++ b/gdb/testsuite/gdb.base/callfuncs.exp > > @@ -26,8 +26,7 @@ if [support_complex_tests] { > > # Some targets can't do function calls, so don't even bother with this > > # test. > > if [target_info exists gdb,cannot_call_functions] { > > - setup_xfail "*-*-*" 2416 > > - fail "This target can not call functions" > > + unsupported "This target can not call functions" > > continue > > } > > > > That change makes sense to me. UNSUPPORTED is better XFAIL. > There are many instances, > > ./gdb.base/unwindonsignal.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/call-signal-resume.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/call-rt-st.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/call-ar-st.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/ptype.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/callexit.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/callfuncs.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/nodebug.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/call-strs.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/printcmds.exp: setup_xfail "*-*-*" 2416 > ./gdb.base/printcmds.exp: setup_xfail "*-*-*" 2416 > ./gdb.threads/thread-unwindonsignal.exp: setup_xfail "*-*-*" 2416 > ./gdb.threads/hand-call-in-threads.exp: setup_xfail "*-*-*" 2416 > ./gdb.threads/interrupted-hand-call.exp: setup_xfail "*-*-*" 2416 > ./gdb.cp/templates.exp: setup_xfail "*-*-*" 2416 > ./gdb.cp/gdb2495.exp: setup_xfail "*-*-*" 2416 > ./gdb.cp/virtfunc.exp: setup_xfail "*-*-*" 2416 > > so I think we need to clean them up too. I don't think 2416 is the PR number > in sourceware.org bugzilla, so we don't loose any information after > the cleanup. The patch can go in without another review. Thanks for the review. Below is the final version that I pushed. Thanks, Andrew --- gdb: Use UNSUPPORTED not XFAIL for unsupported target features If a target does not support making function calls from GDB then in a number of test files, we currently report an XFAIL and skip some, or all of the tests. This commit changes the XFAIL to an UNSUPPORTED as this seems more appropriate in these cases. Some of the tests used bug ID 2416 to be reported in the XFAIL. In the current GDB bugzilla bug 2416 has nothing to do with calling target functions from GDB. gdb/testsuite/ChangeLog: * gdb.base/call-ar-st.exp: Report unsupported rather than xfail for unsupported target features. * gdb.base/call-rt-st.exp: Likewise. * gdb.base/call-sc.exp: Likewise. * gdb.base/call-signal-resume.exp: Likewise. * gdb.base/call-strs.exp: Likewise. * gdb.base/callexit.exp: Likewise. * gdb.base/callfuncs.exp: Likewise. * gdb.base/nodebug.exp: Likewise. * gdb.base/printcmds.exp: Likewise. * gdb.base/ptype.exp: Likewise. * gdb.base/structs.exp: Likewise. * gdb.base/unwindonsignal.exp: Likewise. * gdb.cp/gdb2495.exp: Likewise. * gdb.cp/templates.exp: Likewise. * gdb.cp/virtfunc.exp: Likewise. * gdb.threads/hand-call-in-threads.exp: Likewise. * gdb.threads/interrupted-hand-call.exp: Likewise. * gdb.threads/thread-unwindonsignal.exp: Likewise. --- gdb/testsuite/ChangeLog | 22 ++++++++++++++++++++++ gdb/testsuite/gdb.base/call-ar-st.exp | 3 +-- gdb/testsuite/gdb.base/call-rt-st.exp | 3 +-- gdb/testsuite/gdb.base/call-sc.exp | 3 +-- gdb/testsuite/gdb.base/call-signal-resume.exp | 3 +-- gdb/testsuite/gdb.base/call-strs.exp | 3 +-- gdb/testsuite/gdb.base/callexit.exp | 3 +-- gdb/testsuite/gdb.base/callfuncs.exp | 3 +-- gdb/testsuite/gdb.base/nodebug.exp | 3 +-- gdb/testsuite/gdb.base/printcmds.exp | 6 ++---- gdb/testsuite/gdb.base/ptype.exp | 6 +----- gdb/testsuite/gdb.base/structs.exp | 3 +-- gdb/testsuite/gdb.base/unwindonsignal.exp | 3 +-- gdb/testsuite/gdb.cp/gdb2495.exp | 3 +-- gdb/testsuite/gdb.cp/templates.exp | 3 +-- gdb/testsuite/gdb.cp/virtfunc.exp | 3 +-- gdb/testsuite/gdb.threads/hand-call-in-threads.exp | 3 +-- .../gdb.threads/interrupted-hand-call.exp | 3 +-- .../gdb.threads/thread-unwindonsignal.exp | 3 +-- 19 files changed, 41 insertions(+), 41 deletions(-) diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 98a798b..967d166 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,25 @@ +2016-06-13 Andrew Burgess + + * gdb.base/call-ar-st.exp: Report unsupported rather than xfail + for unsupported target features. + * gdb.base/call-rt-st.exp: Likewise. + * gdb.base/call-sc.exp: Likewise. + * gdb.base/call-signal-resume.exp: Likewise. + * gdb.base/call-strs.exp: Likewise. + * gdb.base/callexit.exp: Likewise. + * gdb.base/callfuncs.exp: Likewise. + * gdb.base/nodebug.exp: Likewise. + * gdb.base/printcmds.exp: Likewise. + * gdb.base/ptype.exp: Likewise. + * gdb.base/structs.exp: Likewise. + * gdb.base/unwindonsignal.exp: Likewise. + * gdb.cp/gdb2495.exp: Likewise. + * gdb.cp/templates.exp: Likewise. + * gdb.cp/virtfunc.exp: Likewise. + * gdb.threads/hand-call-in-threads.exp: Likewise. + * gdb.threads/interrupted-hand-call.exp: Likewise. + * gdb.threads/thread-unwindonsignal.exp: Likewise. + 2016-06-06 Simon Marchi * gdb.mi/mi-record-changed.exp: Adjust =record-started output diff --git a/gdb/testsuite/gdb.base/call-ar-st.exp b/gdb/testsuite/gdb.base/call-ar-st.exp index 2a03561..28436d5 100644 --- a/gdb/testsuite/gdb.base/call-ar-st.exp +++ b/gdb/testsuite/gdb.base/call-ar-st.exp @@ -22,8 +22,7 @@ standard_testfile # Some targets can't call functions, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/call-rt-st.exp b/gdb/testsuite/gdb.base/call-rt-st.exp index b7b880e..0f9c5e8 100644 --- a/gdb/testsuite/gdb.base/call-rt-st.exp +++ b/gdb/testsuite/gdb.base/call-rt-st.exp @@ -40,8 +40,7 @@ if [get_compiler_info] { # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/call-sc.exp b/gdb/testsuite/gdb.base/call-sc.exp index faa43e6..7592d65 100644 --- a/gdb/testsuite/gdb.base/call-sc.exp +++ b/gdb/testsuite/gdb.base/call-sc.exp @@ -23,8 +23,7 @@ # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/call-signal-resume.exp b/gdb/testsuite/gdb.base/call-signal-resume.exp index 5ae193b..a6b07cf 100644 --- a/gdb/testsuite/gdb.base/call-signal-resume.exp +++ b/gdb/testsuite/gdb.base/call-signal-resume.exp @@ -36,8 +36,7 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {deb # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/call-strs.exp b/gdb/testsuite/gdb.base/call-strs.exp index 5d7fcb6..7a310d4 100644 --- a/gdb/testsuite/gdb.base/call-strs.exp +++ b/gdb/testsuite/gdb.base/call-strs.exp @@ -28,8 +28,7 @@ standard_testfile # Some targets can't call functions, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/callexit.exp b/gdb/testsuite/gdb.base/callexit.exp index 5a690ee..219c9a4 100644 --- a/gdb/testsuite/gdb.base/callexit.exp +++ b/gdb/testsuite/gdb.base/callexit.exp @@ -24,8 +24,7 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {deb # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/callfuncs.exp b/gdb/testsuite/gdb.base/callfuncs.exp index fbe896c..1ec33d8 100644 --- a/gdb/testsuite/gdb.base/callfuncs.exp +++ b/gdb/testsuite/gdb.base/callfuncs.exp @@ -26,8 +26,7 @@ if [support_complex_tests] { # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/nodebug.exp b/gdb/testsuite/gdb.base/nodebug.exp index ebf1f04..43867ba 100644 --- a/gdb/testsuite/gdb.base/nodebug.exp +++ b/gdb/testsuite/gdb.base/nodebug.exp @@ -123,8 +123,7 @@ if [runto inner] then { # This test is not as obscure as it might look. `p getenv ("TERM")' # is a real-world example, at least on many systems. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "p/c array_index(\"abcdef\",2)" + unsupported "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). diff --git a/gdb/testsuite/gdb.base/printcmds.exp b/gdb/testsuite/gdb.base/printcmds.exp index d599a70..7937fe7 100644 --- a/gdb/testsuite/gdb.base/printcmds.exp +++ b/gdb/testsuite/gdb.base/printcmds.exp @@ -683,8 +683,7 @@ proc test_print_string_constants {} { gdb_test_no_output "set print elements 50" if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" return } @@ -707,8 +706,7 @@ proc test_print_string_constants {} { proc test_print_array_constants {} { if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" return } diff --git a/gdb/testsuite/gdb.base/ptype.exp b/gdb/testsuite/gdb.base/ptype.exp index b64e189..dd61091 100644 --- a/gdb/testsuite/gdb.base/ptype.exp +++ b/gdb/testsuite/gdb.base/ptype.exp @@ -588,14 +588,10 @@ gdb_test "ptype foo" "type = char" "ptype foo typedef after second list of charf # requires a running process. These call malloc, and can take a long # time to execute over a slow serial link, so increase the timeout. -# UDI can't do this (PR 2416). XFAIL is not suitable, because attempting -# the operation causes a slow painful death rather than a nice simple failure. - if [runto_main] then { if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/structs.exp b/gdb/testsuite/gdb.base/structs.exp index 280653e..c525340 100644 --- a/gdb/testsuite/gdb.base/structs.exp +++ b/gdb/testsuite/gdb.base/structs.exp @@ -20,8 +20,7 @@ # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.base/unwindonsignal.exp b/gdb/testsuite/gdb.base/unwindonsignal.exp index 6ff6b37..cf63c6d 100644 --- a/gdb/testsuite/gdb.base/unwindonsignal.exp +++ b/gdb/testsuite/gdb.base/unwindonsignal.exp @@ -22,8 +22,7 @@ if [target_info exists gdb,nosignals] { # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.cp/gdb2495.exp b/gdb/testsuite/gdb.cp/gdb2495.exp index 4ce386f..0ce1a53 100644 --- a/gdb/testsuite/gdb.cp/gdb2495.exp +++ b/gdb/testsuite/gdb.cp/gdb2495.exp @@ -54,8 +54,7 @@ if [get_compiler_info "c++"] { # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.cp/templates.exp b/gdb/testsuite/gdb.cp/templates.exp index 6fa1541..c503598 100644 --- a/gdb/testsuite/gdb.cp/templates.exp +++ b/gdb/testsuite/gdb.cp/templates.exp @@ -184,8 +184,7 @@ proc test_template_calls {} { global gdb_prompt if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" return } diff --git a/gdb/testsuite/gdb.cp/virtfunc.exp b/gdb/testsuite/gdb.cp/virtfunc.exp index 052c33d..04fe5aa 100644 --- a/gdb/testsuite/gdb.cp/virtfunc.exp +++ b/gdb/testsuite/gdb.cp/virtfunc.exp @@ -177,8 +177,7 @@ proc test_virtual_calls {} { global nl if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" return 0 } diff --git a/gdb/testsuite/gdb.threads/hand-call-in-threads.exp b/gdb/testsuite/gdb.threads/hand-call-in-threads.exp index c115420..67c2c8e 100644 --- a/gdb/testsuite/gdb.threads/hand-call-in-threads.exp +++ b/gdb/testsuite/gdb.threads/hand-call-in-threads.exp @@ -26,8 +26,7 @@ if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executab # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.threads/interrupted-hand-call.exp b/gdb/testsuite/gdb.threads/interrupted-hand-call.exp index 76a3d67..556902c 100644 --- a/gdb/testsuite/gdb.threads/interrupted-hand-call.exp +++ b/gdb/testsuite/gdb.threads/interrupted-hand-call.exp @@ -27,8 +27,7 @@ if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executab # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue } diff --git a/gdb/testsuite/gdb.threads/thread-unwindonsignal.exp b/gdb/testsuite/gdb.threads/thread-unwindonsignal.exp index 487e44c..1327c7e 100644 --- a/gdb/testsuite/gdb.threads/thread-unwindonsignal.exp +++ b/gdb/testsuite/gdb.threads/thread-unwindonsignal.exp @@ -27,8 +27,7 @@ if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executab # Some targets can't do function calls, so don't even bother with this # test. if [target_info exists gdb,cannot_call_functions] { - setup_xfail "*-*-*" 2416 - fail "This target can not call functions" + unsupported "This target can not call functions" continue }