public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/57150] New: GCC when targeting power7 spills long double using VSX instructions.
@ 2013-05-02 19:36 meissner at gcc dot gnu.org
  2013-05-02 19:37 ` [Bug target/57150] " meissner at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2013-05-02 19:36 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57150

             Bug #: 57150
           Summary: GCC when targeting power7 spills long double using VSX
                    instructions.
    Classification: Unclassified
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: meissner@gcc.gnu.org


Created attachment 30008
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30008
Cut down example to show the problem, using -mcpu=power7 -m64

In the glibc file e_scalbl.c, the compiler is using VSX stxvd2x and lxvd2x
instructions to spill long double, even though only 1/2 of the register is
used.  The compiler should use scalar load/store instructions.


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

* [Bug target/57150] GCC when targeting power7 spills long double using VSX instructions.
  2013-05-02 19:36 [Bug target/57150] New: GCC when targeting power7 spills long double using VSX instructions meissner at gcc dot gnu.org
@ 2013-05-02 19:37 ` meissner at gcc dot gnu.org
  2013-05-02 19:42 ` meissner at gcc dot gnu.org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2013-05-02 19:37 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57150

--- Comment #1 from Michael Meissner <meissner at gcc dot gnu.org> 2013-05-02 19:37:21 UTC ---
Created attachment 30009
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30009
Assembler file


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

* [Bug target/57150] GCC when targeting power7 spills long double using VSX instructions.
  2013-05-02 19:36 [Bug target/57150] New: GCC when targeting power7 spills long double using VSX instructions meissner at gcc dot gnu.org
  2013-05-02 19:37 ` [Bug target/57150] " meissner at gcc dot gnu.org
@ 2013-05-02 19:42 ` meissner at gcc dot gnu.org
  2013-05-02 21:03 ` meissner at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2013-05-02 19:42 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57150

Michael Meissner <meissner at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |powerpc64-gnu-linux
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2013-05-02
               Host|                            |powerp64-gnu-linux
     Ever Confirmed|0                           |1
      Known to fail|                            |4.5.0
              Build|                            |powerpc64-gnu-linux

--- Comment #2 from Michael Meissner <meissner at gcc dot gnu.org> 2013-05-02 19:42:51 UTC ---
This goes back to the original VSX submission for GCC 4.5.

While the code is slow, it does appear to be correct.


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

* [Bug target/57150] GCC when targeting power7 spills long double using VSX instructions.
  2013-05-02 19:36 [Bug target/57150] New: GCC when targeting power7 spills long double using VSX instructions meissner at gcc dot gnu.org
  2013-05-02 19:37 ` [Bug target/57150] " meissner at gcc dot gnu.org
  2013-05-02 19:42 ` meissner at gcc dot gnu.org
@ 2013-05-02 21:03 ` meissner at gcc dot gnu.org
  2013-05-03 19:18 ` meissner at gcc dot gnu.org
  2013-05-07 16:26 ` meissner at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2013-05-02 21:03 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57150

--- Comment #3 from Michael Meissner <meissner at gcc dot gnu.org> 2013-05-02 21:03:08 UTC ---
It shows up due to -fcaller-saves, which creates a V2DF save area.


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

* [Bug target/57150] GCC when targeting power7 spills long double using VSX instructions.
  2013-05-02 19:36 [Bug target/57150] New: GCC when targeting power7 spills long double using VSX instructions meissner at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2013-05-02 21:03 ` meissner at gcc dot gnu.org
@ 2013-05-03 19:18 ` meissner at gcc dot gnu.org
  2013-05-07 16:26 ` meissner at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2013-05-03 19:18 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57150

--- Comment #4 from Michael Meissner <meissner at gcc dot gnu.org> 2013-05-03 19:18:21 UTC ---
Created attachment 30028
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30028
Patch to use scalar modes for TF/TD caller saves.


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

* [Bug target/57150] GCC when targeting power7 spills long double using VSX instructions.
  2013-05-02 19:36 [Bug target/57150] New: GCC when targeting power7 spills long double using VSX instructions meissner at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2013-05-03 19:18 ` meissner at gcc dot gnu.org
@ 2013-05-07 16:26 ` meissner at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: meissner at gcc dot gnu.org @ 2013-05-07 16:26 UTC (permalink / raw)
  To: gcc-bugs


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57150

Michael Meissner <meissner at gcc dot gnu.org> changed:

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

--- Comment #5 from Michael Meissner <meissner at gcc dot gnu.org> 2013-05-07 16:26:02 UTC ---
Fixed in subversion id 198593.


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

end of thread, other threads:[~2013-05-07 16:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-02 19:36 [Bug target/57150] New: GCC when targeting power7 spills long double using VSX instructions meissner at gcc dot gnu.org
2013-05-02 19:37 ` [Bug target/57150] " meissner at gcc dot gnu.org
2013-05-02 19:42 ` meissner at gcc dot gnu.org
2013-05-02 21:03 ` meissner at gcc dot gnu.org
2013-05-03 19:18 ` meissner at gcc dot gnu.org
2013-05-07 16:26 ` meissner 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).