https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94963
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Richard Biener <rgue...@gcc.gnu.org>: https://gcc.gnu.org/g:371905d12259c180efb9b1f1b5716e969feb60f9 commit r11-138-g371905d12259c180efb9b1f1b5716e969feb60f9 Author: Richard Biener <rguent...@suse.de> Date: Wed May 6 09:39:45 2020 +0200 tree-optimization/94963 - avoid bogus uninit warning with store-motion Eliding the load for store-motion causes an uninitialized variable flowing into the loop, conditionally initialized and used. The uninit warning cannot relate the flag used to guard the initialization and use with the actual initialization so the following robustifies the previous approach of marking the conditional store as not to be warned on by instead initializing the variable on loop entry from an uninitialized variable we mark as not to be warned for. 2020-05-06 Richard Biener <rguent...@suse.de> PR tree-optimization/94963 * tree-ssa-loop-im.c (execute_sm_if_changed): Remove no-warning marking of the conditional store. (execute_sm): Instead mark the uninitialized state on loop entry to be not warned about. * gcc.dg/pr94963.c: New testcase.