From 264d951ae8c99ea72633487dc3404e8d2a4a02d8 Mon Sep 17 00:00:00 2001 From: Ilya Enkovich Date: Wed, 29 Jun 2016 12:26:40 +0000 Subject: re PR tree-optimization/71655 (GCC trunk ICE on westmere target) gcc/ PR tree-optimization/71655 * tree-vect-stmts.c (vectorizable_comparison): Swap definition types when swapping operands. gcc/testsuite/ PR tree-optimization/71655 * g++.dg/pr71655.C: New test. From-SVN: r237846 --- gcc/tree-vect-stmts.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'gcc/tree-vect-stmts.c') diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c index 5c65502..c41550d 100644 --- a/gcc/tree-vect-stmts.c +++ b/gcc/tree-vect-stmts.c @@ -7858,12 +7858,14 @@ vectorizable_comparison (gimple *stmt, gimple_stmt_iterator *gsi, bitop1 = BIT_NOT_EXPR; bitop2 = BIT_AND_EXPR; std::swap (rhs1, rhs2); + std::swap (dts[0], dts[1]); } else if (code == LE_EXPR) { bitop1 = BIT_NOT_EXPR; bitop2 = BIT_IOR_EXPR; std::swap (rhs1, rhs2); + std::swap (dts[0], dts[1]); } else { -- cgit v1.1