llvmbot wrote:

<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-clang-codegen

Author: Abhinav Gaba (abhinavgaba)

<details>
<summary>Changes</summary>



---
Full diff: https://github.com/llvm/llvm-project/pull/160746.diff


1 Files Affected:

- (modified) clang/lib/CodeGen/CGOpenMPRuntime.cpp (+12-13) 


``````````diff
diff --git a/clang/lib/CodeGen/CGOpenMPRuntime.cpp 
b/clang/lib/CodeGen/CGOpenMPRuntime.cpp
index 6c68311daf0ba..c90e1a487daf9 100644
--- a/clang/lib/CodeGen/CGOpenMPRuntime.cpp
+++ b/clang/lib/CodeGen/CGOpenMPRuntime.cpp
@@ -6804,7 +6804,7 @@ class MappableExprsHandler {
   /// they were computed by collectAttachPtrExprInfo(), if they are 
semantically
   /// different.
   struct AttachPtrExprComparator {
-    const MappableExprsHandler *Handler;
+    const MappableExprsHandler *Handler = nullptr;
     // Cache of previous equality comparison results.
     mutable llvm::DenseMap<std::pair<const Expr *, const Expr *>, bool>
         CachedEqualityComparisons;
@@ -6817,8 +6817,8 @@ class MappableExprsHandler {
         return false;
 
       // First, compare by complexity (depth)
-      auto ItLHS = Handler->AttachPtrComponentDepthMap.find(LHS);
-      auto ItRHS = Handler->AttachPtrComponentDepthMap.find(RHS);
+      const auto ItLHS = Handler->AttachPtrComponentDepthMap.find(LHS);
+      const auto ItRHS = Handler->AttachPtrComponentDepthMap.find(RHS);
 
       std::optional<size_t> DepthLHS =
           (ItLHS != Handler->AttachPtrComponentDepthMap.end()) ? ItLHS->second
@@ -6856,7 +6856,7 @@ class MappableExprsHandler {
     /// results, if available, otherwise does a recursive semantic comparison.
     bool areEqual(const Expr *LHS, const Expr *RHS) const {
       // Check cache first for faster lookup
-      auto CachedResultIt = CachedEqualityComparisons.find({LHS, RHS});
+      const auto CachedResultIt = CachedEqualityComparisons.find({LHS, RHS});
       if (CachedResultIt != CachedEqualityComparisons.end())
         return CachedResultIt->second;
 
@@ -7142,7 +7142,7 @@ class MappableExprsHandler {
   const Expr *getAttachPtrExpr(
       OMPClauseMappableExprCommon::MappableExprComponentListRef Components)
       const {
-    auto It = AttachPtrExprMap.find(Components);
+    const auto It = AttachPtrExprMap.find(Components);
     if (It != AttachPtrExprMap.end())
       return It->second;
 
@@ -8478,8 +8478,9 @@ class MappableExprsHandler {
     } else if (auto *ME = dyn_cast<MemberExpr>(PointerExpr)) {
       AttachPtrAddr = CGF.EmitMemberExpr(ME).getAddress();
     } else if (auto *UO = dyn_cast<UnaryOperator>(PointerExpr)) {
-      if (UO->getOpcode() == UO_Deref)
-        AttachPtrAddr = CGF.EmitLValue(UO).getAddress();
+      assert(UO->getOpcode() == UO_Deref &&
+             "Unexpected unary-operator on attach-ptr-expr");
+      AttachPtrAddr = CGF.EmitLValue(UO).getAddress();
     }
     assert(AttachPtrAddr.isValid() &&
            "Failed to get address for attach pointer expression");
@@ -8524,12 +8525,10 @@ class MappableExprsHandler {
 
     // Pointer attachment is needed at map-entering time or for declare
     // mappers.
-    if (!isa<const OMPDeclareMapperDecl *>(CurDir) &&
-        !isOpenMPTargetMapEnteringDirective(
-            cast<const OMPExecutableDirective *>(CurDir)->getDirectiveKind()))
-      return false;
-
-    return true;
+    return isa<const OMPDeclareMapperDecl *>(CurDir) ||
+           isOpenMPTargetMapEnteringDirective(
+               cast<const OMPExecutableDirective *>(CurDir)
+                   ->getDirectiveKind());
   }
 
   /// Computes the attach-ptr expr for \p Components, and updates various maps

``````````

</details>


https://github.com/llvm/llvm-project/pull/160746
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to