* config/i386/constraints.md (Ym): New constraint.
commitf957796f9fff3d02d92442f9401ae94b2bb6dfde
authorrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 9 Feb 2007 18:17:09 +0000 (9 18:17 +0000)
committerrth <rth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 9 Feb 2007 18:17:09 +0000 (9 18:17 +0000)
treeaeccd61acc2216e7bb90aae7a64a206821b76d0c
parentc6d4f471fef8487f5f4f5a30cd99f4bde182514b
    * config/i386/constraints.md (Ym): New constraint.
        * config/i386/i386.md (movsi_1): Change Y2 to Yi constraints.
        (movdi_1_rex64): Split sse and xmm general register moves from
        memory move alternatives.  Use conditional register constraints.
        (movsf_1, movdf_integer): Likewise.
        (zero_extendsidi2_32, zero_extendsidi2_rex64): Likewise.
        (movdf_integer_rex64): New.
        (pushsf_rex64): Fix output constraints.
        * config/i386/sse.md (sse2_loadld): Split rm alternative, use Yi.
        (sse2_stored): Likewise.
        (sse2_storeq_rex64): New.
        * config/i386/i386.c (x86_inter_unit_moves): Enable for not
        amd and not generic.
        (ix86_secondary_memory_needed): Don't bypass TARGET_INTER_UNIT_MOVES
        for optimize_size.  Remove SF/DFmode hack.

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