From patchwork Tue Aug 22 09:17:26 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Sandiford X-Patchwork-Id: 110619 Delivered-To: patch@linaro.org Received: by 10.140.95.78 with SMTP id h72csp2402210qge; Tue, 22 Aug 2017 02:17:49 -0700 (PDT) X-Received: by 10.99.61.79 with SMTP id k76mr9778pga.206.1503393469426; Tue, 22 Aug 2017 02:17:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1503393469; cv=none; d=google.com; s=arc-20160816; b=Osz+4y9KN4oAS85k/udabfmRzS6PuOUoNKDpCT8kytpLLCHS5wds4wo67qR/cvOdv+ h1r/xo74aW/2LPtE5g1S7vimKuKdZzx8w1EZn9MnZy3EBxFEAqq8/+5SMez2HKGMHjZH C7R6PG8jE7LYUD0mFiEvu+1kYOQM8ya0dAgDmEKbbyf5TwGTo81iSw3GqRVx26sRAdeS 2O1O8sk+I/Mk6yrFIqgGdn7SFiQvdeVG8zpErDavUa0xK4LQ5i1p5l8JMHMAYxVtRW/z JFjVaxii3xV+AAV3WmV4CHabljU1KNRwdKyGw8BehrqokVNQA2HeHWyzyJ/BgT45YbNB CG9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:user-agent:message-id:date:subject:mail-followup-to:to :from:delivered-to:sender:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:mailing-list:dkim-signature :domainkey-signature:arc-authentication-results; bh=YqHj95rVnlTxInVuOiy/tMBLLQeUTS7305A48nn+NIU=; b=ov8nxP8u58zWrzcoZpENi20MhWftOgiPFQ2eWSci9OlB2oLnZhTXXkvdSkYj/bxFC5 XUF7ruKS8j11T/fc0qiXN6+NFLVMh/5aZ/AzNtvXoUXU6BideQL7fL30DLRjWS91lxWT pwj/aY97qRfQf9AszHEyeZCtdljdxUmL5B/hR2iE+unZpcXyl283Pb20gaho47m/m7uG nAXUjcFkI/Tf1XslRDB1moBkDL3zEYwTb4I8jMf1kYyROUeBwOlKnzOjxpOgMKIYSN1F uK3c5gr6M0cWkVFAkZzX84aKlSIT7kzu2w/3B/0hw33JkLQVNaIvbm2lupNZJmt6HEy7 XO/Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gcc.gnu.org header.s=default header.b=XMQcy7ze; spf=pass (google.com: domain of gcc-patches-return-460689-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-460689-patch=linaro.org@gcc.gnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from sourceware.org (server1.sourceware.org. [209.132.180.131]) by mx.google.com with ESMTPS id 95si9722101plc.40.2017.08.22.02.17.49 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 22 Aug 2017 02:17:49 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-return-460689-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; dkim=pass header.i=@gcc.gnu.org header.s=default header.b=XMQcy7ze; spf=pass (google.com: domain of gcc-patches-return-460689-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-460689-patch=linaro.org@gcc.gnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:subject:date:message-id:mime-version:content-type; q=dns; s= default; b=p4pqHVH/2PIugy9kqwfmQEX+joLNcK70k27LfktixS3NK0Uy04lmv Iu2SB25br0+Fs7ivE3ow3xCtmV5k4fiSIDOONsXbq9vyE9NrRAf1GNq4QwmwXTjs 3HjyAUxLqnSlFUXjEO9tV/Fbsh4eWa4JUUSJfbBJOAwsumDC2r2nrA= 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:from :to:subject:date:message-id:mime-version:content-type; s= default; bh=4EZj2XNnQ8Hl+vgZuXpJ34iP0MQ=; b=XMQcy7zeOENoT4HUkp9f 4ho9Lny35CIUsoqBDBsv/O+ol96r69Im4csKQJQn55rbLhP8bLNZB9jsM89JiQVq aTT1lexL1rJonyTYZCUXxg4ayJvYKVCD0Xh1qBg1/NotQqiD1I2wDluJycz0VEXZ SLbJIPnyQvciI/GmDbGxzKc= Received: (qmail 102444 invoked by alias); 22 Aug 2017 09:17:34 -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 102325 invoked by uid 89); 22 Aug 2017 09:17:33 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-10.9 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM, SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:1063 X-HELO: mail-wr0-f173.google.com Received: from mail-wr0-f173.google.com (HELO mail-wr0-f173.google.com) (209.85.128.173) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 22 Aug 2017 09:17:31 +0000 Received: by mail-wr0-f173.google.com with SMTP id k46so44972680wre.2 for ; Tue, 22 Aug 2017 02:17:30 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:mail-followup-to:subject:date:message-id :user-agent:mime-version; bh=YqHj95rVnlTxInVuOiy/tMBLLQeUTS7305A48nn+NIU=; b=aeM9NRpof/M776tONj+p1D83+1T/6cT8wqt0wifYv2qB7c5M7wq62KEPJprXuk6DQM eA3Hvn6oHQfNhi7Ugp1E5dFndlGG4xxowAvcc5dybnFLRv4VwMZBRD/ZdOHk0j67uBfF JM+VDtXkchVeTNPQAYDF+U6Q+Rt1udDmiiom7onYonfLfV4H4VF8V+23jK6bOPyLJxTy 1aIyJB0qwUkx3uRvX4W/ZJ+sxRNdu3DlUk4Hzm0cQ+ticfiPXHclUsZXCbhgs6PBWG1u agYCFu2UpQKKcOT0de9InLGoLYEYd4JG31bvC6ya+Yf+mcaf4ArWesS8W2AVEmXZCY77 quig== X-Gm-Message-State: AHYfb5jqSNuhPuz5imLJEFt2CDklYaim7SIBkVsLRQQGY/eT/R63bhz9 OlL/e7Pu5dxAYwdAxT7qgA== X-Received: by 10.28.147.10 with SMTP id v10mr4503609wmd.9.1503393448707; Tue, 22 Aug 2017 02:17:28 -0700 (PDT) Received: from localhost ([95.145.139.63]) by smtp.gmail.com with ESMTPSA id b96sm4249320wrd.94.2017.08.22.02.17.27 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 22 Aug 2017 02:17:27 -0700 (PDT) From: Richard Sandiford To: gcc-patches@gcc.gnu.org Mail-Followup-To: gcc-patches@gcc.gnu.org, richard.sandiford@linaro.org Subject: [AArch64, committed] Fix label mode Date: Tue, 22 Aug 2017 10:17:26 +0100 Message-ID: <87inhgc66x.fsf@linaro.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) MIME-Version: 1.0 This patch fixes a case where we tried to force a VOIDmode label into a DImode register, which led to invalid rtl that was previously undiagnosed. Tested on aarch64-linux-gnu and applied as obvious. Richard 2017-08-22 Richard Sandiford Alan Hayward David Sherwood gcc/ * config/aarch64/aarch64.md (casesi): Use DImode rather than VOIDmode for the LABEL_REF. Index: gcc/config/aarch64/aarch64.md =================================================================== --- gcc/config/aarch64/aarch64.md 2017-08-22 10:11:45.067177420 +0100 +++ gcc/config/aarch64/aarch64.md 2017-08-22 10:13:02.285442249 +0100 @@ -498,7 +498,7 @@ (define_expand "casesi" const0_rtx), operands[0], operands[2], operands[4])); - operands[2] = force_reg (DImode, gen_rtx_LABEL_REF (VOIDmode, operands[3])); + operands[2] = force_reg (DImode, gen_rtx_LABEL_REF (DImode, operands[3])); emit_jump_insn (gen_casesi_dispatch (operands[2], operands[0], operands[3])); DONE;