https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101373
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- Created attachment 51122 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51122&action=edit patch This is the patch fixing the issue for the C++ testcase (when a fix for PR100409 is applied), it also fixes the Ada testcase to not perform the hoisting with my hack active and probably with your real fix. I've not yet managed to verify that the gnat.dg/opt95.adb testcase works as expected but will do so when the Ada FE is officially fixed. The patch also touches RTL (postreload) PRE as both suffer from the same issue as GIMPLE PRE. At least for the C++ testcase it shows the RTL PRE issue at -Os.