aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2007-06-05 22:23:58 +0200
committerUros Bizjak <uros@gcc.gnu.org>2007-06-05 22:23:58 +0200
commit1a5f8b894c144cc15f6a63b3b52ba28b5bd4e94f (patch)
treece1cbcfe2ce8ebd946c00cc146db2a72bb8e79b9
parentde8936774aa298f3a2e907702d27b7675a7fe7a2 (diff)
downloadgcc-1a5f8b894c144cc15f6a63b3b52ba28b5bd4e94f.zip
gcc-1a5f8b894c144cc15f6a63b3b52ba28b5bd4e94f.tar.gz
gcc-1a5f8b894c144cc15f6a63b3b52ba28b5bd4e94f.tar.bz2
re PR tree-optimization/32215 (ICE in supportable_narrowing_operation, at tree-vectorizer.c:1907)
PR tree-optimization/32215 * tree-vectorizer.c (supportable_widening_operation): Return false for unsupported FIX_TRUNC_EXPR tree code. (supportable_narrowing_operation): Ditto for FLOAT_EXPR tree code. From-SVN: r125343
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/tree-vectorizer.c11
2 files changed, 18 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index bf664a8..af63916 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2007-06-05 Uros Bizjak <ubizjak@gmail.com>
+
+ PR tree-optimization/32215
+ * tree-vectorizer.c (supportable_widening_operation): Return false
+ for unsupported FIX_TRUNC_EXPR tree code.
+ (supportable_narrowing_operation): Ditto for FLOAT_EXPR tree code.
+
2007-06-06 Nathan Froyd <froydnj@codesourcery.com>
* config/rs6000/rs6000.h (FIXED_SCRATCH): Use r0 as a scratch
diff --git a/gcc/tree-vectorizer.c b/gcc/tree-vectorizer.c
index df884f4..be2d6b3 100644
--- a/gcc/tree-vectorizer.c
+++ b/gcc/tree-vectorizer.c
@@ -1841,6 +1841,12 @@ supportable_widening_operation (enum tree_code code, tree stmt, tree vectype,
}
break;
+ case FIX_TRUNC_EXPR:
+ /* ??? Not yet implemented due to missing VEC_UNPACK_FIX_TRUNC_HI_EXPR/
+ VEC_UNPACK_FIX_TRUNC_LO_EXPR tree codes and optabs used for
+ computing the operation. */
+ return false;
+
default:
gcc_unreachable ();
}
@@ -1903,6 +1909,11 @@ supportable_narrowing_operation (enum tree_code code,
c1 = VEC_PACK_FIX_TRUNC_EXPR;
break;
+ case FLOAT_EXPR:
+ /* ??? Not yet implemented due to missing VEC_PACK_FLOAT_EXPR
+ tree code and optabs used for computing the operation. */
+ return false;
+
default:
gcc_unreachable ();
}