From patchwork Tue Jan 15 01:55:32 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janis Johnson X-Patchwork-Id: 211966 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]) by ozlabs.org (Postfix) with SMTP id A76A32C00A3 for ; Tue, 15 Jan 2013 12:53:48 +1100 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1358819629; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Received:Message-ID:Date:From:Reply-To:User-Agent:MIME-Version: To:Subject:Content-Type:Mailing-List:Precedence:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:Sender: Delivered-To; bh=ZAaDs7yG9r2JZA9/M+49iBZQ344=; b=TA0FK0lNV0coUm8 9uTIDGazfx6LUN1mFKJKpZF7eZt8AQ/5/UK83UOBH5W5gfszExtnaYys8K/JTLdD mzqhAiniD58A2qEHx0wxEFMgdptah8R3RvBcMfCuuVX8X1nw061w9FZXW+U3gIwP HXR4o8zBevmMIH8qCBkPLesvNrFw= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Received:Received:Message-ID:Date:From:Reply-To:User-Agent:MIME-Version:To:Subject:Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=C9MJiFov2+W2++u7eUok0gkHeWnaQseUY3UvAJdTTTfE7vzikgp4l57z5Yu2Gs /Cdm4mAWPrFMsxuVxQckRQjXIOPMxE82/kPwkM3dwEH/I2zzLGp8kDvFTyAtKEVg cXy1xaDV4sq5KYsL/++P+eick000sQEGpnn2ZcWHXj/Dw=; Received: (qmail 26287 invoked by alias); 15 Jan 2013 01:53:42 -0000 Received: (qmail 26181 invoked by uid 22791); 15 Jan 2013 01:53:40 -0000 X-SWARE-Spam-Status: No, hits=-3.8 required=5.0 tests=AWL, BAYES_00, KHOP_RCVD_UNTRUST, RCVD_IN_HOSTKARMA_W, RCVD_IN_HOSTKARMA_WL X-Spam-Check-By: sourceware.org Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 15 Jan 2013 01:53:35 +0000 Received: from svr-orw-exc-10.mgc.mentorg.com ([147.34.98.58]) by relay1.mentorg.com with esmtp id 1TuviY-0007ci-GV from Janis_Johnson@mentor.com for gcc-patches@gcc.gnu.org; Mon, 14 Jan 2013 17:53:34 -0800 Received: from SVR-ORW-FEM-03.mgc.mentorg.com ([147.34.97.39]) by SVR-ORW-EXC-10.mgc.mentorg.com with Microsoft SMTPSVC(6.0.3790.4675); Mon, 14 Jan 2013 17:53:34 -0800 Received: from [127.0.0.1] (147.34.91.1) by svr-orw-fem-03.mgc.mentorg.com (147.34.97.39) with Microsoft SMTP Server id 14.1.289.1; Mon, 14 Jan 2013 17:53:33 -0800 Message-ID: <50F4B714.1090805@mentor.com> Date: Mon, 14 Jan 2013 17:55:32 -0800 From: Janis Johnson Reply-To: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.28) Gecko/20120313 Thunderbird/3.1.20 MIME-Version: 1.0 To: "gcc-patches@gcc.gnu.org" Subject: [testsuite] remove ARM big-endian from some vect effective targets 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 As described in PR testsuite/54622, lots of tests from gcc.dg/vect fail for big-endian ARM, apparently with bits of vectorization support disabled here and there. This patch removes big-endian ARM from check_effective_target_vect_perm_byte check_effective_target_vect_perm_short check_effective_target_vect_widen_mult_qi_to_hi_pattern, check_effective_target_vect64 and makes check_effective_target_vect_widen_sum_qi_to_hi return 1 for ARM. For each individual change there are tests that no longer fail and no tests that regress. Tested for arm-none-eabi with several multilibs; OK for trunk? Janis 2013-01-15 Janis Johnson PR testsuite/54622 * lib/target-supports.exp (check_effective_target_vect_perm_byte, check_effective_target_vect_perm_short, check_effective_target_vect_widen_mult_qi_to_hi_pattern, check_effective_target_vect64): Return 0 for big-endian ARM. (check_effective_target_vect_widen_sum_qi_to_hi): Return 1 for ARM. Index: lib/target-supports.exp =================================================================== --- lib/target-supports.exp (revision 195178) +++ lib/target-supports.exp (working copy) @@ -3082,7 +3082,8 @@ verbose "check_effective_target_vect_perm_byte: using cached result" 2 } else { set et_vect_perm_byte_saved 0 - if { [is-effective-target arm_neon_ok] + if { ([is-effective-target arm_neon_ok] + && [is-effective-target arm_little_endian]) || [istarget aarch64*-*-*] || [istarget powerpc*-*-*] || [istarget spu-*-*] } { @@ -3105,7 +3106,8 @@ verbose "check_effective_target_vect_perm_short: using cached result" 2 } else { set et_vect_perm_short_saved 0 - if { [is-effective-target arm_neon_ok] + if { ([is-effective-target arm_neon_ok] + && [is-effective-target arm_little_endian]) || [istarget aarch64*-*-*] || [istarget powerpc*-*-*] || [istarget spu-*-*] } { @@ -3175,6 +3177,7 @@ } else { set et_vect_widen_sum_qi_to_hi_saved 0 if { [check_effective_target_vect_unpack] + || [check_effective_target_arm_neon_ok] || [istarget ia64-*-*] } { set et_vect_widen_sum_qi_to_hi_saved 1 } @@ -3282,7 +3285,9 @@ } else { set et_vect_widen_mult_qi_to_hi_pattern_saved 0 if { [istarget powerpc*-*-*] - || ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok]) } { + || ([istarget arm*-*-*] + && [check_effective_target_arm_neon_ok] + && [check_effective_target_arm_little_endian]) } { set et_vect_widen_mult_qi_to_hi_pattern_saved 1 } } @@ -3307,7 +3312,9 @@ || [istarget ia64-*-*] || [istarget i?86-*-*] || [istarget x86_64-*-*] - || ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok]) } { + || ([istarget arm*-*-*] + && [check_effective_target_arm_neon_ok] + && [check_effective_target_arm_little_endian]) } { set et_vect_widen_mult_hi_to_si_pattern_saved 1 } } @@ -3914,7 +3921,9 @@ verbose "check_effective_target_vect64: using cached result" 2 } else { set et_vect64_saved 0 - if { ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok]) } { + if { ([istarget arm*-*-*] + && [check_effective_target_arm_neon_ok] + && [check_effective_target_arm_little_endian]) } { set et_vect64_saved 1 } }