jdoerfert added inline comments.
================ Comment at: clang/lib/Sema/SemaOpenMP.cpp:1128 + (A == OMPC_firstprivate && (Data.Attributes == OMPC_lastprivate || + Data.Attributes == OMPC_linear)) || (A == OMPC_lastprivate && Data.Attributes == OMPC_firstprivate) || ---------------- ABataev wrote: > cchen wrote: > > ABataev wrote: > > > What is this change for? > > Since now the variable in step expression has been set as implicit > > firstprivate. > No need to do this, the whole expression must be evaluated before entering > the parallel region. The standard is not clear on this, e.g., what if the expression has a side-effect and the loop has 0 iterations. However, evaluating it once in the beginning seems fine to me, assuming we do not evaluate it later again. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71475/new/ https://reviews.llvm.org/D71475 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits