diff options
author | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-10 14:31:37 +0000 |
---|---|---|
committer | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-05-10 14:31:37 +0000 |
commit | f4a50267b9196603596fb82bb914e9000848cc1a (patch) | |
tree | 23003a727a703aa73b4c09b5ba60eb77c600ebdf /gcc/tree-ssa-reassoc.c | |
parent | 7ec7a88e8e1f3fa1d8934a3e4e0516f0196495e6 (diff) | |
download | gcc-f4a50267b9196603596fb82bb914e9000848cc1a.tar.gz |
* tree-ssa-reassoc.c (undistribute_ops_list): Use create_tmp_reg.
(can_reassociate_p): Use FLOAT_TYPE_P.
* tree-vectorizer.h (vect_is_simple_reduction): Rename to ...
(vect_force_simple_reduction): ... this.
* tree-parloops.c (gather_scalar_reductions): Use
vect_force_simple_reduction.
* tree-vect-loop.c (vect_is_simple_reduction_1): Rename from
vect_is_simple_reduction, add modify argument, if true rewrite
"a-b" into "a+(-b)".
(vect_is_simple_reduction, vect_force_simple_reduction): New
functions.
(vect_analyze_scalar_cycles_1): Use vect_force_simple_reduction.
testsuite/
* gcc.dg/vect/fast-math-vect-reduc-8.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159226 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-reassoc.c')
-rw-r--r-- | gcc/tree-ssa-reassoc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/tree-ssa-reassoc.c b/gcc/tree-ssa-reassoc.c index 6bdb57ec2b2..ae630e55fdb 100644 --- a/gcc/tree-ssa-reassoc.c +++ b/gcc/tree-ssa-reassoc.c @@ -1165,7 +1165,7 @@ undistribute_ops_list (enum tree_code opcode, fprintf (dump_file, "Building ("); print_generic_expr (dump_file, oe1->op, 0); } - tmpvar = create_tmp_var (TREE_TYPE (oe1->op), NULL); + tmpvar = create_tmp_reg (TREE_TYPE (oe1->op), NULL); add_referenced_var (tmpvar); zero_one_operation (&oe1->op, c->oecode, c->op); EXECUTE_IF_SET_IN_SBITMAP (candidates2, first+1, i, sbi0) @@ -1948,7 +1948,7 @@ can_reassociate_p (tree op) tree type = TREE_TYPE (op); if (INTEGRAL_TYPE_P (type) || NON_SAT_FIXED_POINT_TYPE_P (type) - || (flag_associative_math && SCALAR_FLOAT_TYPE_P (type))) + || (flag_associative_math && FLOAT_TYPE_P (type))) return true; return false; } |