* i386.c (ix86_expand_move): Allow pushes of memory, offload to memory
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 4 Jan 2000 14:44:03 +0000 (14:44 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 4 Jan 2000 14:44:03 +0000 (14:44 +0000)
commit68c364e6d8983a669302cb5b7fb36aa60ba899c5
tree6e0eb21d8b3748e75a902332e47aa2b50ede898a
parent601ef264f4c7df8d21f02a0b727b642b20f64bb2
* i386.c (ix86_expand_move): Allow pushes of memory, offload to memory
all FP constants for constant->reg moves.
(ix86_split_to_parts): Try to convert memory address into immediate
when available in the constant pool.
* i386.h (PREFERRED_RELOAD_CLASS): Allow CONST_DOUBLE->integer reg
moves.
(LEGITIMATE_CONSTANT_P): Return 1.
* i386.md (pushsf): New splitter to convert constant pool memory
reference to immediate.
(mov?f): Likewise; do not allow CONST_DOUBLE for reg moves before
reload.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31203 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/i386/i386.md