This is the mail archive of the gcc-patches@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]

Re: Still can't make stfiwx actually store directly, but...



On 17/05/2005, at 4:59 PM, Zack Weinberg wrote:


gkeating@apple.com (Geoffrey Keating) writes:


This patch has no effect.

It ought to have an effect.  What it should do is make a short chunk
of code like this:

void foo(int *x, double d)
{ *x = d; }

generate code like:

        fctiwz f0,f1
        stfiwx f0,0,r3
        blr

instead of pointlessly generating a temporary, like:

        fctiwz f0,f1
        addi r2,r1,-24
        stfiwx f0,0,r2
        lwz r0,-24(r1)
        stw r0,0(r3)
        blr


Hm, you'd think combine could put it back together again... too late to not allocate the stack slot, but at least you'd save the store and load.

Combine only knows about pseudos, not memory locations, unfortunately.


Attachment: smime.p7s
Description: S/MIME cryptographic signature


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