[PATCH] D111115: [OPENMP] Fix assert of "Unable to find base lambda address" from adjustMemberOfForLambdaCaptures.

Alexey Bataev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 5 10:22:55 PDT 2021


ABataev added inline comments.


================
Comment at: clang/lib/CodeGen/CGOpenMPRuntime.cpp:8451-8454
+      ArrayRef<OpenMPMapModifierKind> MapModifiers;
+      ArrayRef<OpenMPMotionModifierKind> MotionModifiers;
+      return getMapTypeBits(
+          I->getSecond(), MapModifiers, MotionModifiers, false,
----------------
No need to create empty ArrayRefs, just pass `llvm::None` instead.


================
Comment at: clang/lib/CodeGen/CGOpenMPRuntime.cpp:8923-8937
+    // Extract map information.
+    for (const auto *C : Dir.getClausesOfKind<OMPMapClause>()) {
+      if (C->getMapType() != OMPC_MAP_to)
+        continue;
+      for (auto L : C->component_lists()) {
+        const ValueDecl *VD = std::get<0>(L);
+        const auto *RD = VD ? VD->getType()
----------------
What if we have `to(lambda)` in data motion directive? What shall we do if there mapping modifiers? Not sure we shall ignore them.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D111115



More information about the cfe-commits mailing list