Commit 12213acb by Jakub Jelinek Committed by Jakub Jelinek

re PR tree-optimization/91010 (ICE: Segmentation fault (in location_wrapper_p))

	PR tree-optimization/91010
	* tree-vect-stmts.c (scan_operand_equal_p): If offset1 == offset2,
	return true.  Otherwise, don't call operand_equal_p if offset1 or
	offset2 is NULL and just return false.

	* g++.dg/vect/simd-10.cc: New test.

From-SVN: r272763
parent 08b21992
2019-06-27 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/91010
* tree-vect-stmts.c (scan_operand_equal_p): If offset1 == offset2,
return true. Otherwise, don't call operand_equal_p if offset1 or
offset2 is NULL and just return false.
2019-06-27 Iain Sandoe <iain@sandoe.co.uk>
* config/rs6000/rs6000.c (darwin_rs6000_override_options): Honour
......
2019-06-27 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/91010
* g++.dg/vect/simd-10.cc: New test.
2019-06-27 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/90987
......
// PR tree-optimization/91010
// { dg-do compile }
// { dg-require-effective-target size32plus }
// { dg-additional-options "-fopenmp-simd -fno-tree-forwprop" }
// { dg-additional-options "-mavx" { target avx_runtime } }
// { dg-final { scan-tree-dump-times "vectorized \[1-3] loops" 2 "vect" { target i?86-*-* x86_64-*-* } } }
#include "simd-5.cc"
......@@ -6345,7 +6345,10 @@ scan_operand_equal_p (tree ref1, tree ref2)
return false;
if (maybe_ne (bitsize1, bitsize2))
return false;
if (!operand_equal_p (offset1, offset2, 0))
if (offset1 != offset2
&& (!offset1
|| !offset2
|| !operand_equal_p (offset1, offset2, 0)))
return false;
return true;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment