public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power
@ 2020-05-05 14:54 wschmidt at gcc dot gnu.org
  2020-05-05 14:56 ` [Bug target/94954] " wschmidt at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2020-05-05 14:54 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

            Bug ID: 94954
           Summary: Wrong code generation for vec_pack_to_short_fp32
                    builtin for Power
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: wschmidt at gcc dot gnu.org
  Target Milestone: ---

This builtin was mis-implemented.  It is supposed to pack 32-bit floating-point
values into 16-bit floating-point form.  Instead, the values are converted to
unsigned 16-bit integer form.  This should be fixed in all supported releases.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/94954] Wrong code generation for vec_pack_to_short_fp32 builtin for Power
  2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
@ 2020-05-05 14:56 ` wschmidt at gcc dot gnu.org
  2020-06-24 21:12 ` cvs-commit at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2020-05-05 14:56 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

Bill Schmidt <wschmidt at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |11.0
           Keywords|                            |wrong-code
                 CC|                            |segher at gcc dot gnu.org
     Ever confirmed|0                           |1
             Target|                            |powerpc*-*-*
   Last reconfirmed|                            |2020-05-05
             Status|UNCONFIRMED                 |NEW

--- Comment #1 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
Confirmed.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/94954] Wrong code generation for vec_pack_to_short_fp32 builtin for Power
  2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
  2020-05-05 14:56 ` [Bug target/94954] " wschmidt at gcc dot gnu.org
@ 2020-06-24 21:12 ` cvs-commit at gcc dot gnu.org
  2020-07-06 21:53 ` cvs-commit at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-06-24 21:12 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Will Schmidt <willschm@gcc.gnu.org>:

https://gcc.gnu.org/g:58b475a2233630b1737bbdab986f08510d62cd3a

commit r11-1643-g58b475a2233630b1737bbdab986f08510d62cd3a
Author: Will Schmidt <will_schmidt@vnet.ibm.com>
Date:   Wed Jun 24 15:28:24 2020 -0500

    [PATCH, PR target/94954] Fix wrong codegen for vec_pack_to_short_fp32()
builtin

    Hi,
      Fix codegen for builtin vec_pack_to_short_fp32.  This includes adding
    a define_insn for xvcvsphp, and adding a new define_expand for
    convert_4f32_8f16.

    2020-06-24  Will Schmidt  <will_schmidt@vnet.ibm.com>

            PR target/94954

            gcc
            * config/rs6000/altivec.h (vec_pack_to_short_fp32): Update.
            * config/rs6000/altivec.md (UNSPEC_CONVERT_4F32_8F16): New unspec.
            (convert_4f32_8f16): New define_expand
            * config/rs6000/rs6000-builtin.def (convert_4f32_8f16): New builtin
define
            and overload.
            * config/rs6000/rs6000-call.c (P9V_BUILTIN_VEC_CONVERT_4F32_8F16):
New
            overloaded builtin entry.
            * config/rs6000/vsx.md (UNSPEC_VSX_XVCVSPHP): New unspec.
            (vsx_xvcvsphp): New define_insn.

            gcc/testsuite
            * gcc.target/powerpc/builtins-1-p9-runnable.c: Update.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/94954] Wrong code generation for vec_pack_to_short_fp32 builtin for Power
  2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
  2020-05-05 14:56 ` [Bug target/94954] " wschmidt at gcc dot gnu.org
  2020-06-24 21:12 ` cvs-commit at gcc dot gnu.org
@ 2020-07-06 21:53 ` cvs-commit at gcc dot gnu.org
  2020-07-06 22:08 ` cvs-commit at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-07-06 21:53 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-8 branch has been updated by Will Schmidt
<willschm@gcc.gnu.org>:

https://gcc.gnu.org/g:5131f42d776eda08b3309c6596df9104b69987e9

commit r8-10346-g5131f42d776eda08b3309c6596df9104b69987e9
Author: Will Schmidt <will_schmidt@vnet.ibm.com>
Date:   Wed Jul 1 15:04:13 2020 -0500

    [PATCH v2, PR target/94954] Fix wrong codegen for vec_pack_to_short_fp32()
builtin

    PR TARGET/94954

    2020-07-06  Will Schmidt  <will_schmidt@vnet.ibm.com>

    gcc/ChangeLog:
            * config/rs6000/altivec.h (vec_pack_to_short_fp32): Update.
            * config/rs6000/altivec.md (UNSPEC_CONVERT_4F32_8F16): New unspec.
            (convert_4f32_8f16): New define_expand
            * config/rs6000/rs6000-builtin.def (convert_4f32_8f16): New builtin
define
            and overload.
            * config/rs6000/rs6000-c.c (P9V_BUILTIN_VEC_CONVERT_4F32_8F16): New
            overloaded builtin entry.
            * config/rs6000/vsx.md (UNSPEC_VSX_XVCVSPHP): New unspec.
            (vsx_xvcvsphp): New define_insn.

    gcc/testsuite/ChangeLog:

            * gcc.target/powerpc/builtins-1-p9-runnable.c: Update.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/94954] Wrong code generation for vec_pack_to_short_fp32 builtin for Power
  2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2020-07-06 21:53 ` cvs-commit at gcc dot gnu.org
@ 2020-07-06 22:08 ` cvs-commit at gcc dot gnu.org
  2020-07-06 22:11 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-07-06 22:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by Will Schmidt
<willschm@gcc.gnu.org>:

https://gcc.gnu.org/g:972c78d3f65354aa9ea23d5e503835d68881f494

commit r9-8722-g972c78d3f65354aa9ea23d5e503835d68881f494
Author: Will Schmidt <will_schmidt@vnet.ibm.com>
Date:   Wed Jun 24 13:59:34 2020 -0500

    Backport to gcc-9

            [PATCH, PR target/94954] Fix wrong codegen for
vec_pack_to_short_fp32() builtin

    Hi,
      Fix codegen for builtin vec_pack_to_short_fp32.  This includes adding
    a define_insn for xvcvsphp, and adding a new define_expand for
    convert_4f32_8f16.

    [v2]
       Comment on altivec.md "convert_4f32_8f16" enhanced.
       Testsuite builtins-1-p9-runnable.c updated.

    OK for trunk and backports?

    Thanks
    -Will

            PR target/94954

    2020-07-06  Will Schmidt  <will_schmidt@vnet.ibm.com>

    gcc/ChangeLog:

            * config/rs6000/altivec.h (vec_pack_to_short_fp32): Update.
            * config/rs6000/altivec.md (UNSPEC_CONVERT_4F32_8F16): New unspec.
            (convert_4f32_8f16): New define_expand
            * config/rs6000/rs6000-builtin.def (convert_4f32_8f16): New builtin
define
            and overload.
            * config/rs6000/rs6000-c.c (P9V_BUILTIN_VEC_CONVERT_4F32_8F16): New
            overloaded builtin entry.
            * config/rs6000/vsx.md (UNSPEC_VSX_XVCVSPHP): New unspec.
            (vsx_xvcvsphp): New define_insn.

    gcc/testsuite/ChangeLog:

            * gcc.target/powerpc/builtins-1-p9-runnable.c: Update.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/94954] Wrong code generation for vec_pack_to_short_fp32 builtin for Power
  2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2020-07-06 22:08 ` cvs-commit at gcc dot gnu.org
@ 2020-07-06 22:11 ` cvs-commit at gcc dot gnu.org
  2020-07-14 17:19 ` willschm at gcc dot gnu.org
  2020-07-14 17:20 ` willschm at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-07-06 22:11 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Will Schmidt
<willschm@gcc.gnu.org>:

https://gcc.gnu.org/g:2d980dd19d11d7e530922bea6eafad8ff6641df7

commit r10-8430-g2d980dd19d11d7e530922bea6eafad8ff6641df7
Author: Will Schmidt <will_schmidt@vnet.ibm.com>
Date:   Mon Jun 8 10:39:18 2020 -0500

    Backport to gcc-10

    [PATCH, PR target/94954] Fix wrong codegen for vec_pack_to_short_fp32()
builtin

    Hi,
      Fix codegen for builtin vec_pack_to_short_fp32.  This includes adding
      a define_insn for xvcvsphp, and adding a new define_expand for
      convert_4f32_8f16.

    [v2]
      Comment on altivec.md "convert_4f32_8f16" enhanced.
      Testsuite builtins-1-p9-runnable.c updated.

      OK for trunk and backports?

      Thanks
      -Will

    PR target/94954

    gcc/Changelog:

            * config/rs6000/altivec.h (vec_pack_to_short_fp32): Update.
            * config/rs6000/altivec.md (UNSPEC_CONVERT_4F32_8F16): New unspec.
            (convert_4f32_8f16): New define_expand
            * config/rs6000/rs6000-builtin.def (convert_4f32_8f16): New builtin
define
            and overload.
            * config/rs6000/rs6000-call.c (P9V_BUILTIN_VEC_CONVERT_4F32_8F16):
New
            overloaded builtin entry.
            * config/rs6000/vsx.md (UNSPEC_VSX_XVCVSPHP): New unspec.
            (vsx_xvcvsphp): New define_insn.

    gcc/testsuite/ChangeLog:
            * gcc.target/powerpc/builtins-1-p9-runnable.c: Update.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/94954] Wrong code generation for vec_pack_to_short_fp32 builtin for Power
  2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2020-07-06 22:11 ` cvs-commit at gcc dot gnu.org
@ 2020-07-14 17:19 ` willschm at gcc dot gnu.org
  2020-07-14 17:20 ` willschm at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: willschm at gcc dot gnu.org @ 2020-07-14 17:19 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

Will Schmidt <willschm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #6 from Will Schmidt <willschm at gcc dot gnu.org> ---
Should now be fixed in all of the right places.  
closing. 
Thanks

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug target/94954] Wrong code generation for vec_pack_to_short_fp32 builtin for Power
  2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2020-07-14 17:19 ` willschm at gcc dot gnu.org
@ 2020-07-14 17:20 ` willschm at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: willschm at gcc dot gnu.org @ 2020-07-14 17:20 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94954

Will Schmidt <willschm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |CLOSED

--- Comment #7 from Will Schmidt <willschm at gcc dot gnu.org> ---
Fixed, Closing.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-07-14 17:20 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-05 14:54 [Bug target/94954] New: Wrong code generation for vec_pack_to_short_fp32 builtin for Power wschmidt at gcc dot gnu.org
2020-05-05 14:56 ` [Bug target/94954] " wschmidt at gcc dot gnu.org
2020-06-24 21:12 ` cvs-commit at gcc dot gnu.org
2020-07-06 21:53 ` cvs-commit at gcc dot gnu.org
2020-07-06 22:08 ` cvs-commit at gcc dot gnu.org
2020-07-06 22:11 ` cvs-commit at gcc dot gnu.org
2020-07-14 17:19 ` willschm at gcc dot gnu.org
2020-07-14 17:20 ` willschm at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).