From patchwork Thu Nov 5 09:32:13 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kyrylo Tkachov X-Patchwork-Id: 56032 Delivered-To: patch@linaro.org Received: by 10.112.61.134 with SMTP id p6csp297375lbr; Thu, 5 Nov 2015 01:34:10 -0800 (PST) X-Received: by 10.66.194.16 with SMTP id hs16mr8025076pac.93.1446716050564; Thu, 05 Nov 2015 01:34:10 -0800 (PST) Return-Path: Received: from sourceware.org (server1.sourceware.org. [209.132.180.131]) by mx.google.com with ESMTPS id y12si8855775pbt.182.2015.11.05.01.34.10 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 05 Nov 2015 01:34:10 -0800 (PST) Received-SPF: pass (google.com: domain of gcc-patches-return-412713-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) client-ip=209.132.180.131; Authentication-Results: mx.google.com; spf=pass (google.com: domain of gcc-patches-return-412713-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-412713-patch=linaro.org@gcc.gnu.org; dkim=pass header.i=@gcc.gnu.org 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:cc:subject:content-type; q=dns; s=default; b=ccA3fPG0KSCrFpejOWc0m+tKWYz3Kt4Q30N27obmEza wyDs2YQRhBqX3cftQZhRbfhbDSJQQ92yTtKZqM/Bi5WSjecszO9W+AzW/9LL3xhZ bNJNeFPLTSXw3pNNiy874Q4B4oaYbu9YYqTOb8MZgaR8jMimE0dpSjdv48SG41WQ = 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:cc:subject:content-type; s=default; bh=vm3icXQ2WTHvLzQsMStJGV00MuI=; b=I+1Xrfr/dYG9AO1rq oVraXagmEJZOYPH6FoaTjU2B6SDmcC7OHXPeB2e6he4ytSABxou8Y2HjD0cF++jS RitfHErmEjKGF+uZ8hzKCcxbZ8q/BNtUrXnvDCY8usrnc075fvv2NUuZSIj0Yoip 1iCAtNDo9t6oAPXSZHoi8oCarM= Received: (qmail 130810 invoked by alias); 5 Nov 2015 09:32:42 -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 130749 invoked by uid 89); 5 Nov 2015 09:32:41 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.7 required=5.0 tests=AWL, BAYES_00, SPF_PASS autolearn=ham version=3.3.2 X-HELO: eu-smtp-delivery-143.mimecast.com Received: from eu-smtp-delivery-143.mimecast.com (HELO eu-smtp-delivery-143.mimecast.com) (207.82.80.143) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 05 Nov 2015 09:32:30 +0000 Received: from cam-owa1.Emea.Arm.com (fw-tnat.cambridge.arm.com [217.140.96.140]) by eu-smtp-1.mimecast.com with ESMTP id uk-mta-38-hWlTs_d8RkWGbrrkpChORw-1; Thu, 05 Nov 2015 09:32:23 +0000 Received: from [10.2.206.200] ([10.1.2.79]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.3959); Thu, 5 Nov 2015 09:32:14 +0000 Message-ID: <563B221D.2010201@arm.com> Date: Thu, 05 Nov 2015 09:32:13 +0000 From: Kyrill Tkachov User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: GCC Patches CC: Ramana Radhakrishnan , Richard Earnshaw Subject: [PATCH][ARM][cleanup] Remove uses of CONST_DOUBLE_HIGH/LOW X-MC-Unique: hWlTs_d8RkWGbrrkpChORw-1 X-IsSubscribed: yes Hi all, This cleanup patch removes handling of CONST_DOUBLE rtxes that carry large integers. These should never be passed down from the midend and the arm backend doesn't create them. The code has been there since 2007 but the arm backend was moved to TARGET_SUPPORTS_WIDE_INT in 2014, so this path should never be taken. Bootstrapped and tested on arm-none-linux-gnueabihf. Ok for trunk? Thanks, Kyrill commit 8a1c27b21e6662c3203b95c457c0df5c0239805e Author: Kyrylo Tkachov Date: Thu Oct 29 11:20:43 2015 +0000 [ARM][cleanup] Remove uses of CONST_DOUBLE_HIGH/LOW diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 5c97786..36958af 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -12386,32 +12386,15 @@ neon_valid_immediate (rtx op, machine_mode mode, int inverse, { rtx el = vector ? CONST_VECTOR_ELT (op, i) : op; unsigned HOST_WIDE_INT elpart; - unsigned int part, parts; - if (CONST_INT_P (el)) - { - elpart = INTVAL (el); - parts = 1; - } - else if (CONST_DOUBLE_P (el)) - { - elpart = CONST_DOUBLE_LOW (el); - parts = 2; - } - else - gcc_unreachable (); + gcc_assert (CONST_INT_P (el)); + elpart = INTVAL (el); - for (part = 0; part < parts; part++) - { - unsigned int byte; - for (byte = 0; byte < innersize; byte++) - { - bytes[idx++] = (elpart & 0xff) ^ invmask; - elpart >>= BITS_PER_UNIT; - } - if (CONST_DOUBLE_P (el)) - elpart = CONST_DOUBLE_HIGH (el); - } + for (unsigned int byte = 0; byte < innersize; byte++) + { + bytes[idx++] = (elpart & 0xff) ^ invmask; + elpart >>= BITS_PER_UNIT; + } } /* Sanity check. */