]> git.ipfire.org Git - thirdparty/gcc.git/commit
gcc:
authorwschmidt <wschmidt@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Feb 2014 01:26:34 +0000 (01:26 +0000)
committerwschmidt <wschmidt@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Feb 2014 01:26:34 +0000 (01:26 +0000)
commit47f833a22e74dfca99b24631ecc707df126a215a
tree088378e522bddf3e0e950b3507891f3e858f48df
parent6c65ab3540cd56a0dcc7cbed4b7e4202e9dd3afa
gcc:

2014-02-02  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000.c (altivec_expand_vec_perm_le): Generalize
for vector types other than V16QImode.
* config/rs6000/altivec.md (altivec_vperm_<mode>): Change to a
define_expand, and call altivec_expand_vec_perm_le when producing
code with little endian element order.
(*altivec_vperm_<mode>_internal): New insn having previous
behavior of altivec_vperm_<mode>.
(altivec_vperm_<mode>_uns): Change to a define_expand, and call
altivec_expand_vec_perm_le when producing code with little endian
element order.
(*altivec_vperm_<mode>_uns_internal): New insn having previous
behavior of altivec_vperm_<mode>_uns.

gcc/testsuite:

2014-02-02  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/vmx/3b-15.c: Remove special handling for little endian.
* gcc.dg/vmx/perm.c: New.
* gcc.dg/vmx/perm-be-order.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@207415 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/rs6000/altivec.md
gcc/config/rs6000/rs6000.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/vmx/3b-15.c
gcc/testsuite/gcc.dg/vmx/perm-be-order.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/vmx/perm.c [new file with mode: 0644]