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