From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 44815 invoked by alias); 9 Dec 2016 13:02:17 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 44796 invoked by uid 89); 9 Dec 2016 13:02:16 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-4.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:3235 X-HELO: foss.arm.com Received: from foss.arm.com (HELO foss.arm.com) (217.140.101.70) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 09 Dec 2016 13:02:06 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id A9C24707; Fri, 9 Dec 2016 05:02:04 -0800 (PST) Received: from localhost (e105548-lin.manchester.arm.com [10.45.32.67]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4C4033F477 for ; Fri, 9 Dec 2016 05:02:04 -0800 (PST) From: Richard Sandiford To: gcc-patches@gcc.gnu.org Mail-Followup-To: gcc-patches@gcc.gnu.org, richard.sandiford@arm.com Subject: [14/67] Make libgcc_floating_mode_supported_p take a scalar_float_mode References: <87h96dp8u6.fsf@e105548-lin.cambridge.arm.com> Date: Fri, 09 Dec 2016 13:02:00 -0000 In-Reply-To: <87h96dp8u6.fsf@e105548-lin.cambridge.arm.com> (Richard Sandiford's message of "Fri, 09 Dec 2016 12:48:01 +0000") Message-ID: <87shpxmf1x.fsf@e105548-lin.cambridge.arm.com> User-Agent: Gnus/5.130012 (Ma Gnus v0.12) Emacs/24.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-SW-Source: 2016-12/txt/msg00785.txt.bz2 As per subject. gcc/ 2016-11-24 Richard Sandiford Alan Hayward David Sherwood * target.def (default_libgcc_floating_mode_supported_p): Take a scalar_float_mode. * doc/tm.texi: Regenerate. * targhooks.h (default_floatn_mode): Take a scalar_float_mode. * targhooks.c (default_floatn_mode): Likewise. * config/aarch64/aarch64.c (aarch64_libgcc_floating_mode_supported_p): Likewise. diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index cc97b7a..f399514 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -14547,7 +14547,7 @@ aarch64_optab_supported_p (int op, machine_mode mode1, machine_mode, 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 diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 187d20d..4993817 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -4250,7 +4250,7 @@ If this hook allows @code{val} to have a scalar mode, then @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 diff --git a/gcc/target.def b/gcc/target.def index 09b23b2..fa765de 100644 --- a/gcc/target.def +++ b/gcc/target.def @@ -3358,7 +3358,7 @@ floating-point mode @var{mode}, which is known to pass \n\ @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 diff --git a/gcc/targhooks.c b/gcc/targhooks.c index f8a9fae..90892fa 100644 --- a/gcc/targhooks.c +++ b/gcc/targhooks.c @@ -441,7 +441,7 @@ default_scalar_mode_supported_p (machine_mode mode) 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) { diff --git a/gcc/targhooks.h b/gcc/targhooks.h index 7b633c2..1a56ec7 100644 --- a/gcc/targhooks.h +++ b/gcc/targhooks.h @@ -72,7 +72,7 @@ extern bool default_print_operand_punct_valid_p (unsigned char); 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);