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...


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.

zw


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