public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/30451]  New: incorrect attributes in *movti_ppc64 of rs6000.md
@ 2007-01-12 20:39 dkwan at transmeta dot com
  2007-01-12 21:28 ` [Bug target/30451] " pinskia at gcc dot gnu dot org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: dkwan at transmeta dot com @ 2007-01-12 20:39 UTC (permalink / raw)
  To: gcc-bugs

I found the following problem in rs6000.md:

(define_insn "*movti_ppc64"
  [(set (match_operand:TI 0 "nonimmediate_operand" "=r,o<>,r")
        (match_operand:TI 1 "input_operand" "r,r,m"))]
  "TARGET_POWERPC64 && (gpc_reg_operand (operands[0], TImode)
   || gpc_reg_operand (operands[1], TImode))"
  "#"
  [(set_attr "type" "*,load,store")])

It appears that the order of the load and store attributes in the set_attr
expression is incorrect. If operand 0 is memory (o<>) and operand 1 is a
register (r), the instruction should be a store, not a load. Similarly, if
operand 0 is a register ("r") and operand 1 memory ("m"), the instruction
should be load, not a store.

I think either the constraint order or the attribute order need to be reversed
to make constraints and attributes match.


-- 
           Summary: incorrect attributes in *movti_ppc64 of rs6000.md
           Product: gcc
           Version: 4.1.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dkwan at transmeta dot com
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: ppu-unknown-lv2


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


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

* [Bug target/30451] incorrect attributes in *movti_ppc64 of rs6000.md
  2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
@ 2007-01-12 21:28 ` pinskia at gcc dot gnu dot org
  2007-01-14  5:21 ` pinskia at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-01-12 21:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2007-01-12 21:28 -------
LV2 target support does not exist in the FSF GCC (yet).


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
  GCC build triplet|x86_64-unknown-linux-gnu    |
   GCC host triplet|x86_64-unknown-linux-gnu    |
 GCC target triplet|ppu-unknown-lv2             |powerpc64-linux-gnu


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


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

* [Bug target/30451] incorrect attributes in *movti_ppc64 of rs6000.md
  2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
  2007-01-12 21:28 ` [Bug target/30451] " pinskia at gcc dot gnu dot org
@ 2007-01-14  5:21 ` pinskia at gcc dot gnu dot org
  2007-01-14  5:47 ` dkwan at transmeta dot com
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-01-14  5:21 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2007-01-14 05:21 -------
I don't see why the attr type matters here as we always split it.  Can you
describe the case where something goes because of attr having the wrong type?


-- 


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


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

* [Bug target/30451] incorrect attributes in *movti_ppc64 of rs6000.md
  2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
  2007-01-12 21:28 ` [Bug target/30451] " pinskia at gcc dot gnu dot org
  2007-01-14  5:21 ` pinskia at gcc dot gnu dot org
@ 2007-01-14  5:47 ` dkwan at transmeta dot com
  2007-03-05  4:56 ` dje at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: dkwan at transmeta dot com @ 2007-01-14  5:47 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from dkwan at transmeta dot com  2007-01-14 05:47 -------
There is additional code for the CELL PPU to adjust the latencies of data and
address operands of integer stores. The code requires accurate load/store
attributes. I guess there is nothing in the main-line gcc that relies on the
load/store attributes being correct so it does not matter in the main line.


-- 


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


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

* [Bug target/30451] incorrect attributes in *movti_ppc64 of rs6000.md
  2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
                   ` (2 preceding siblings ...)
  2007-01-14  5:47 ` dkwan at transmeta dot com
@ 2007-03-05  4:56 ` dje at gcc dot gnu dot org
  2009-03-12  4:45 ` bje at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: dje at gcc dot gnu dot org @ 2007-03-05  4:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from dje at gcc dot gnu dot org  2007-03-05 04:56 -------
Yes, the attributes are in the wrong order.  A patch to correct the attributes
probably can be considered obvious.


-- 

dje at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dje at gcc dot gnu dot org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-03-05 04:56:00
               date|                            |


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


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

* [Bug target/30451] incorrect attributes in *movti_ppc64 of rs6000.md
  2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
                   ` (3 preceding siblings ...)
  2007-03-05  4:56 ` dje at gcc dot gnu dot org
@ 2009-03-12  4:45 ` bje at gcc dot gnu dot org
  2009-03-28 23:27 ` bje at gcc dot gnu dot org
  2009-03-28 23:55 ` bje at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: bje at gcc dot gnu dot org @ 2009-03-12  4:45 UTC (permalink / raw)
  To: gcc-bugs



-- 

bje at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |bje at gcc dot gnu dot org
                   |dot org                     |
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2007-03-05 04:56:00         |2009-03-12 04:44:59
               date|                            |


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


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

* [Bug target/30451] incorrect attributes in *movti_ppc64 of rs6000.md
  2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
                   ` (4 preceding siblings ...)
  2009-03-12  4:45 ` bje at gcc dot gnu dot org
@ 2009-03-28 23:27 ` bje at gcc dot gnu dot org
  2009-03-28 23:55 ` bje at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: bje at gcc dot gnu dot org @ 2009-03-28 23:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from bje at gcc dot gnu dot org  2009-03-28 23:27 -------
Subject: Bug 30451

Author: bje
Date: Sat Mar 28 23:27:14 2009
New Revision: 145213

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=145213
Log:
        PR target/30451
        * config/rs6000/rs6000.md (*movti_ppc64): Correct the order of
        load and store attributes.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/rs6000/rs6000.md


-- 


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


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

* [Bug target/30451] incorrect attributes in *movti_ppc64 of rs6000.md
  2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
                   ` (5 preceding siblings ...)
  2009-03-28 23:27 ` bje at gcc dot gnu dot org
@ 2009-03-28 23:55 ` bje at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: bje at gcc dot gnu dot org @ 2009-03-28 23:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from bje at gcc dot gnu dot org  2009-03-28 23:55 -------
Fixed on mainline.


-- 

bje at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.5.0


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


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

end of thread, other threads:[~2009-03-28 23:55 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-01-12 20:39 [Bug target/30451] New: incorrect attributes in *movti_ppc64 of rs6000.md dkwan at transmeta dot com
2007-01-12 21:28 ` [Bug target/30451] " pinskia at gcc dot gnu dot org
2007-01-14  5:21 ` pinskia at gcc dot gnu dot org
2007-01-14  5:47 ` dkwan at transmeta dot com
2007-03-05  4:56 ` dje at gcc dot gnu dot org
2009-03-12  4:45 ` bje at gcc dot gnu dot org
2009-03-28 23:27 ` bje at gcc dot gnu dot org
2009-03-28 23:55 ` bje at gcc dot gnu dot 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).