2011-09-02 Richard Guenther <rguenther@suse.de> PR tree-optimization/27460 PR middle-end/29269 * doc/md.texi (vcond): Document. * genopinit.c (optabs): Turn vcond{,u}_optab into a conversion optab with two modes. * optabs.h (enum convert_optab_index): Add COI_vcond, COI_vcondu. (enum direct_optab_index): Remove DOI_vcond, DOI_vcondu. (vcond_optab): Adjust. (vcondu_optab): Likewise. (expand_vec_cond_expr_p): Adjust prototype. * optabs.c (get_vcond_icode): Adjust. (expand_vec_cond_expr_p): Likewise. (expand_vec_cond_expr): Likewise. * tree-vect-stmts.c (vect_is_simple_cond): Return the comparison vector type. (vectorizable_condition): Allow differing types for comparison and result. * config/i386/i386.c (ix86_expand_sse_cmp): Use proper mode for the comparison. * config/i386/sse.md (vcond<mode>): Split to vcond<V_256:mode><VF_256:mode>, vcond<V_128:mode><VF_128:mode>, vcond<V_128:mode><VI124_128:mode> and vcondu<V_128:mode><VI124_128:mode>. (vcondv2di): Change to vcond<VI8F_128:mode>v2di. (vconduv2di): Likewise. * config/arm/neon.md (vcond<mode>): Change to vcond*<mode><mode>. (vcondu<mode>): Likewise. * config/ia64/vect.md (vcond<mode>): Likewise. (vcondu<mode>): Likewise. (vcondv2sf): Likewise. * config/mips/mips-ps-3d.md (vcondv2sf): Likewise. * config/rs6000/paired.md (vcondv2sf): Likewise. * config/rs6000/vector.md (vcond<mode>): Likewise. (vcondu<mode>): Likewise. * config/spu/spu.md (vcond<mode>): Likewise. (vcondu<mode>): Likewise. * gcc.dg/vect/vect-cond-7.c: New testcase. From-SVN: r178480
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
README-interworking | Loading commit data... | |
aout.h | Loading commit data... | |
arm-arches.def | Loading commit data... | |
arm-c.c | Loading commit data... | |
arm-cores.def | Loading commit data... | |
arm-fixed.md | Loading commit data... | |
arm-fpus.def | Loading commit data... | |
arm-generic.md | Loading commit data... | |
arm-ldmstm.ml | Loading commit data... | |
arm-modes.def | Loading commit data... | |
arm-opts.h | Loading commit data... | |
arm-protos.h | Loading commit data... | |
arm-tables.opt | Loading commit data... | |
arm-tune.md | Loading commit data... | |
arm.c | Loading commit data... | |
arm.h | Loading commit data... | |
arm.md | Loading commit data... | |
arm.opt | Loading commit data... | |
arm1020e.md | Loading commit data... | |
arm1026ejs.md | Loading commit data... | |
arm1136jfs.md | Loading commit data... | |
arm926ejs.md | Loading commit data... | |
arm_neon.h | Loading commit data... | |
bpabi-v6m.S | Loading commit data... | |
bpabi.S | Loading commit data... | |
bpabi.c | Loading commit data... | |
bpabi.h | Loading commit data... | |
cirrus.md | Loading commit data... | |
coff.h | Loading commit data... | |
constraints.md | Loading commit data... | |
cortex-a5.md | Loading commit data... | |
cortex-a8-neon.md | Loading commit data... | |
cortex-a8.md | Loading commit data... | |
cortex-a9-neon.md | Loading commit data... | |
cortex-a9.md | Loading commit data... | |
cortex-m4-fpu.md | Loading commit data... | |
cortex-m4.md | Loading commit data... | |
cortex-r4.md | Loading commit data... | |
cortex-r4f.md | Loading commit data... | |
crti.asm | Loading commit data... | |
crtn.asm | Loading commit data... | |
ecos-elf.h | Loading commit data... | |
elf.h | Loading commit data... | |
fa526.md | Loading commit data... | |
fa606te.md | Loading commit data... | |
fa626te.md | Loading commit data... | |
fa726te.md | Loading commit data... | |
fmp626.md | Loading commit data... | |
fp16.c | Loading commit data... | |
fpa.md | Loading commit data... | |
freebsd.h | Loading commit data... | |
genopt.sh | Loading commit data... | |
gentune.sh | Loading commit data... | |
ieee754-df.S | Loading commit data... | |
ieee754-sf.S | Loading commit data... | |
iterators.md | Loading commit data... | |
iwmmxt.md | Loading commit data... | |
ldmstm.md | Loading commit data... | |
lib1funcs.asm | Loading commit data... | |
libgcc-bpabi.ver | Loading commit data... | |
linux-atomic.c | Loading commit data... | |
linux-eabi.h | Loading commit data... | |
linux-elf.h | Loading commit data... | |
linux-gas.h | Loading commit data... | |
mmintrin.h | Loading commit data... | |
neon-docgen.ml | Loading commit data... | |
neon-gen.ml | Loading commit data... | |
neon-schedgen.ml | Loading commit data... | |
neon-testgen.ml | Loading commit data... | |
neon.md | Loading commit data... | |
neon.ml | Loading commit data... | |
netbsd-elf.h | Loading commit data... | |
pe.c | Loading commit data... | |
pe.h | Loading commit data... | |
pe.opt | Loading commit data... | |
predicates.md | Loading commit data... | |
rtems-elf.h | Loading commit data... | |
semi.h | Loading commit data... | |
symbian.h | Loading commit data... | |
sync.md | Loading commit data... | |
t-arm | Loading commit data... | |
t-arm-elf | Loading commit data... | |
t-bpabi | Loading commit data... | |
t-linux | Loading commit data... | |
t-linux-androideabi | Loading commit data... | |
t-linux-eabi | Loading commit data... | |
t-netbsd | Loading commit data... | |
t-rtems | Loading commit data... | |
t-strongarm-elf | Loading commit data... | |
t-symbian | Loading commit data... | |
t-vxworks | Loading commit data... | |
t-wince-pe | Loading commit data... | |
thumb2.md | Loading commit data... | |
uclinux-eabi.h | Loading commit data... | |
uclinux-elf.h | Loading commit data... | |
unaligned-funcs.c | Loading commit data... | |
unknown-elf.h | Loading commit data... | |
vec-common.md | Loading commit data... | |
vfp.md | Loading commit data... | |
vfp11.md | Loading commit data... | |
vxworks.h | Loading commit data... | |
vxworks.opt | Loading commit data... | |
wince-pe.h | Loading commit data... |