re PR target/56315 (ARM: Improve use of 64-bit constants in logical operations)
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>
Fri, 7 Jun 2013 13:35:54 +0000 (13:35 +0000)
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>
Fri, 7 Jun 2013 13:35:54 +0000 (13:35 +0000)
commit79678d044b8830a93b9323e14b54eca48a6f457e
tree011f8c6e98d98baf6e4d2487e289d39bb5600254
parent45db6b0d141910c6e8673c6f3a1eca781f1e5fe0
re PR target/56315 (ARM: Improve use of 64-bit constants in logical operations)

gcc/
2013-06-07  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

PR target/56315
* config/arm/arm.md (*xordi3_insn): Change to insn_and_split.
(xordi3): Change operand 2 constraint to arm_xordi_operand.
* config/arm/arm.c (const_ok_for_dimode_op): Handle XOR.
* config/arm/constraints.md (Dg): New constraint.
* config/arm/neon.md (xordi3_neon): Remove.
(neon_veor<mode>): Generate xordi3 instead of xordi3_neon.
* config/arm/predicates.md (arm_xordi_operand): New predicate.

gcc/testsuite
2013-06-07  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

PR target/56315
* gcc.target/arm/xordi3-opt.c: New test.

From-SVN: r199814
gcc/ChangeLog
gcc/config/arm/arm.c
gcc/config/arm/arm.md
gcc/config/arm/constraints.md
gcc/config/arm/neon.md
gcc/config/arm/predicates.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arm/xordi3-opt.c [new file with mode: 0644]