Compile this:
authorChris Lattner <sabre@nondot.org>
Wed, 1 Mar 2006 05:50:56 +0000 (05:50 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 1 Mar 2006 05:50:56 +0000 (05:50 +0000)
commit5126984b1da4bda0e93961da07e883699f1f2d57
tree282a6a6e3778ffa0bee4990b791b8b0236a2b484
parentc607fa8665942710d0748184bf99a3051dfda3d8
Compile this:

void foo(float a, int *b) { *b = a; }

to this:

_foo:
        fctiwz f0, f1
        stfiwx f0, 0, r4
        blr

instead of this:

_foo:
        fctiwz f0, f1
        stfd f0, -8(r1)
        lwz r2, -4(r1)
        stw r2, 0(r4)
        blr

This implements CodeGen/PowerPC/stfiwx.ll, and also incidentally does the
right thing for GCC bugzilla 26505.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26447 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/PowerPC/PPCISelLowering.cpp
lib/Target/PowerPC/PPCISelLowering.h
lib/Target/PowerPC/PPCInstrInfo.td
lib/Target/PowerPC/PPCSubtarget.cpp
lib/Target/PowerPC/README.txt