diff options
author | Richard Biener <rguenther@suse.de> | 2017-09-04 14:10:11 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2017-09-04 14:10:11 +0000 |
commit | 11a82e2597c54016345beb99e5339e37851c7d59 (patch) | |
tree | 80cc35078ff2a50b99bcac103fa940b55569c370 /gcc/fold-const.h | |
parent | bc7fe95200214ce70419fde6f965dc88bbd645a6 (diff) | |
download | gcc-11a82e2597c54016345beb99e5339e37851c7d59.zip gcc-11a82e2597c54016345beb99e5339e37851c7d59.tar.gz gcc-11a82e2597c54016345beb99e5339e37851c7d59.tar.bz2 |
re PR c++/82084 (ICE: constructing wstring with -O3)
2017-09-04 Richard Biener <rguenther@suse.de>
PR tree-optimization/82084
* fold-const.h (can_native_encode_string_p): Declare.
* fold-const.c (can_native_encode_string_p): Factor out from ...
(native_encode_string): ... here.
* tree-vect-stmts.c (vectorizable_store): Call it to avoid
vectorizing stores from constants we later cannot handle.
* g++.dg/torture/pr82084.C: New testcase.
From-SVN: r251661
Diffstat (limited to 'gcc/fold-const.h')
-rw-r--r-- | gcc/fold-const.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/fold-const.h b/gcc/fold-const.h index 8380d42..46d5639 100644 --- a/gcc/fold-const.h +++ b/gcc/fold-const.h @@ -28,6 +28,7 @@ extern int folding_initializer; extern int native_encode_expr (const_tree, unsigned char *, int, int off = -1); extern tree native_interpret_expr (tree, const unsigned char *, int); extern bool can_native_encode_type_p (tree); +extern bool can_native_encode_string_p (const_tree); /* Fold constants as much as possible in an expression. Returns the simplified expression. |