[PATCH] D93205: [Flang][OpenMP 4.5] Add semantic check for OpenMP Do Loop Constructs for single directive

Yashaswini Hegde via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 13 06:49:27 PST 2021


yhegde marked an inline comment as done.
yhegde added inline comments.


================
Comment at: flang/lib/Semantics/check-omp-structure.cpp:527
+    if (const parser::Name * name{parser::Unwrap<parser::Name>(ompObject)}) {
+      if (name->symbol == GetContext().loopIV) {
+        context_.Say(name->source,
----------------
kiranchandramohan wrote:
> yhegde wrote:
> > kiranchandramohan wrote:
> > > Does the context have the current directive? If so can we get the loopIV through the directive and avoid the need to store the loopIV field?
> > I suppose I require OpenMPLoopConstruct and DoConstruct to get loopIndex. dirContext_ gives directivesource and llvm::omp::Directive , directiveEnum. 
> Is loopIV cleared somewhere? I believe stale values can cause this check to incorrectly fire.
ok. Resetting the loopIV in the ResetPartialContext function. 


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D93205/new/

https://reviews.llvm.org/D93205



More information about the llvm-commits mailing list