aboutsummaryrefslogtreecommitdiff
path: root/libcpp
diff options
context:
space:
mode:
authorDaniel Jacobowitz <dan@codesourcery.com>2009-11-11 14:23:03 +0000
committerDaniel Jacobowitz <drow@gcc.gnu.org>2009-11-11 14:23:03 +0000
commit814a4c3b3548e6fae72992026982d3ce8a186568 (patch)
tree8b82758d87fb4dcc505191cc1b4a840c0e65c2cb /libcpp
parent40f73786e9ae1b4a4fafffaff58a54d79f4a5a1a (diff)
downloadgcc-814a4c3b3548e6fae72992026982d3ce8a186568.zip
gcc-814a4c3b3548e6fae72992026982d3ce8a186568.tar.gz
gcc-814a4c3b3548e6fae72992026982d3ce8a186568.tar.bz2
arm.c (neon_vdup_constant, [...]): New.
gcc/ * config/arm/arm.c (neon_vdup_constant, neon_make_constant): New. (neon_expand_vector_init): Use them. Also handle non-constant vectors with identical elements and vectors with only one non-constant element. (arm_print_operand): Handle 'y' modifier. * config/arm/arm-protos.h (neon_make_constant): Declare. * config/arm/neon.md (neon_vdup_n<mode>): Split into two patterns. Use VX instead of VDQW for the first one. Allow a VFP alternative and V32 modes for the second one. * config/arm/neon.ml (shape_elt): Add Alternatives. (ops): Use Alternatives for vdup lane instructions. * config/arm/neon-testgen.ml (analyze_shape): Handle Alternatives. * config/arm/vec-common.md (mov<mode>): Use neon_make_constant. gcc/testsuite/ * gcc.target/arm/neon: Regenerate generated tests. From-SVN: r154094
Diffstat (limited to 'libcpp')
0 files changed, 0 insertions, 0 deletions