[ARM] PR target/66731 Fix vnmul insn with -frounding-math
commit6cb66519c3fec915e5377e2b71c87bf65564fd9a
authornsz <nsz@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Aug 2015 11:12:00 +0000 (3 11:12 +0000)
committernsz <nsz@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Aug 2015 11:12:00 +0000 (3 11:12 +0000)
tree4134c3cb8212aeb873c25d8f28aaa1d13b4aea52
parentc63a11d6b411bb61819f0612a656f4ff1802c678
[ARM] PR target/66731 Fix vnmul insn with -frounding-math

gcc:

PR target/66731
* config/arm/vfp.md (negmuldf3_vfp): Add new pattern.
(negmulsf3_vfp): Likewise.
(muldf3negdf_vfp): Disable for -frounding-math.
(mulsf3negsf_vfp): Likewise.
* config/arm/arm.c (arm_new_rtx_costs): Fix NEG cost for VNMUL,
fix MULT cost with -frounding-math.

gcc/testsuite:

PR target/66731
* gcc.target/arm/vnmul-1.c: New.
* gcc.target/arm/vnmul-2.c: New.
* gcc.target/arm/vnmul-3.c: New.
* gcc.target/arm/vnmul-4.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@226496 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/vfp.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arm/vnmul-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/vnmul-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/vnmul-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/vnmul-4.c [new file with mode: 0644]