From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 63341 invoked by alias); 29 Jul 2015 14:53:56 -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 63301 invoked by uid 89); 29 Jul 2015 14:53:55 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.4 required=5.0 tests=AWL,BAYES_50,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) (146.101.78.143) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 29 Jul 2015 14:53:49 +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-13-5BiImrY-Rg-IhqFY0uJKAg-1; Wed, 29 Jul 2015 15:53:43 +0100 Received: from [10.2.207.50] ([10.1.2.79]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.3959); Wed, 29 Jul 2015 15:53:42 +0100 Message-ID: <55B8E8F6.6040002@arm.com> Date: Wed, 29 Jul 2015 15:12:00 -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: Alan Lawrence , "gcc-patches@gcc.gnu.org" Subject: Re: [PATCH 3/15][ARM] Add V8HFmode and float16x8_t type References: <55B76654.8020708@arm.com> In-Reply-To: <55B76654.8020708@arm.com> X-MC-Unique: 5BiImrY-Rg-IhqFY0uJKAg-1 Content-Type: text/plain; charset=WINDOWS-1252; format=flowed Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2015-07/txt/msg02476.txt.bz2 Hi Alan, On 28/07/15 12:24, Alan Lawrence wrote: > This is a respin of https://gcc.gnu.org/ml/gcc-patches/2015-07/msg00477.h= tml. > The only change is to publish float16x8_t only if we actually have a scal= ar > __fp16 type. > > gcc/ChangeLog: > > * config/arm/arm.h (VALID_NEON_QREG_MODE): Add V8HFmode. > > * config/arm/arm.c (arm_vector_mode_supported_p): Support V8HFmode. > > * config/arm/arm-builtins.c (v8hf_UP): New. > (arm_init_simd_builtin_types): Initialise Float16x8_t. > > * config/arm/arm-simd-builtin-types.def (Float16x8_t): New. > > * config/arm/arm_neon.h (float16x8_t): New typedef. @@ -822,6 +823,7 @@ arm_init_simd_builtin_types (void) we have a scalar __fp16 type. */ arm_simd_types[Float16x4_t].eltype =3D arm_simd_floatHF_type_node; arm_simd_types[Float32x2_t].eltype =3D float_type_node; + arm_simd_types[Float16x8_t].eltype =3D arm_simd_floatHF_type_node; arm_simd_types[Float32x4_t].eltype =3D float_type_node; =20=20 Please put the Float16x8_t intialisation right after the Float16x4_t one. diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 6e074ea3d3910e1d7abf0299f441973259023606..0faa46ceea51ef6c524c8ff8c06= 3f329a524c11d 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -26251,7 +26251,8 @@ arm_vector_mode_supported_p (machine_mode mode) { /* Neon also supports V2SImode, etc. listed in the clause below. */ if (TARGET_NEON && (mode =3D=3D V2SFmode || mode =3D=3D V4SImode || mod= e =3D=3D V8HImode - || mode =3D=3D V4HFmode || mode =3D=3D V16QImode || mode =3D=3D V4SF= mode || mode =3D=3D V2DImode)) + || mode =3D=3DV4HFmode || mode =3D=3D V16QImode || mode =3D=3D V4SFm= ode + || mode =3D=3D V2DImode || mode =3D=3D V8HFmode)) Space between =3D=3D and V4HFmode. Ok with those changes. Thanks, Kyrill