From patchwork Thu Jul 13 08:43:31 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Sandiford X-Patchwork-Id: 107600 Delivered-To: patch@linaro.org Received: by 10.140.101.44 with SMTP id t41csp1927500qge; Thu, 13 Jul 2017 01:43:56 -0700 (PDT) X-Received: by 10.84.178.37 with SMTP id y34mr8975083plb.223.1499935436278; Thu, 13 Jul 2017 01:43:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1499935436; cv=none; d=google.com; s=arc-20160816; b=uLuR9FiDsdn1x/Nq1xfDqHfNtHJ0xCCcnM1ih8IMj/d5+ncTUau4bByvpXOiTOBd7k hLzQFJetMPIoMea+/Puttef3sWgnBu84wwIaf38eC5EPBbgqBXlgrf0x4QpSraIY++75 MQs4lmMTNDUaUxNaFeuaurcihrR47pjnXEx7kYm7AqZ66F6U1qrTx8A0/mN26B5UFYOt 4K7Mj9IR4dKr0Lofv9hkicn++pkiMHm6M8LGc6oQjo860/niV1MaAvL8WY9HzFZ326vX CI0TczJ2hBeczMr64zQ10CwFXh3LSy+srrVXj4u1Fima6nMcleaH8gCDsHC5E0ZkmSBW ilmQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:user-agent:message-id:in-reply-to:date:references :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=wxCJlOAf7D27vd8dcbs4U9n6vGHhE0gP2b4smakuVGU=; b=MweLpNLAFtlhZh3vkRq30cGaF+qckPmfgWPReI3qD1LwDkWOCvyxt5zGA3BYxB1dd1 WjCgTFBuA8FW1QHc0cqkt4tuEYm2hHrt3AV7NESet7aS8rffUMjdQnUCAem6ITNblbOq CMtUINRWQ0geG46/DF7JpShITXSobdd0FAr77u1mpMNYDLfcMPBc7Vgl9peIIksPUZ/M EHjUaPpPqkgTkxOpsBDABFvYnVPFu+EUFC2rM0FC4I+B8qpXHHvZbEmQnxk5ZibbQ/VS QdH1pbKog0Ieg8/WwD4J0WcrzdARQpWU6uKLdGfxx4uztpLpf5ok42QGxQppUUrACfze twWQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gcc.gnu.org header.b=HZBFCgf7; spf=pass (google.com: domain of gcc-patches-return-458004-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-458004-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 y16si3752863pfk.142.2017.07.13.01.43.55 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 13 Jul 2017 01:43:56 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-return-458004-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.b=HZBFCgf7; spf=pass (google.com: domain of gcc-patches-return-458004-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-458004-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:references:date:in-reply-to:message-id:mime-version :content-type; q=dns; s=default; b=giwpe0vTdtbPDkGwEIkKImNueYFOJ sOz7802xVlD/sldJ5SoWtOEQv1r6npqYbCeTgHYGjCM6bM5/mUcmmN03t/v1ELSl KDFTtRANLg/FTtS2XFlg1CX5go7x380ZgAtDpMQerKxXplD7xGLvGExj4Gv5jTCg cE3ANdETcdzz2E= 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:references:date:in-reply-to:message-id:mime-version :content-type; s=default; bh=fjFVSqV40qLY8GjEuUntIsRJ7Io=; b=HZB FCgf7HQN9C7nbE5JRdmo0r2nTvoiLPLqz3EGs+1YoTB9Z64StEAHhf08V5Gdf8lA Ul6yhPkehFESedqOJyhQhesjcFbYPZNtevQ8UNSvi9vQg8eLJk0CfpS+KC+rOQ32 OnvtzNvxyqu/yP34PWJX2YI3/Pd81k5pPwEIBMVk= Received: (qmail 26381 invoked by alias); 13 Jul 2017 08:43:38 -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 25473 invoked by uid 89); 13 Jul 2017 08:43:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-10.6 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_2, GIT_PATCH_3, KAM_ASCII_DIVIDERS, RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM, SPF_PASS autolearn=ham version=3.3.2 spammy= X-HELO: mail-wr0-f174.google.com Received: from mail-wr0-f174.google.com (HELO mail-wr0-f174.google.com) (209.85.128.174) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 13 Jul 2017 08:43:36 +0000 Received: by mail-wr0-f174.google.com with SMTP id r103so49445998wrb.0 for ; Thu, 13 Jul 2017 01:43:36 -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:references:date :in-reply-to:message-id:user-agent:mime-version; bh=wxCJlOAf7D27vd8dcbs4U9n6vGHhE0gP2b4smakuVGU=; b=tPexpDs5GqS/TqMF9xsnq5WUWK39pvLxPY1GPnsqKimPqiDhnEndzYuxfW0fxsDO6t OtPl3j0TTmmrfQGRlKivKqLth/YpBlmZhOMvzKPmIfyLJgbR/paPZxTzeIbiy1P4GL+8 I7k4oQL44Vsy2TCCpvEfRxXt5dw2aWz1brmgDP5jIm1Ia/hNZJ+b2dYSv3mJzvs+mP9/ BUHubGQcX9yeegD+BUD8mBLYTR7swl0LQCHgKEGlhvD7pucYz0BCm/RJN6pNJP/DIDFu PNFh1Qwi8uLfGkPhKPLTUhTTGoOhk4+oZWKlRZOxbisY4gh3IxRIYMFNFlk/s66L+YVE PwaA== X-Gm-Message-State: AIVw112MoKU/7gEdmcsScNvWCGybZabD0VUOLadMhF5vwXd+tafvfYeV PxDw3DJGQU+hPgWOwcIPJQ== X-Received: by 10.223.135.210 with SMTP id c18mr990703wrc.109.1499935414253; Thu, 13 Jul 2017 01:43:34 -0700 (PDT) Received: from localhost (92.40.249.184.threembb.co.uk. [92.40.249.184]) by smtp.gmail.com with ESMTPSA id i136sm4382392wmf.33.2017.07.13.01.43.33 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 13 Jul 2017 01:43:33 -0700 (PDT) From: Richard Sandiford To: gcc-patches@gcc.gnu.org Mail-Followup-To: gcc-patches@gcc.gnu.org, richard.sandiford@linaro.org Subject: [14/77] Make libgcc_floating_mode_supported_p take a scalar_float_mode References: <8760ewohsv.fsf@linaro.org> Date: Thu, 13 Jul 2017 09:43:31 +0100 In-Reply-To: <8760ewohsv.fsf@linaro.org> (Richard Sandiford's message of "Thu, 13 Jul 2017 09:35:44 +0100") Message-ID: <87h8yglob0.fsf@linaro.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) MIME-Version: 1.0 As per subject. 2017-07-13 Richard Sandiford Alan Hayward David Sherwood gcc/ * target.def (libgcc_floating_mode_supported_p): Take a scalar_float_mode. * doc/tm.texi: Regenerate. * targhooks.h (default_libgcc_floating_mode_supported_p): Take a scalar_float_mode. * targhooks.c (default_libgcc_floating_mode_supported_p): Likewise. * config/aarch64/aarch64.c (aarch64_libgcc_floating_mode_supported_p): Likewise. Index: gcc/target.def =================================================================== --- gcc/target.def 2017-07-13 09:18:26.916877727 +0100 +++ gcc/target.def 2017-07-13 09:18:27.468824773 +0100 @@ -3367,7 +3367,7 @@ floating-point mode @var{mode}, which is @code{TARGET_SCALAR_MODE_SUPPORTED_P}. The default version of this \n\ hook returns true for all of @code{SFmode}, @code{DFmode}, \n\ @code{XFmode} and @code{TFmode}, if such modes exist.", - bool, (machine_mode mode), + bool, (scalar_float_mode mode), default_libgcc_floating_mode_supported_p) DEFHOOK Index: gcc/doc/tm.texi =================================================================== --- gcc/doc/tm.texi 2017-07-13 09:18:26.914877921 +0100 +++ gcc/doc/tm.texi 2017-07-13 09:18:27.467824868 +0100 @@ -4259,7 +4259,7 @@ If this hook allows @code{val} to have a @code{int8x8x3_t}s in registers rather than forcing them onto the stack. @end deftypefn -@deftypefn {Target Hook} bool TARGET_LIBGCC_FLOATING_MODE_SUPPORTED_P (machine_mode @var{mode}) +@deftypefn {Target Hook} bool TARGET_LIBGCC_FLOATING_MODE_SUPPORTED_P (scalar_float_mode @var{mode}) Define this to return nonzero if libgcc provides support for the floating-point mode @var{mode}, which is known to pass @code{TARGET_SCALAR_MODE_SUPPORTED_P}. The default version of this Index: gcc/targhooks.h =================================================================== --- gcc/targhooks.h 2017-07-13 09:18:26.917877631 +0100 +++ gcc/targhooks.h 2017-07-13 09:18:27.468824773 +0100 @@ -72,7 +72,7 @@ extern bool default_print_operand_punct_ extern tree default_mangle_assembler_name (const char *); extern bool default_scalar_mode_supported_p (machine_mode); -extern bool default_libgcc_floating_mode_supported_p (machine_mode); +extern bool default_libgcc_floating_mode_supported_p (scalar_float_mode); extern opt_scalar_float_mode default_floatn_mode (int, bool); extern bool targhook_words_big_endian (void); extern bool targhook_float_words_big_endian (void); Index: gcc/targhooks.c =================================================================== --- gcc/targhooks.c 2017-07-13 09:18:26.917877631 +0100 +++ gcc/targhooks.c 2017-07-13 09:18:27.468824773 +0100 @@ -442,7 +442,7 @@ default_scalar_mode_supported_p (machine be supported as a scalar mode). */ bool -default_libgcc_floating_mode_supported_p (machine_mode mode) +default_libgcc_floating_mode_supported_p (scalar_float_mode mode) { switch (mode) { Index: gcc/config/aarch64/aarch64.c =================================================================== --- gcc/config/aarch64/aarch64.c 2017-07-13 09:18:23.795186280 +0100 +++ gcc/config/aarch64/aarch64.c 2017-07-13 09:18:27.465825060 +0100 @@ -15019,7 +15019,7 @@ aarch64_optab_supported_p (int op, machi if MODE is HFmode, and punt to the generic implementation otherwise. */ static bool -aarch64_libgcc_floating_mode_supported_p (machine_mode mode) +aarch64_libgcc_floating_mode_supported_p (scalar_float_mode mode) { return (mode == HFmode ? true