]> git.ipfire.org Git - thirdparty/gcc.git/commit
arm.md (zero_extend<mode>di2): Add extra alternatives for NEON registers.
authorAndrew Stubbs <ams@codesourcery.com>
Mon, 17 Dec 2012 16:39:19 +0000 (16:39 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Mon, 17 Dec 2012 16:39:19 +0000 (16:39 +0000)
commitcdbf870f4e7505ee74fa978d43d08416b68ec459
tree39d8d4f5cab7cfe22cf74f6a34e24eb1e4551bc1
parent55ebe5ab1411369f3043dd817fccddd9606eb6c7
arm.md (zero_extend<mode>di2): Add extra alternatives for NEON registers.

2012-12-17  Andrew Stubbs  <ams@codesourcery.com>
    Ulrich Weigand  <ulrich.weigand@linaro.org>

gcc/
* config/arm/arm.md (zero_extend<mode>di2): Add extra alternatives
for NEON registers.
Add alternative for one-instruction extend-in-place.
(extend<mode>di2): Likewise.
Add constraints for Thumb-mode memory loads.
Prevent extend splitters doing NEON alternatives.
* config/arm/iterators.md (qhs_extenddi_cstr, qhs_zextenddi_cstr):
Adjust constraints to add new alternatives.
* config/arm/neon.md: Add splitters for zero- and sign-extend.

gcc/testsuite/
* gcc.target/arm/neon-extend-1.c: New file.
* gcc.target/arm/neon-extend-2.c: New file.

Co-Authored-By: Ulrich Weigand <ulrich.weigand@linaro.org>
From-SVN: r194558
gcc/ChangeLog
gcc/config/arm/arm.md
gcc/config/arm/iterators.md
gcc/config/arm/neon.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arm/neon-extend-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/neon-extend-2.c [new file with mode: 0644]