diff options
author | Richard Biener <rguenther@suse.de> | 2017-05-26 07:14:52 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-05-26 07:14:52 +0000 |
commit | f408a6350f28490124ae042207027fa6599af29b (patch) | |
tree | 92d135113a2970dc40ea18f862295f86ab845492 /gcc/tree-vectorizer.c | |
parent | 1f06dc9561e6cc20788f2d10dfda5e0696741d5c (diff) | |
download | gcc-f408a6350f28490124ae042207027fa6599af29b.zip gcc-f408a6350f28490124ae042207027fa6599af29b.tar.gz gcc-f408a6350f28490124ae042207027fa6599af29b.tar.bz2 |
re PR tree-optimization/80844 (OpenMP SIMD doesn't know how to efficiently zero a vector (its stores zeros and reloads))
2017-05-26 Richard Biener <rguenther@suse.de>
PR tree-optimization/80844
* tree-vectorizer.c (adjust_simduid_builtins): Propagate
results.
From-SVN: r248481
Diffstat (limited to 'gcc/tree-vectorizer.c')
-rw-r--r-- | gcc/tree-vectorizer.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/tree-vectorizer.c b/gcc/tree-vectorizer.c index f928dec..1bef2e4 100644 --- a/gcc/tree-vectorizer.c +++ b/gcc/tree-vectorizer.c @@ -229,8 +229,11 @@ adjust_simduid_builtins (hash_table<simduid_to_vf> *htab) default: gcc_unreachable (); } - update_call_from_tree (&i, t); - gsi_next (&i); + tree lhs = gimple_call_lhs (stmt); + if (lhs) + replace_uses_by (lhs, t); + release_defs (stmt); + gsi_remove (&i, true); } } } |