diff options
author | Richard Guenther <rguenther@suse.de> | 2006-07-07 16:30:36 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2006-07-07 16:30:36 +0000 |
commit | bfabddb6c0307307e963bf1388fcad0b8a00ba5c (patch) | |
tree | 6a1baa8ebb8584cddfcf0a2c3567372718ab3933 /gcc/fold-const.c | |
parent | c6d0959c4b87ca27e45d827baf9b53071513a00b (diff) | |
download | gcc-bfabddb6c0307307e963bf1388fcad0b8a00ba5c.zip gcc-bfabddb6c0307307e963bf1388fcad0b8a00ba5c.tar.gz gcc-bfabddb6c0307307e963bf1388fcad0b8a00ba5c.tar.bz2 |
re PR middle-end/28268 (ICE with simple vector operations)
2006-07-07 Richard Guenther <rguenther@suse.de>
PR middle-end/28268
* tree.h (build_one_cst): Declare.
* tree.c (build_one_cst): New function.
* tree-ssa-math-opts.c (get_constant_one): Remove.
(insert_reciprocals): Use build_one_cst.
* fold-const.c (fold_plusminus_mult): Likewise.
* gcc.dg/torture/pr28268.c: New testcase.
From-SVN: r115263
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r-- | gcc/fold-const.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c index 008310c..277bd324 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -6727,7 +6727,7 @@ fold_plusminus_mult_expr (enum tree_code code, tree type, tree arg0, tree arg1) else { arg00 = arg0; - arg01 = fold_convert (type, integer_one_node); + arg01 = build_one_cst (type); } if (TREE_CODE (arg1) == MULT_EXPR) { @@ -6737,7 +6737,7 @@ fold_plusminus_mult_expr (enum tree_code code, tree type, tree arg0, tree arg1) else { arg10 = arg1; - arg11 = fold_convert (type, integer_one_node); + arg11 = build_one_cst (type); } same = NULL_TREE; |