diff mbox series

[x86] Mention _Float16 and __bf16 changes in GCC14.

Message ID 20240731042922.4046053-1-hongtao.liu@intel.com
State New
Headers show
Series [x86] Mention _Float16 and __bf16 changes in GCC14. | expand

Commit Message

liuhongt July 31, 2024, 4:29 a.m. UTC
Ok for trunk?

---
 htdocs/gcc-14/changes.html    | 7 +++++++
 htdocs/gcc-14/porting_to.html | 9 +++++++++
 2 files changed, 16 insertions(+)

Comments

Richard Biener July 31, 2024, 8:37 a.m. UTC | #1
On Wed, Jul 31, 2024 at 6:32 AM liuhongt <hongtao.liu@intel.com> wrote:
>
> Ok for trunk?

OK for www.

Richard.

> ---
>  htdocs/gcc-14/changes.html    | 7 +++++++
>  htdocs/gcc-14/porting_to.html | 9 +++++++++
>  2 files changed, 16 insertions(+)
>
> diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html
> index ca4cae0f..b023a4b9 100644
> --- a/htdocs/gcc-14/changes.html
> +++ b/htdocs/gcc-14/changes.html
> @@ -982,6 +982,13 @@ __asm (".global __flmap_lock"  "\n\t"
>      AVX512VP2INTERSECT, AVXVNNI, MOVDIR64B, MOVDIRI, and PREFETCHI ISA
>      extensions.
>    </li>
> +  <li> The <code>_Float16</code> and <code>__bf16</code> type are supported
> +    independent of SSE2. W/o SSE2, these types are storage-only, compiler will
> +    issue an error when they're used in conversion, unary operation,
> +    binary operation, parameter passing or value return. Please use
> +    <code>__SSE2__</code> to detect arithmetic support of these types
> +    instead of <code>__FLT16_MAX__</code>(or other similar Macros).
> +  </li>
>  </ul>
>
>  <h3 id="mcore">MCore</h3>
> diff --git a/htdocs/gcc-14/porting_to.html b/htdocs/gcc-14/porting_to.html
> index 3de15d02..b4f87149 100644
> --- a/htdocs/gcc-14/porting_to.html
> +++ b/htdocs/gcc-14/porting_to.html
> @@ -490,6 +490,8 @@ in C23.
>  GCC will probably continue to support old-style function definitions
>  even once C23 is used as the default language dialect.
>
> +
> +
>  <h2 id="cxx">C++ language issues</h2>
>
>  <h3 id="header-dep-changes">Header dependency changes</h3>
> @@ -554,6 +556,13 @@ incorrect instruction set by GCC 14.
>  <p>The fix in this case is to remember whether <code>pop_options</code>
>  needs to be performed in a new user-defined macro.</p>
>
> +<h3 id="x86_fp16_bf16">Type _Float16 and __bf16 are supported independent of SSE2 for IA-32/x86-64</h3>
> +<p>W/o SSE2, these types are storage-only, compiler will issue an error when
> +  they're used in conversion, unary operation, binary operation, parameter
> +  passing or value return. Please use <code>__SSE2__</code> to detect
> +  arithmetic support of these types instead of
> +  <code>__FLT16_MAX__</code>(or other similar Macros).</p>
> +
>  <!-- <h2 id="fortran">Fortran language issues</h2> -->
>
>  </body>
> --
> 2.31.1
>
Gerald Pfeifer Aug. 10, 2024, 10:32 a.m. UTC | #2
On Wed, 31 Jul 2024, liuhongt wrote:
> +  <li> The <code>_Float16</code> and <code>__bf16</code> type are supported
> +    independent of SSE2. W/o SSE2, these types are storage-only, compiler will
> +    issue an error when they're used in conversion, unary operation,
> +    binary operation, parameter passing or value return. 

"types" (plural)
"independently"
"Without" (spelt out)
"the compiler"

And personally I would use an Oxford comma, so "..., or value return".

> +    instead of <code>__FLT16_MAX__</code>(or other similar Macros).

"macros" (lowercase)


--- a/htdocs/gcc-14/porting_to.html
+++ b/htdocs/gcc-14/porting_to.html

I don't think we need this in porting_to.html as well; the release notes 
are sufficient.


This patch is okay with the changes above. I see this is already 
committed. Can you please make them as follow-up? Or should I?

Thanks,
Gerald
liuhongt Aug. 12, 2024, 2:01 a.m. UTC | #3
> -----Original Message-----
> From: Gerald Pfeifer <gerald@pfeifer.com>
> Sent: Saturday, August 10, 2024 6:33 PM
> To: Liu, Hongtao <hongtao.liu@intel.com>
> Cc: gcc-patches@gcc.gnu.org; crazylht@gmail.com; hjl.tools@gmail.com
> Subject: Re: [PATCH] [x86] Mention _Float16 and __bf16 changes in GCC14.
> 
> On Wed, 31 Jul 2024, liuhongt wrote:
> > +  <li> The <code>_Float16</code> and <code>__bf16</code> type are
> supported
> > +    independent of SSE2. W/o SSE2, these types are storage-only, compiler
> will
> > +    issue an error when they're used in conversion, unary operation,
> > +    binary operation, parameter passing or value return.
> 
> "types" (plural)
> "independently"
> "Without" (spelt out)
> "the compiler"
> 
> And personally I would use an Oxford comma, so "..., or value return".
> 
> > +    instead of <code>__FLT16_MAX__</code>(or other similar Macros).
> 
> "macros" (lowercase)
> 
> 
> --- a/htdocs/gcc-14/porting_to.html
> +++ b/htdocs/gcc-14/porting_to.html
> 
> I don't think we need this in porting_to.html as well; the release notes are
> sufficient.
> 
> 
> This patch is okay with the changes above. I see this is already
> committed. Can you please make them as follow-up? Or should I?
Could you help to refine the words, much thanks for that.
> 
> Thanks,
> Gerald
Sam James Aug. 12, 2024, 9 a.m. UTC | #4
Gerald Pfeifer <gerald@pfeifer.com> writes:

> On Wed, 31 Jul 2024, liuhongt wrote:
>> +  <li> The <code>_Float16</code> and <code>__bf16</code> type are supported
>> +    independent of SSE2. W/o SSE2, these types are storage-only, compiler will
>> +    issue an error when they're used in conversion, unary operation,
>> +    binary operation, parameter passing or value return. 
>
> "types" (plural)
> "independently"
> "Without" (spelt out)
> "the compiler"
>
> And personally I would use an Oxford comma, so "..., or value return".
>
>> +    instead of <code>__FLT16_MAX__</code>(or other similar Macros).
>
> "macros" (lowercase)
>
>
> --- a/htdocs/gcc-14/porting_to.html
> +++ b/htdocs/gcc-14/porting_to.html
>
> I don't think we need this in porting_to.html as well; the release notes 
> are sufficient.

Note that Qt at least did have to be ported. It might be worth keeping
it in there. (The bug was prompted by observed breakage.)
diff mbox series

Patch

diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html
index ca4cae0f..b023a4b9 100644
--- a/htdocs/gcc-14/changes.html
+++ b/htdocs/gcc-14/changes.html
@@ -982,6 +982,13 @@  __asm (".global __flmap_lock"  "\n\t"
     AVX512VP2INTERSECT, AVXVNNI, MOVDIR64B, MOVDIRI, and PREFETCHI ISA
     extensions.
   </li>
+  <li> The <code>_Float16</code> and <code>__bf16</code> type are supported
+    independent of SSE2. W/o SSE2, these types are storage-only, compiler will
+    issue an error when they're used in conversion, unary operation,
+    binary operation, parameter passing or value return. Please use
+    <code>__SSE2__</code> to detect arithmetic support of these types
+    instead of <code>__FLT16_MAX__</code>(or other similar Macros).
+  </li>
 </ul>
 
 <h3 id="mcore">MCore</h3>
diff --git a/htdocs/gcc-14/porting_to.html b/htdocs/gcc-14/porting_to.html
index 3de15d02..b4f87149 100644
--- a/htdocs/gcc-14/porting_to.html
+++ b/htdocs/gcc-14/porting_to.html
@@ -490,6 +490,8 @@  in C23.
 GCC will probably continue to support old-style function definitions
 even once C23 is used as the default language dialect.
 
+
+
 <h2 id="cxx">C++ language issues</h2>
 
 <h3 id="header-dep-changes">Header dependency changes</h3>
@@ -554,6 +556,13 @@  incorrect instruction set by GCC 14.
 <p>The fix in this case is to remember whether <code>pop_options</code> 
 needs to be performed in a new user-defined macro.</p>
 
+<h3 id="x86_fp16_bf16">Type _Float16 and __bf16 are supported independent of SSE2 for IA-32/x86-64</h3>
+<p>W/o SSE2, these types are storage-only, compiler will issue an error when
+  they're used in conversion, unary operation, binary operation, parameter
+  passing or value return. Please use <code>__SSE2__</code> to detect
+  arithmetic support of these types instead of
+  <code>__FLT16_MAX__</code>(or other similar Macros).</p>
+
 <!-- <h2 id="fortran">Fortran language issues</h2> -->
 
 </body>