summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorsje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-25 20:24:15 +0000
committersje <sje@138bc75d-0d04-0410-961f-82ee72b054a4>2007-07-25 20:24:15 +0000
commit43de460ba3ac48a14c5c4612624861af58095ce8 (patch)
tree7c1ab9dc53b004e991f7754b0bfa1527f4b4f7fb /gcc
parent78d690bb7310f9f114bc7ece9632a4fd5c5fc8cf (diff)
downloadgcc-43de460ba3ac48a14c5c4612624861af58095ce8.tar.gz
PR target/32218
* tree-vect-patterns.c (vect_pattern_recog_1): Check for valid type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@126931 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-vect-patterns.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 0a6bb35696d..861f3475db7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2007-07-25 Steve Ellcey <sje@cup.hp.com>
+ PR target/32218
+ * tree-vect-patterns.c (vect_pattern_recog_1): Check for valid type.
+
+2007-07-25 Steve Ellcey <sje@cup.hp.com>
+
* config/ia64/ia64.h (HARD_REGNO_NREGS): Handle RFmode.
(HARD_REGNO_MODE_OK): Ditto.
(MODES_TIEABLE_P): Ditto.
diff --git a/gcc/tree-vect-patterns.c b/gcc/tree-vect-patterns.c
index 5773344abc5..86d6a421b87 100644
--- a/gcc/tree-vect-patterns.c
+++ b/gcc/tree-vect-patterns.c
@@ -651,8 +651,9 @@ vect_pattern_recog_1 (
|| (icode = optab->handlers[(int) vec_mode].insn_code) ==
CODE_FOR_nothing
|| (type_out
- && (insn_data[icode].operand[0].mode !=
- TYPE_MODE (get_vectype_for_scalar_type (type_out)))))
+ && (!get_vectype_for_scalar_type (type_out)
+ || (insn_data[icode].operand[0].mode !=
+ TYPE_MODE (get_vectype_for_scalar_type (type_out))))))
return;
}