]> git.ipfire.org Git - thirdparty/gcc.git/commit
[arm] Improvements to negvsi4 and negvdi4.
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 18 Oct 2019 19:05:16 +0000 (19:05 +0000)
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 18 Oct 2019 19:05:16 +0000 (19:05 +0000)
commitf36f54ddf6c9d4a1111e52ef49d9d5e794ed9f3d
treeba93587437a2fc3fbad7787cd93802a22b9ad827
parentfd7e24c1ddb30fadd0043a800213df389e301029
[arm] Improvements to negvsi4 and negvdi4.

The generic expansion code for negv does not try the subv patterns,
but instead emits a sub and a compare separately.  Fortunately, the
patterns can make use of the new subv operations, so just call those.
We can also rewrite this using an iterator to simplify things further.
Finally, we can now make negvdi4 work on Thumb2 as well as Arm.

* config/arm/arm.md (negv<SIDI:mode>3): New expansion rule.
(negvsi3, negvdi3): Delete.
(negdi2_compare): Delete.

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