r181024 - in /trunk/gcc: ChangeLog config/sparc...
davem@gcc.gnu.org
davem@gcc.gnu.org
Sun Nov 6 02:39:00 GMT 2011
Author: davem
Date: Sun Nov 6 02:39:03 2011
New Revision: 181024
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=181024
Log:
More improvements to sparc VIS vec_init code generation.
gcc/
* config/sparc/sparc.md (UNSPEC_SHORT_LOAD): New unspec.
(zero-extend_v8qi_vis, zero_extend_v4hi_vis): New expanders.
(*zero_extend_v8qi_<P:mode>_insn,
*zero_extend_v4hi_<P:mode>_insn): New insns.
* config/sparc/sparc.c (vector_init_move_words,
vector_init_prepare_elts, sparc_expand_vector_init_vis2,
sparc_expand_vector_init_vis1): New functions.
(vector_init_bshuffle): Rewrite to handle more cases and make use
of locs[] array prepared by vector_init_prepare_elts.
(vector_init_fpmerge, vector_init_faligndata): Delete.
(sparc_expand_vector_init): Rewrite using new infrastructure.
gcc/testsuite/
* lib/test-supports.exp
(check_effective_target_ultrasparc_vis2_hw): New proc.
(check_effective_target_ultrasparc_vis3_hw): New proc.
* gcc.target/sparc/vec-init-1.inc: New vector init common code.
* gcc.target/sparc/vec-init-2.inc: Likewise.
* gcc.target/sparc/vec-init-3.inc: Likewise.
* gcc.target/sparc/vec-init-1-vis1.c: New test.
* gcc.target/sparc/vec-init-1-vis2.c: New test.
* gcc.target/sparc/vec-init-1-vis3.c: New test.
* gcc.target/sparc/vec-init-2-vis1.c: New test.
* gcc.target/sparc/vec-init-2-vis2.c: New test.
* gcc.target/sparc/vec-init-2-vis3.c: New test.
* gcc.target/sparc/vec-init-3-vis1.c: New test.
* gcc.target/sparc/vec-init-3-vis2.c: New test.
* gcc.target/sparc/vec-init-3-vis3.c: New test.
Added:
trunk/gcc/testsuite/gcc.target/sparc/vec-init-1-vis1.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-1-vis2.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-1-vis3.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-1.inc
trunk/gcc/testsuite/gcc.target/sparc/vec-init-2-vis1.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-2-vis2.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-2-vis3.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-2.inc
trunk/gcc/testsuite/gcc.target/sparc/vec-init-3-vis1.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-3-vis2.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-3-vis3.c
trunk/gcc/testsuite/gcc.target/sparc/vec-init-3.inc
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sparc/sparc.c
trunk/gcc/config/sparc/sparc.md
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/lib/target-supports.exp
More information about the Gcc-cvs
mailing list