* config/sparc/sparc.c (sparc_emit_set_const32): If outputting a
commit611209d42e5fc628c7a89cee3931d542fa14bf2b
authordavem <davem@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 23 Aug 1998 19:48:11 +0000 (23 19:48 +0000)
committerdavem <davem@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 23 Aug 1998 19:48:11 +0000 (23 19:48 +0000)
tree7cd12ff56963b071a2fa6e0cf4f34e13cd296776
parentcdbd8fa0b0dbe93c6d5ce1f226eb754713634158
* config/sparc/sparc.c (sparc_emit_set_const32): If outputting a
CONST_INT, not a symbolic reference, don't use a HIGH/LO_SUM
sequence, use SET/IOR instead so CSE can see it.
* config/sparc/sparc.md (movhi_const64_special,
movsi_const64_special): New patterns necessitated by that change.
(movhi_high): Remove.
(movhi_lo_sum): Change to match an IOR.
(movdf_insn_sp32): Test TARGET_V9 not TARGET_ARCH64.
(movdf_insn_v9only): New pattern for when V9 but not ARCH64.
(movdf_insn_sp64): Test both TARGET_V9 and TARGET_ARCH64.
(movdf splits): Allow when not V9 or when not ARCH64 and integer
registers are involved.
(snesi_zero_extend split): Remove reload_completed test.
(unnamed plus and minus zero_extend sidi splits): Add it.

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