From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12882 invoked by alias); 29 Jun 2016 08:26:38 -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 12840 invoked by uid 89); 29 Jun 2016 08:26:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=Christophe, christophe, validations, HX-Envelope-From:sk:christo X-HELO: mail-qt0-f177.google.com Received: from mail-qt0-f177.google.com (HELO mail-qt0-f177.google.com) (209.85.216.177) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Wed, 29 Jun 2016 08:26:24 +0000 Received: by mail-qt0-f177.google.com with SMTP id m2so21281696qtd.1 for ; Wed, 29 Jun 2016 01:26:24 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=q7moIR7sUTeV715DP0IrIQwBzvGgO7ku2vSsWKHLwUM=; b=eQW94RiP4HMbdRbB3A3G07PS4mg+qv8Wm5jfX8pZUarElRLkqF/zAunbtsBGhLRzbk 1lwCnfOZEny4tFMC8CtYXW3sOeHYGHBMxaa8jP4TiqV+H523UhmVV678Qg8TobaAoRU6 a3MMS38H6FDPbpo799Qbn9vndUjhborkxVh5PU063M3/SFM6aPIsbruTHUROXMQ6pmM7 7l9q1k7GG7G5Q7KKydAesaienv0/uHNTnQpSossp4BugIt0rLMyblCvNGOytjOn7HAWn qOFbR32YOmHgvT9FyGXWeigWwTrMJiTnjBtAnUQIt/vVXHFXQ74OmRI9Wrm5ODQkla/u tRRw== X-Gm-Message-State: ALyK8tJjCg4NURAxNGAKevzTSjNEkkgvPzJjHmMBZlWZqVhD89Qtmr6IxbuLQWwq9vgQTUB5ouzinAXYWxge/s45 X-Received: by 10.200.55.219 with SMTP id e27mr11400074qtc.93.1467188782396; Wed, 29 Jun 2016 01:26:22 -0700 (PDT) MIME-Version: 1.0 Received: by 10.140.99.78 with HTTP; Wed, 29 Jun 2016 01:26:21 -0700 (PDT) In-Reply-To: <5770F8DE.7040704@foss.arm.com> References: <57598992.8090106@foss.arm.com> <575AC701.5000907@foss.arm.com> <575ACF02.80901@foss.arm.com> <5770F8DE.7040704@foss.arm.com> From: Christophe Lyon Date: Wed, 29 Jun 2016 08:36:00 -0000 Message-ID: Subject: Re: [ARM] Fix, add tests for FP16 aapcs. To: Matthew Wahab Cc: gcc-patches Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2016-06/txt/msg01935.txt.bz2 On 27 June 2016 at 11:58, Matthew Wahab wrote: > On 10/06/16 15:30, Matthew Wahab wrote: >> On 10/06/16 15:22, Christophe Lyon wrote: >>> On 10 June 2016 at 15:56, Matthew Wahab >>> wrote: >>>> On 10/06/16 09:32, Christophe Lyon wrote: >>>>> >>>>> On 9 June 2016 at 17:21, Matthew Wahab >>>>> wrote: >>>>>> >>>>> It's an improvement, but I'm still seeing a few problems with this >>>>> patch: >>>>> the vfp* tests are still failing in some of the configurations I test, >>>>> because >>>>> * you force dg-options that contains -mfloat-abi=hard, >>>>> * you check effective-target arm_neon_fp16_hw >>>>> * but you don't call dg-add-options arm_neon_fp16 >>>>> >> I understand now. I still think it would be better to use a list of >> require-effective-targets so I'll try that first and use the arm_neon_fp16 >> options if that doesn't work. >> > > Sorry for the delay. I've added effective-target requirements to the > tests to check for hard-fp and for VFP (i.e. non-neon) FP16 support. The > directives for the VFP FP16 support are new. I've split them out to a > separate patch, both patches are attached. > I have run validations with the 2 patches applied, and the result looks OK to me, FWIW. Thanks, Christophe. > The first patch adds: > > - effective-target keywords arm_fp16_ok and arm_fp16_hw to check for > compiler and hardware support for FP16. > > - add-options features arm_fp16_ieee and arm_fp16_alternative, to > enable FP16 IEEE format and FP16 ARM Alternative format support > > Note that the existing add-options feature arm_fp16 enables the default > FP16 format (fp16-format=none). > > The second patch updates the tests to use these directives. It also > reworks gcc.target/arm/fp16-aapcs-1.c test is also reworked to focus on > argument passing and return values adds a softfp variant as > fp16-aapcs-2.c. > > As before, checked for arm-none-eabi with cross-compiled check-gcc and > arm-linux-gnueabihf with native make check. I also ran the tests for > cross-compiled arm-none-eabi with -mcpu=Cortex-M3. > > Ok for trunk? > Matthew > > PATCH 1/2 ChangeLog > gcc/ > 2016-06-27 Matthew Wahab > > * doc/sourcebuild.texi (Effective-Target keywords): Add entries > for arm_fp16_ok and arm_fp16_hw. > (Add Options): Add entries for arm_fp16, arm_fp16_ieee and > arm_fp16_alternative. > > testsuite/ > 2016-06-27 Matthew Wahab > > * lib/target-supports.exp (add_options_for arm_fp16): Reword > comment. > (add_options_for_arm_fp16_ieee): New. > (add_options_for_arm_fp16_alternative): New. > (check_effective_target_arm_fp16_ok_nocache): Add to comment. Fix a > long-line. > (check_effective_target_arm_fp16_hw): New. > > PATCH 2/2 ChangeLog > testsuite/ > 2016-06-27 Matthew Wahab > > * testsuite/gcc.target/arm/aapcs/neon-vect10.c: Require > -mfloat-ab=hard. Replace arm_neon_fp16_ok with arm_neon_fp16_hw. > * testsuite/gcc.target/arm/aapcs/neon-vect9.c: Likewise. > * testsuite/gcc.target/arm/aapcs/vfp18.c: Likewise. Also add > options for ARM FP16 IEEE format. > * testsuite/gcc.target/arm/aapcs/vfp19.c: Likewise. > * testsuite/gcc.target/arm/aapcs/vfp20.c: Likewise. > * testsuite/gcc.target/arm/aapcs/vfp21.c: Likewise. > * testsuite/gcc.target/arm/fp16-aapcs-1.c: Require > -mfloat-ab=hard. Also simplify the test. > * testsuite/gcc.target/arm/fp16-aapcs-2.c: New. >