OSDN Git Service

2005-11-07 Paolo Bonzini <bonzini@gnu.org>
authorbonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 7 Nov 2005 10:39:36 +0000 (10:39 +0000)
committerbonzini <bonzini@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 7 Nov 2005 10:39:36 +0000 (10:39 +0000)
commit2dbdd8d6d1d11a07c28bdc0c49aadb8e871ffc68
tree91b6e883aabe9991ac9745b208c6eea4bdfad540
parent84086eb09d2bf53295f344f31adf5123f72c173c
2005-11-07  Paolo Bonzini  <bonzini@gnu.org>

PR target/24230

* config/rs6000/rs6000.c (easy_vector_splat_const, easy_vector_same,
gen_easy_vector_constant_add_self): Delete.
(vspltis_constant, easy_altivec_constant, gen_easy_altivec_constant):
New.
(output_vec_const_move): Use gen_easy_altivec_constant.
(rs6000_expand_vector_init): Do not emit a set of a VEC_DUPLICATE.
* config/rs6000/predicates.md (easy_vector_constant): Reorganize tests.
(easy_vector_constant_add_self): Rewritten.
* config/rs6000/rs6000-protos.h (easy_vector_splat_const,
easy_vector_same, gen_easy_vector_constant_add_self): Remove prototype.
(easy_altivec_constant, gen_easy_altivec_constant): Add prototype.

testsuite:
2005-11-07  Paolo Bonzini  <bonzini@gnu.org>

PR target/24230

        * gcc.target/powerpc/altivec-consts.c,
        gcc.target/powerpc/altivec-splat.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@106588 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/rs6000/altivec.md
gcc/config/rs6000/predicates.md
gcc/config/rs6000/rs6000-protos.h
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/altivec-consts.c [new file with mode: 0644]
gcc/testsuite/gcc.target/powerpc/altivec-splat.c [new file with mode: 0644]