From patchwork Wed Jul 1 13:58:28 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yao Qi X-Patchwork-Id: 7452 Received: (qmail 90310 invoked by alias); 1 Jul 2015 13:58:58 -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 90237 invoked by uid 89); 1 Jul 2015 13:58:57 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL, BAYES_00, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-pd0-f169.google.com Received: from mail-pd0-f169.google.com (HELO mail-pd0-f169.google.com) (209.85.192.169) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Wed, 01 Jul 2015 13:58:51 +0000 Received: by pdbep18 with SMTP id ep18so26391912pdb.1 for ; Wed, 01 Jul 2015 06:58:48 -0700 (PDT) X-Received: by 10.70.19.200 with SMTP id h8mr16572796pde.66.1435759128804; Wed, 01 Jul 2015 06:58:48 -0700 (PDT) Received: from E107787-LIN.cambridge.arm.com (gcc1-power7.osuosl.org. [140.211.15.137]) by mx.google.com with ESMTPSA id sc7sm2417503pbb.85.2015.07.01.06.58.47 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 01 Jul 2015 06:58:48 -0700 (PDT) From: Yao Qi X-Google-Original-From: Yao Qi To: gdb-patches@sourceware.org Subject: [PATCH 08/11] New proc is_aarch64_target Date: Wed, 1 Jul 2015 14:58:28 +0100 Message-Id: <1435759111-22856-9-git-send-email-yao.qi@linaro.org> In-Reply-To: <1435759111-22856-1-git-send-email-yao.qi@linaro.org> References: <1435759111-22856-1-git-send-email-yao.qi@linaro.org> X-IsSubscribed: yes Some tests expect the the target is aarch64, but checking target triplet is not accurate, because target triplet can be aarch64 but the program is in arm (or aarch32) state. This patch addes a new proc is_aarch64_target which returns true if the target is on aarch64 state. gdb/testsuite: 2015-06-19 Yao Qi * gdb.arch/aarch64-atomic-inst.exp: Check is_aarch64_target instead of istarget "aarch64*-*-*". * gdb.arch/aarch64-fp.exp: Likewise. * gdb.base/float.exp: Likewise. * gdb.reverse/aarch64.exp: Likewise. * lib/gdb.exp (is_aarch64_target): New proc. --- gdb/testsuite/gdb.arch/aarch64-atomic-inst.exp | 2 +- gdb/testsuite/gdb.arch/aarch64-fp.exp | 2 +- gdb/testsuite/gdb.base/float.exp | 2 +- gdb/testsuite/gdb.reverse/aarch64.exp | 2 +- gdb/testsuite/lib/gdb.exp | 10 ++++++++++ 5 files changed, 14 insertions(+), 4 deletions(-) diff --git a/gdb/testsuite/gdb.arch/aarch64-atomic-inst.exp b/gdb/testsuite/gdb.arch/aarch64-atomic-inst.exp index 885cfb1..19a98cd 100644 --- a/gdb/testsuite/gdb.arch/aarch64-atomic-inst.exp +++ b/gdb/testsuite/gdb.arch/aarch64-atomic-inst.exp @@ -19,7 +19,7 @@ # Test single stepping through atomic sequences beginning with # a ldxr instruction and ending with a stxr instruction. -if {![istarget "aarch64*"]} { +if {![is_aarch64_target]} { verbose "Skipping ${gdb_test_file_name}." return } diff --git a/gdb/testsuite/gdb.arch/aarch64-fp.exp b/gdb/testsuite/gdb.arch/aarch64-fp.exp index 0cd734f..aaf5640 100644 --- a/gdb/testsuite/gdb.arch/aarch64-fp.exp +++ b/gdb/testsuite/gdb.arch/aarch64-fp.exp @@ -19,7 +19,7 @@ # PR server/17457 # Test aarch64 floating point registers q0, q1, v0, v1, fpsr, fpcr -if {![istarget "aarch64*"]} { +if {![is_aarch64_target]} { verbose "Skipping ${gdb_test_file_name}." return } diff --git a/gdb/testsuite/gdb.base/float.exp b/gdb/testsuite/gdb.base/float.exp index a7183cf..91c2d45 100644 --- a/gdb/testsuite/gdb.base/float.exp +++ b/gdb/testsuite/gdb.base/float.exp @@ -36,7 +36,7 @@ if ![runto_main] then { # Test "info float". -if { [istarget "aarch64*-*-*"] } then { +if { [is_aarch64_target] } then { gdb_test "info float" "d0.*d1.*d31.*s0.*s1.*s31.*" "info float" } elseif { [istarget "alpha*-*-*"] } then { gdb_test "info float" "f0.*" "info float" diff --git a/gdb/testsuite/gdb.reverse/aarch64.exp b/gdb/testsuite/gdb.reverse/aarch64.exp index 800645e..1c5f181 100644 --- a/gdb/testsuite/gdb.reverse/aarch64.exp +++ b/gdb/testsuite/gdb.reverse/aarch64.exp @@ -19,7 +19,7 @@ if ![supports_reverse] { # Test aarch64 instruction recording. -if {![istarget "aarch64*-*-*"]} then { +if {![is_aarch64_target]} then { verbose "Skipping aarch64 instruction recording tests." return } diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index b29b8c4..2e226ad 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -2308,6 +2308,16 @@ gdb_caching_proc is_aarch32_target { return 1 } +# Return 1 if this target is an aarch64, either lp64 or ilp32. + +proc is_aarch64_target {} { + if { ![istarget "aarch64*-*-*"] } { + return 0 + } + + return [expr ![is_aarch32_target]] +} + # Return 1 if displaced stepping is supported on target, otherwise, return 0. proc support_displaced_stepping {} {