On Mon, Nov 21, 2016 at 09:19:35AM +0000, Kyrill Tkachov wrote:
> 
> On 18/11/16 18:19, James Greenhalgh wrote:
> >On Fri, Nov 11, 2016 at 03:37:17PM +0000, James Greenhalgh wrote:
> >>Hi,
> >>
> >>This patch set enables the _Float16 type specified in ISO/IEC TS 18661-3
> >>for AArch64 and ARM. The patch set has been posted over the past two months,
> >>with many of the target-independent changes approved. I'm reposting it in
> >>entirity in the form I hope to commit it to trunk.
> >>
> >>The patch set can be roughly split in three; first, hookization of
> >>TARGET_FLT_EVAL_METHOD, and changes to the excess precision logic in the
> >>compiler to handle the new values for FLT_EVAL_METHOD defined in
> >>ISO/IEC TS-18661-3. Second, the AArch64 changes required to enable _Float16,
> >>and finally the ARM changes required to enable _Float16.
> >>
> >>The broad goals and an outline of each patch in the patch set were
> >>described in https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02383.html .
> >>As compared to the original submission, the patch set has grown an ARM
> >>port, and has had several rounds of technical review on the target
> >>independent aspects.
> >>
> >>This has resulted in many of the patches already being approved, a full
> >>summary of the status of each ticket is immediately below.
> >>
> >>Clearly the focus for review of this patch set now needs to be the AArch64
> >>and ARM ports, I hope the appropriate maintainers will be able to do so in
> >>time for the patch set to be accepted for GCC 7.
> >>
> >>I've built and tested the full patch set on ARM (cross and native),
> >>AArch64 (cross and native) and x86_64 (native) with no identified issues.
> >All the target independent changes are now approved, and all the ARM patches
> >have been approved (two are conditional on minor changes).
> >
> >I'd like to apply the target independent and ARM changes to trunk, while I
> >wait for approval of the AArch64 changes. The changes for the two ports 
> >should
> >be independent. Would that be acceptable, or would you prefer me to wait
> >for review of the AArch64 changes?
> 
> That's fine with me (I'd like to start getting the new features in to trunk so
> they can start getting the stage 3 testing).

I haven't seen any other objections to this, and I too would like to ensure
that the changes get as much Stage 3 testing across multiple architectures
as I can.

As the three AArch64 patches can be considered independent, I'll push the
target independent changes and the ARM changes now.

I've rerun a bootstrap on x86-64 and ARM before doing so, and there are
still no regressions.

That leaves these patches outstanding for AArch64 (which I'd like to ping).

----------------
AArch64 changes

3 patches, none reviewed
----------------

[Patch AArch64 11/17] Add floatdihf2 and floatunsdihf2 patterns

   Not reviewed, last pinged (^6):
   https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00584.html

[Patch libgcc AArch64 12/17] Enable hfmode soft-float conversions and 
truncations

   Not reviewed:
   https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02395.html

[Patch AArch64 13/17] Enable _Float16 for AArch64

   Not reviewed:
   https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01176.html

Thanks,
James

> 
> Kyrill
> 
> >I will then send a follow-up patch for doc/extend.texi detailing the
> >availability of _Float16 on ARM (I'm holding off on doing this until I know
> >which order the ARM and AArch64 parts will go in).
> >
> >Thanks,
> >James
> >
> >>------------------
> >>Target independent changes
> >>
> >>10 patches, 9 previously approved, 1 New implementing testsuite
> >>changes to enable _Float16 tests in more circumstances on ARM.
> >>------------------
> >>
> >>[Patch 1/17] Add a new target hook for describing excess precision 
> >>intentions
> >>
> >>   Approved: https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00781.html
> >>
> >>[Patch 2/17] Implement TARGET_C_EXCESS_PRECISION for i386
> >>
> >>   Blanket approved by Jeff in:
> >>     https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02402.html
> >>
> >>[Patch 3/17] Implement TARGET_C_EXCESS_PRECISION for s390
> >>
> >>   Approved: https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01554.html
> >>
> >>[Patch 4/17] Implement TARGET_C_EXCESS_PRECISION for m68k
> >>
> >>   Blanket approved by Jeff in:
> >>     https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02402.html
> >>   And by Andreas: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02414.html
> >>
> >>   There was a typo in the original patch, fixed in:
> >>     https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01173.html
> >>   which I would apply as an "obvious" fix to the original patch.
> >>
> >>[Patch 5/17] Add -fpermitted-flt-eval-methods=[c11|ts-18661-3]
> >>
> >>   Approved: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02405.html
> >>
> >>   Joseph had a comment in
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-10/msg00335.html that the tests
> >>   should check FLT_EVAL_METHOD from <float.h> rather than
> >>   __FLT_EVAL_METHOD__. Rather than implement that suggestion, I added tests
> >>   to patch 6 which tested the <float.h> macro, and left the tests in this
> >>   patch testing the internal macro.
> >>
> >>[Patch 6/17] Migrate excess precision logic to use TARGET_EXCESS_PRECISION
> >>
> >>   Approved (after removing a rebase bug):
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00231.html
> >>
> >>[Patch 7/17] Delete TARGET_FLT_EVAL_METHOD and poison it.
> >>
> >>   Approved: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02401.html
> >>
> >>[Patch 8/17] Make _Float16 available if HFmode is available
> >>
> >>   Approved: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02403.html
> >>
> >>[Patch libgcc 9/17] Update soft-fp from glibc
> >>
> >>   Self approved under policy that we can update libraries which GCC mirrors
> >>   without further approval.
> >>
> >>[Patch testsuite patch 10/17] Add options for floatN when checking 
> >>effective target for support
> >>
> >>   NEW!
> >>
> >>----------------
> >>AArch64 changes
> >>
> >>3 patches, none reviewed
> >>----------------
> >>
> >>[Patch AArch64 11/17] Add floatdihf2 and floatunsdihf2 patterns
> >>
> >>   Not reviewed, last pinged (^6):
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00584.html
> >>
> >>[Patch libgcc AArch64 12/17] Enable hfmode soft-float conversions and 
> >>truncations
> >>
> >>   Not reviewed:
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02395.html
> >>
> >>[Patch AArch64 13/17] Enable _Float16 for AArch64
> >>
> >>   Not reviewed:
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01176.html
> >>
> >>----------------
> >>ARM changes
> >>
> >>4 patches, none OK'ed
> >>----------------
> >>[Patch 14/17] [libgcc, ARM] Generalise float-to-half conversion function.
> >>
> >>   Respun in this submission to avoid a bug identified during extended
> >>   multilib testing, original submission here:
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00714.html
> >>
> >>[Patch 15/17 libgcc] Add double to half conversions.
> >>
> >>   Reviewed, but not approved:
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01975.html
> >>
> >>   Changes were required to patch 16/17, and patch 10/17 was introduced to
> >>   implement the suggested testsuite patch. The original patch still stands,
> >>   and needs reviewed:
> >>   https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01914.html
> >>
> >>[Patch 16/17 ARM] Half to double precision conversions
> >>
> >>   Resubmitted: https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00233.html
> >>   Needs review.
> >>
> >>[Patch ARM 17/17] Enable _Float16 for ARM.
> >>
> >>   Resubmitted: https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00234.html
> >>   Needs review.
> >>
> >>
> >>
> 

Reply via email to