On January 23, 2016 10:34:46 AM GMT+01:00, Tom de Vries <tom_devr...@mentor.com> wrote: >Hi, > >this patches fixes a 5/6 regression PR69426. > >When compiling the test-case in the patch, the verify_ssa todo check >fails after removing a clobber in eliminate_local_variables_stmt. > >The problem is that the clobber is removed, but the uses of the >corresponding vdef are not changed, and the virtual symbol is not >marked >for renaming. > >[ The same happens in 4.9, but because omp_expand_local is called >before >verify_ssa, the ICE does not happen. In 5.0 and later, we use a >separate >expand_omp_ssa pass. ] > >This patch fixes the problem by replacing the uses of the vdef of the >clobber by the vuse of the clobber. > >The patch uses replace_uses_by, but unlink_vdef_stmt also works, I'm >not >sure which one to use.
Unlink_stmt_vdef please. OK with that change. Richard. >Bootstrapped and reg-tested on x86_64. > >OK for trunk, gcc-5-branch? > >Thanks, >- Tom