[gcc]
commit2d5ee2b9035db2414ae3535db18550c1d90e52fd
authormeissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 19 Mar 2015 22:37:33 +0000 (19 22:37 +0000)
committermeissner <meissner@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 19 Mar 2015 22:37:33 +0000 (19 22:37 +0000)
tree5e637e4c0de219dabaa221d54e60d5940317137c
parent28323099addac7faac9e5ca78a2a43ddcbb1e819
[gcc]
2015-03-19  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/65240
* config/rs6000/predicates.md (easy_fp_constant): Remove special
-ffast-math handling that kept non-0 constants live in the RTL
until reload.  Remove logic testing the number of instructions it
took to create a constant in a GPR that was never used, due to a
test for soft-float earlier.
(memory_fp_constant): Delete, no longer used.

* config/rs6000/rs6000.md (mov<MODE>_hardfloat): Remove
alternatives for loading non-0 constants into GPRs for hard
floating point that is no longer needed due to changes in
easy_fp_constant.  Add support for loading 0.0 into GPRs.
(mov<mode>_hardfloat32): Likewise.
(mov<mode>_hardfloat64): Likewise.
(mov<mode>_64bit_dm): Likewise.
(movtd_64bit_nodm): Likewise.
(pre-reload move FP constant define_split): Delete define_split,
since it is no longer used.
(extenddftf2_internal): Remove GHF constraints that are not valid
for extenddftf2.

[gcc/testsuite]
2015-03-19  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/65240
* gcc/testsuite/g++.dg/pr65240.h: Add tests for PR 65240.
* gcc/testsuite/g++.dg/pr65240-1.C: Likewise.
* gcc/testsuite/g++.dg/pr65240-2.C: Likewise.
* gcc/testsuite/g++.dg/pr65240-3.C: Likewise.
* gcc/testsuite/g++.dg/pr65240-4.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@221524 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/rs6000/predicates.md
gcc/config/rs6000/rs6000.md
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/pr65240-1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/pr65240-2.C [new file with mode: 0644]
gcc/testsuite/g++.dg/pr65240-3.C [new file with mode: 0644]
gcc/testsuite/g++.dg/pr65240-4.C [new file with mode: 0644]
gcc/testsuite/g++.dg/pr65240.h [new file with mode: 0644]