------- Comment #2 from gunnar at greyhound-data dot com  2008-05-28 16:28 
-------
(In reply to comment #1)
> It would have been nice to check at least gcc 4.3 (or better current trunk).
> 

I have verified this with the most current GCC source trunk.
GCC 4.4 code snapshot 2008-05-23

The problem is still persistant.
GCC sets up his work registers inside the work loop.



write_32x4:
        link.w %fp,#0
        move.l 16(%fp),%d0
        move.l 8(%fp),%a0
        lsr.l #4,%d0
        jra .L50
.L51:
        moveq #1,%d1
        move.l %d1,(%a0)
        move.l %d1,4(%a0)
        move.l %d1,8(%a0)
        move.l %d1,12(%a0)
        lea (16,%a0),%a0
        subq.l #1,%d0
.L50:
        tst.l %d0
        jne .L51
        unlk %fp
        rts


-- 


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

Reply via email to