tree-optimization/106722 - avoid invalid pointer association in predcom
authorRichard Biener <rguenther@suse.de>
Fri, 9 Sep 2022 10:06:38 +0000 (12:06 +0200)
committerRichard Biener <rguenther@suse.de>
Fri, 9 Sep 2022 12:31:35 +0000 (14:31 +0200)
commita8b0b13da7379feb31950a9d2ad74b98a29c547f
tree5bfbc119e5a4fa89046fdb2cf4e6ac1545b1fdbe
parent26a1f4fcb264d110708483815c8c8d7bb4ff6788
tree-optimization/106722 - avoid invalid pointer association in predcom

When predictive commoning builds a reference for iteration N it
prematurely associates a constant offset into the MEM_REF offset
operand which can be invalid if the base pointer then points
outside of an object which alias-analysis does not consider valid.

PR tree-optimization/106722
* tree-predcom.cc (ref_at_iteration): Do not associate the
constant part of the offset into the MEM_REF offset
operand, across a non-zero offset.

* gcc.dg/torture/pr106892.c: New testcase.
gcc/testsuite/gcc.dg/torture/pr106892.c [new file with mode: 0644]
gcc/tree-predcom.cc