https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113630
--- Comment #8 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-13 branch has been updated by Richard Biener <rgue...@gcc.gnu.org>: https://gcc.gnu.org/g:47cd06042237bf2d4f05b8355362bc038f6fa445 commit r13-8693-g47cd06042237bf2d4f05b8355362bc038f6fa445 Author: Richard Biener <rguent...@suse.de> Date: Wed Jan 31 11:28:50 2024 +0100 tree-optimization/113630 - invalid code hoisting The following avoids code hoisting (but also PRE insertion) of expressions that got value-numbered to another one that are not a valid replacement (but still compute the same value). This time because the access path ends in a structure with different size, meaning we consider a related access as not trapping because of the size of the base of the access. PR tree-optimization/113630 * tree-ssa-pre.cc (compute_avail): Avoid registering a reference with a representation with not matching base access size. * gcc.dg/torture/pr113630.c: New testcase. (cherry picked from commit 724b64304ff5c8ac08a913509afd6fde38d7b767)