[PATCH] Vectorizer TLC

2015-10-07 Thread Richard Biener
This fixes the type of stmt_vec_info_vec and avoids the pointless creation of a loop_vec_info for the inner loop when doing outer loop vectorization. Bootstrapped / tested on x86_64-unknown-linux-gnu, applied. Richard. 2015-10-07 Richard Biener * tree-vectorizer.h (stmt_vec_info_vec

[PATCH] Vectorizer TLC

2015-06-16 Thread Richard Biener
The following makes us create less useless statements (as can be seen from the needed change to recip-vec-sqrtf-avx.c where we now fully unroll one of the loops). Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2015-06-16 Richard Biener * tree-vect-stmts.c (ve

[PATCH] Vectorizer TLC, load permutation handling

2013-04-10 Thread Richard Biener
This splits out load permutation computation from SLP tree building. It also removes the broken support for swapping mismatched operands. If it ever triggers we'll ICE later because: case vect_internal_def: ! if (different_types) ! { ! oprnd0_info = (*opr

[PATCH] Vectorizer TLC, split SLP discovery and cost calculation

2013-04-09 Thread Richard Biener
This splits discovering of a SLP opportunity (vect_build_slp_tree) and calculating the cost of a SLP instance (now vect_analyze_slp_cost). The immediate need for me is to support handling of mismatches in the SLP tree due to commutative operand order mismatch, one more cleanup patch for this reaso

[PATCH] Vectorizer TLC

2013-03-18 Thread Richard Biener
The following is a collection of TLC sitting in my local tree, mostly resulting in less obscure IL after vectorization. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2013-03-18 Richard Biener * tree-vect-loop-manip.c (vect_create_cond_for_alias_checks):

[PATCH] Vectorizer TLC

2012-05-16 Thread Richard Guenther
I noticed a write-only bitmap and some odd CFG hooks initializing code. Removed as follows. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2012-05-16 Richard Guenther * tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Remove set-only bitm