https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84570
cesar at gcc dot gnu.org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |cesar at gcc dot gnu.org --- Comment #1 from cesar at gcc dot gnu.org --- First, variable 'i' is private, so it shouldn't require a param argument. What we really need here is proper data flow analysis during gimplification. That would solve a lot of performance issues, including privatizing uninitialized, privatizing variables only live inside a parallel region, not transferring unused variables, not copying out dead variables, etc. I like the idea of privatizing uninitialized variables, but if I'm not mistaken, that would still require DF information. It looks like that information doesn't become available until the gimple code goes into SSA. As an alternative, I proposed postponing the outlining of omp/acc regions until the SSA information is available. But then that approach would have its own set of problems.