One xform performed by LegalizeDAG is transformation of "store of fp" to "store of...
authorChris Lattner <sabre@nondot.org>
Mon, 15 Oct 2007 05:46:06 +0000 (05:46 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 15 Oct 2007 05:46:06 +0000 (05:46 +0000)
commit3cb9351e8a3691ee8cad6960601c6e3d4b293352
tree6e2a168e9acb88ca41f652bfc283aa57e1603d0d
parent3cab1c72b54cceaf2a4275dabf1b4160765820fc
One xform performed by LegalizeDAG is transformation of "store of fp" to "store of int".
Make two changes:
1) only xform "store of f32" if i32 is a legal type for the target.
2) only xform "store of f64" if either i64 or i32 are legal for the target.
3) if i64 isn't legal, manually lower to 2 stores of i32 instead of letting a
   later pass of legalize do it.  This is ugly, but helps future changes I'm
   about to commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42980 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/SelectionDAG/LegalizeDAG.cpp