On Mon, Sep 06, 2021 at 10:05:00AM +0800, Hongtao Liu wrote:

> @@ -1076,9 +1076,11 @@ systems where @code{__float128} is supported.
> The @code{_Float32}
>  type is supported on all systems supporting IEEE binary32; the
>  @code{_Float64} and @code{_Float32x} types are supported on all systems
>  supporting IEEE binary64.  The @code{_Float16} type is supported on AArch64
> -systems by default, and on ARM systems when the IEEE format for 16-bit
> -floating-point types is selected with @option{-mfp16-format=ieee}.
> -GCC does not currently support @code{_Float128x} on any systems.
> +systems by default, and also on x86 systems with @code{target("sse2")}
> +for both C and C++.
> +On ARM systems when the IEEE format for 16-bit floating-point types is
> +selected with @option{-mfp16-format=ieee}.

This isn't a sentence.  I think it should be:

The @code{_Float16} type is supported on AArch64 systems by default,
on ARM systems when the IEEE format for 16-bit floating-point types is
selected with @option{-mfp16-format=ieee} and, for both C and C++, on x86
systems with SSE2 enabled.

>  On the i386, x86_64, IA-64, and HP-UX targets, you can declare complex
>  types using the corresponding internal complex type, @code{XCmode} for
> @@ -1108,6 +1110,10 @@ On ARM and AArch64 targets, GCC supports
> half-precision (16-bit) floating
>  point via the @code{__fp16} type defined in the ARM C Language Extensions.
>  On ARM systems, you must enable this type explicitly with the
>  @option{-mfp16-format} command-line option in order to use it.
> +On x86 targets with @code{target("sse2")} and above,  GCC supports
> +half-precision (16-bit) floating point via the @code{_Float16} type.
> +For C++, x86 provides a builtin type named @code{_Float16} which contains
> +same data format as C.

Again, I'd write with SSE2 enabled, there are many ways to enable SSE2,
-msse2, -mavx, -mavx512f, ... on the command line, or various target
attributes.

        Jakub

Reply via email to