This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug optimization/11683] SH Optimizer creates incorrect code


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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


pinskia at physics dot uc dot edu changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|critical                    |normal
             Status|UNCONFIRMED                 |WAITING
           Keywords|                            |wrong-code
           Priority|P1                          |P2
   Target Milestone|3.4                         |---


------- Additional Comments From pinskia at physics dot uc dot edu  2003-07-27 13:33 -------
On the mainline (20030718) and in 3.3.1 (20030714), gcc produces code where it looks 
like it does not clober used registers.
mainline:
.L2:
        mov.w   .L5,r1
        add     r14,r1
        mov.l   @(12,r1),r2
        mov.w   .L6,r0
        mov.l   @(16,r1),r1
        sub     r1,r2
        mov.l   r2,@(r0,r14)
        mov     r2,r4
        mov.l   .L7,r2
        jsr     @r2
3.3.1:
.L5:
         

        mov.w   .L6,r1
        add     r14,r1
        mov.l   @(12,r1),r2
        mov.w   .L7,r0
        mov.l   @(16,r1),r1
        sub     r1,r2
        mov.l   r2,@(r0,r14)
        mov     r2,r4
        mov.l   .L8,r2
        jsr     @r2

Can you try 3.3 or a snapshot of gcc to see if it is fixed for you?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]