From patchwork Tue May 13 06:18:45 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ramana Radhakrishnan X-Patchwork-Id: 348245 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 8717F14007C for ; Tue, 13 May 2014 16:18:59 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:date:from:mime-version:to:subject:content-type; q= dns; s=default; b=jGSUy9Zcbm81hw4a2Oeff5+LW/yllP6ftzu80v7lQBneKD 7AaY5QxeXJZohHt1xAIUBbKOkc4E/Ol17tXJxUJS8BiO6m7ejpT+r+GeesNkQFgn qNILoLFz9axYYygzfW3gvFEwFVPyYDoFuhhlkSnBigSWpRrh91FVTZVBcPVBE= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:date:from:mime-version:to:subject:content-type; s= default; bh=ZLgCPdWctPPHD+7z/TMFiP2bQpw=; b=qu0WjlzHsnsmdtu1vIsd sXPtdoTUD7pxn3vw5+Zi40FBZmOOwvLumfFIhgN0y9Bvqo06GRahrGhktbPPXSYz ALkBzp1csOhYY4mUJYjixf60KB4tE+ABaNNFN5IdgwiVsn2GQsx23uohZssfyrAK ldXdKMiEsxx9cmGrVHP4rUo= Received: (qmail 25221 invoked by alias); 13 May 2014 06:18:51 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 25205 invoked by uid 89); 13 May 2014 06:18:50 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.2 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_PASS autolearn=ham version=3.3.2 X-HELO: collaborate-mta1.arm.com Received: from fw-tnat.austin.arm.com (HELO collaborate-mta1.arm.com) (217.140.110.23) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 13 May 2014 06:18:49 +0000 Received: from [10.1.209.147] (e104577-lin.cambridge.arm.com [10.1.209.147]) by collaborate-mta1.arm.com (Postfix) with ESMTPS id 37DF113F884 for ; Tue, 13 May 2014 01:18:47 -0500 (CDT) Message-ID: <5371B945.4040400@arm.com> Date: Tue, 13 May 2014 07:18:45 +0100 From: Ramana Radhakrishnan User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:14.0) Gecko/20120713 Thunderbird/14.0 MIME-Version: 1.0 To: "gcc-patches@gcc.gnu.org ;" Subject: [Patch ARM/testsuite] Mark pr48329.f90 as unsupported on AArch32 X-IsSubscribed: yes The AArch32 SIMD unit doesn't have vector floating point divide. Handled thusly. I've chosen to inherit vector floating point divide support from target_vect_float. If this doesn't work for all targets, they can choose to override it here otherwise. Tested cross with the testcase on arm-none-linux-gnueabihf noting that the test is now UNSUPPORTED. Ok to apply ? regards Ramana Ramana Radhakrishnan * lib/target-supports.exp (check_effective_target_vect_float_divide): New. * gfortran.dg/vect/pr48329.f90: Use this. Ramana Radhakrishnan * doc/sourcebuild.texi (vect_float_divide): Document. commit a62464b026474aeb2cb1c67b0e7e03287a1fcc4f Author: Ramana Radhakrishnan Date: Tue May 13 07:13:16 2014 +0100 Unsupport test for ARM neon with vector floating point divide. diff --git a/gcc/testsuite/gfortran.dg/vect/pr48329.f90 b/gcc/testsuite/gfortran.dg/vect/pr48329.f90 index 6ad03d4..b621a21 100644 --- a/gcc/testsuite/gfortran.dg/vect/pr48329.f90 +++ b/gcc/testsuite/gfortran.dg/vect/pr48329.f90 @@ -1,6 +1,7 @@ ! { dg-do compile } ! { dg-require-effective-target vect_float } ! { dg-require-effective-target vect_intfloat_cvt } +! { dg-require-effective-target vect_float_divide } ! { dg-additional-options "-ffast-math" } program calcpi diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 6ab414a..fbd7474 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -2059,6 +2059,25 @@ proc check_effective_target_vect_int { } { return $et_vect_int_saved } +proc check_effective_target_vect_float_divide { } { + + global et_vect_float_divide_saved + + if [info exists et_vect_float_divide_saved] { + verbose "check_effective_target_vect_divide_saved: using cached result" 2 + } else { + set et_vect_float_divide_saved [check_effective_target_vect_float] + if { ([istarget arm*-*-*] + && [check_effective_target_arm_neon_ok])} { + set et_vect_float_divide_saved 0 + } + } + + verbose "check_effective_target_vect_float_divide: returning $et_vect_float_divide_saved" 2 + return $et_vect_float_divide_saved + +} + # Return 1 if the target supports signed int->float conversion #