Author: dpalermo
Date: 2025-11-21T20:57:27-06:00
New Revision: cefbc487d482c607b3292d4356f2eeac8783c719

URL: 
https://github.com/llvm/llvm-project/commit/cefbc487d482c607b3292d4356f2eeac8783c719
DIFF: 
https://github.com/llvm/llvm-project/commit/cefbc487d482c607b3292d4356f2eeac8783c719.diff

LOG: Revert "[OpenMP] Fix firstprivate pointer handling in target regions 
(#167879)"

This reverts commit 622f72f4bef8b177e1e4f318465260fbdb7711ef.

Added: 
    

Modified: 
    clang/lib/CodeGen/CGOpenMPRuntime.cpp
    clang/test/OpenMP/target_codegen.cpp
    clang/test/OpenMP/target_defaultmap_codegen_01.cpp
    clang/test/OpenMP/target_depend_codegen.cpp
    clang/test/OpenMP/target_map_codegen_01.cpp
    clang/test/OpenMP/target_map_codegen_09.cpp
    clang/test/OpenMP/target_map_codegen_10.cpp
    clang/test/OpenMP/target_map_codegen_26.cpp
    clang/test/OpenMP/target_parallel_depend_codegen.cpp
    clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    clang/test/OpenMP/target_simd_depend_codegen.cpp
    clang/test/OpenMP/target_teams_depend_codegen.cpp
    clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    
clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp

Removed: 
    clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp


################################################################################
diff  --git a/clang/lib/CodeGen/CGOpenMPRuntime.cpp 
b/clang/lib/CodeGen/CGOpenMPRuntime.cpp
index 65a7daca9fcf1..a8255ac74cfcf 100644
--- a/clang/lib/CodeGen/CGOpenMPRuntime.cpp
+++ b/clang/lib/CodeGen/CGOpenMPRuntime.cpp
@@ -28,7 +28,6 @@
 #include "clang/Basic/SourceManager.h"
 #include "clang/CodeGen/ConstantInitBuilder.h"
 #include "llvm/ADT/ArrayRef.h"
-#include "llvm/ADT/SmallSet.h"
 #include "llvm/ADT/SmallVector.h"
 #include "llvm/ADT/StringExtras.h"
 #include "llvm/Bitcode/BitcodeReader.h"
@@ -7212,9 +7211,6 @@ class MappableExprsHandler {
   /// firstprivate, false otherwise.
   llvm::DenseMap<CanonicalDeclPtr<const VarDecl>, bool> FirstPrivateDecls;
 
-  /// Set of defaultmap clause kinds that use firstprivate behavior.
-  llvm::SmallSet<OpenMPDefaultmapClauseKind, 4> DefaultmapFirstprivateKinds;
-
   /// Map between device pointer declarations and their expression components.
   /// The key value for declarations in 'this' is null.
   llvm::DenseMap<
@@ -8993,10 +8989,6 @@ class MappableExprsHandler {
           FirstPrivateDecls.try_emplace(VD, /*Implicit=*/true);
       }
     }
-    // Extract defaultmap clause information.
-    for (const auto *C : Dir.getClausesOfKind<OMPDefaultmapClause>())
-      if (C->getDefaultmapModifier() == OMPC_DEFAULTMAP_MODIFIER_firstprivate)
-        DefaultmapFirstprivateKinds.insert(C->getDefaultmapKind());
     // Extract device pointer clause information.
     for (const auto *C : Dir.getClausesOfKind<OMPIsDevicePtrClause>())
       for (auto L : C->component_lists())
@@ -9574,35 +9566,6 @@ class MappableExprsHandler {
     }
   }
 
-  /// Check if a variable should be treated as firstprivate due to explicit
-  /// firstprivate clause or defaultmap(firstprivate:...).
-  bool isEffectivelyFirstprivate(const VarDecl *VD, QualType Type) const {
-    // Check explicit firstprivate clauses
-    if (FirstPrivateDecls.count(VD))
-      return true;
-
-    // Check defaultmap(firstprivate:scalar) for scalar types
-    if (DefaultmapFirstprivateKinds.count(OMPC_DEFAULTMAP_scalar)) {
-      if (Type->isScalarType())
-        return true;
-    }
-
-    // Check defaultmap(firstprivate:pointer) for pointer types
-    if (DefaultmapFirstprivateKinds.count(OMPC_DEFAULTMAP_pointer)) {
-      if (Type->isAnyPointerType())
-        return true;
-    }
-
-    // Check defaultmap(firstprivate:aggregate) for aggregate types
-    if (DefaultmapFirstprivateKinds.count(OMPC_DEFAULTMAP_aggregate)) {
-      if (Type->isAggregateType())
-        return true;
-    }
-
-    // Check defaultmap(firstprivate:all) for all types
-    return DefaultmapFirstprivateKinds.count(OMPC_DEFAULTMAP_all);
-  }
-
   /// Generate the default map information for a given capture \a CI,
   /// record field declaration \a RI and captured value \a CV.
   void generateDefaultMapInfo(const CapturedStmt::Capture &CI,
@@ -9630,9 +9593,6 @@ class MappableExprsHandler {
       CombinedInfo.DevicePtrDecls.push_back(nullptr);
       CombinedInfo.DevicePointers.push_back(DeviceInfoTy::None);
       CombinedInfo.Pointers.push_back(CV);
-      bool IsFirstprivate =
-          isEffectivelyFirstprivate(VD, RI.getType().getNonReferenceType());
-
       if (!RI.getType()->isAnyPointerType()) {
         // We have to signal to the runtime captures passed by value that are
         // not pointers.
@@ -9640,13 +9600,6 @@ class MappableExprsHandler {
             OpenMPOffloadMappingFlags::OMP_MAP_LITERAL);
         CombinedInfo.Sizes.push_back(CGF.Builder.CreateIntCast(
             CGF.getTypeSize(RI.getType()), CGF.Int64Ty, /*isSigned=*/true));
-      } else if (IsFirstprivate) {
-        // Firstprivate pointers should be passed by value (as literals)
-        // without performing a present table lookup at runtime.
-        CombinedInfo.Types.push_back(
-            OpenMPOffloadMappingFlags::OMP_MAP_LITERAL);
-        // Use zero size for pointer literals (just passing the pointer value)
-        
CombinedInfo.Sizes.push_back(llvm::Constant::getNullValue(CGF.Int64Ty));
       } else {
         // Pointers are implicitly mapped with a zero size and no flags
         // (other than first map that is added for all implicit maps).
@@ -9660,31 +9613,26 @@ class MappableExprsHandler {
       assert(CI.capturesVariable() && "Expected captured reference.");
       const auto *PtrTy = cast<ReferenceType>(RI.getType().getTypePtr());
       QualType ElementType = PtrTy->getPointeeType();
+      CombinedInfo.Sizes.push_back(CGF.Builder.CreateIntCast(
+          CGF.getTypeSize(ElementType), CGF.Int64Ty, /*isSigned=*/true));
+      // The default map type for a scalar/complex type is 'to' because by
+      // default the value doesn't have to be retrieved. For an aggregate
+      // type, the default is 'tofrom'.
+      CombinedInfo.Types.push_back(getMapModifiersForPrivateClauses(CI));
       const VarDecl *VD = CI.getCapturedVar();
-      bool IsFirstprivate = isEffectivelyFirstprivate(VD, ElementType);
+      auto I = FirstPrivateDecls.find(VD);
       CombinedInfo.Exprs.push_back(VD->getCanonicalDecl());
       CombinedInfo.BasePointers.push_back(CV);
       CombinedInfo.DevicePtrDecls.push_back(nullptr);
       CombinedInfo.DevicePointers.push_back(DeviceInfoTy::None);
-
-      // For firstprivate pointers, pass by value instead of dereferencing
-      if (IsFirstprivate && ElementType->isAnyPointerType()) {
-        // Treat as a literal value (pass the pointer value itself)
-        CombinedInfo.Pointers.push_back(CV);
-        // Use zero size for pointer literals
-        
CombinedInfo.Sizes.push_back(llvm::Constant::getNullValue(CGF.Int64Ty));
-        CombinedInfo.Types.push_back(
-            OpenMPOffloadMappingFlags::OMP_MAP_LITERAL);
+      if (I != FirstPrivateDecls.end() && ElementType->isAnyPointerType()) {
+        Address PtrAddr = CGF.EmitLoadOfReference(CGF.MakeAddrLValue(
+            CV, ElementType, CGF.getContext().getDeclAlign(VD),
+            AlignmentSource::Decl));
+        CombinedInfo.Pointers.push_back(PtrAddr.emitRawPointer(CGF));
       } else {
-        CombinedInfo.Sizes.push_back(CGF.Builder.CreateIntCast(
-            CGF.getTypeSize(ElementType), CGF.Int64Ty, /*isSigned=*/true));
-        // The default map type for a scalar/complex type is 'to' because by
-        // default the value doesn't have to be retrieved. For an aggregate
-        // type, the default is 'tofrom'.
-        CombinedInfo.Types.push_back(getMapModifiersForPrivateClauses(CI));
         CombinedInfo.Pointers.push_back(CV);
       }
-      auto I = FirstPrivateDecls.find(VD);
       if (I != FirstPrivateDecls.end())
         IsImplicit = I->getSecond();
     }

diff  --git a/clang/test/OpenMP/target_codegen.cpp 
b/clang/test/OpenMP/target_codegen.cpp
index d2c0004204016..ff126fbe4d02c 100644
--- a/clang/test/OpenMP/target_codegen.cpp
+++ b/clang/test/OpenMP/target_codegen.cpp
@@ -78,7 +78,7 @@
 // code and have mapped arguments, and only 6 have all-constant map sizes.
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: [[SIZET2:@.+]] = private unnamed_addr constant [1 x i{{32|64}}] 
[i64 2]
 // CHECK-DAG: [[MAPT2:@.+]] = private unnamed_addr constant [1 x i64] [i64 800]
 // CHECK-DAG: [[SIZET3:@.+]] = private unnamed_addr constant [2 x i64] [i64 4, 
i64 2]

diff  --git a/clang/test/OpenMP/target_defaultmap_codegen_01.cpp 
b/clang/test/OpenMP/target_defaultmap_codegen_01.cpp
index 652794e6b9d9e..0936aa08e21e7 100644
--- a/clang/test/OpenMP/target_defaultmap_codegen_01.cpp
+++ b/clang/test/OpenMP/target_defaultmap_codegen_01.cpp
@@ -735,7 +735,7 @@ void explicit_maps_single (){
 
 // CK14: [[SIZE09:@.+]] = private {{.*}}constant [1 x i64] zeroinitializer
 // Map types: OMP_MAP_TARGET_PARAM | OMP_MAP_IMPLICIT = 544
-// CK14: [[MTYPE09:@.+]] = private {{.*}}constant [1 x i64] [i64 800]
+// CK14: [[MTYPE09:@.+]] = private {{.*}}constant [1 x i64] [i64 544]
 
 // CK14-LABEL: explicit_maps_single{{.*}}(
 void explicit_maps_single (){
@@ -1235,7 +1235,7 @@ void implicit_maps_struct (int a){
 
 // CK22-DAG: [[SIZES:@.+]] = {{.+}}constant [1 x i64] zeroinitializer
 // Map types: OMP_MAP_TARGET_PARAM | OMP_MAP_IMPLICIT = 544
-// CK22-DAG: [[TYPES:@.+]] = {{.+}}constant [1 x i64] [i64 800]
+// CK22-DAG: [[TYPES:@.+]] = {{.+}}constant [1 x i64] [i64 544]
 
 // CK22-LABEL: implicit_maps_pointer{{.*}}(
 void implicit_maps_pointer (){

diff  --git a/clang/test/OpenMP/target_depend_codegen.cpp 
b/clang/test/OpenMP/target_depend_codegen.cpp
index b9c30f3e73dd7..73ffa120452c1 100644
--- a/clang/test/OpenMP/target_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [3 x i64] [i64 0, 
i64 4, i64 {{16|12}}]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [3 x i64] [i64 800, 
i64 800, i64 3]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [3 x i64] [i64 544, 
i64 800, i64 3]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git a/clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp 
b/clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp
deleted file mode 100644
index 326bc812d7d33..0000000000000
--- a/clang/test/OpenMP/target_firstprivate_pointer_codegen.cpp
+++ /dev/null
@@ -1,169 +0,0 @@
-// RUN: %clang_cc1 -verify -fopenmp -fopenmp-targets=powerpc64le-ibm-linux-gnu 
-x c++ -triple powerpc64le-unknown-unknown -emit-llvm %s -o - | FileCheck %s
-// RUN: %clang_cc1 -fopenmp -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ 
-std=c++11 -triple powerpc64le-unknown-unknown -emit-pch -o %t %s
-// RUN: %clang_cc1 -fopenmp -fopenmp-targets=powerpc64le-ibm-linux-gnu -x c++ 
-triple powerpc64le-unknown-unknown -std=c++11 -include-pch %t -verify %s 
-emit-llvm -o - | FileCheck %s
-// expected-no-diagnostics
-
-#ifndef HEADER
-#define HEADER
-
-/// ========================================================================
-/// Test: Firstprivate pointer handling in OpenMP target regions
-/// ========================================================================
-///
-/// This test verifies that pointers with firstprivate semantics get the
-/// OMP_MAP_LITERAL flag, enabling the runtime to pass pointer values directly
-/// without performing present table lookups.
-///
-/// Map type values:
-///   288 = OMP_MAP_TARGET_PARAM (32) + OMP_MAP_LITERAL (256)
-///         Used for explicit firstprivate(ptr)
-///
-///   800 = OMP_MAP_TARGET_PARAM (32) + OMP_MAP_LITERAL (256) + OMP_MAP_IS_PTR 
(512)
-///         Used for implicit firstprivate pointers (e.g., from defaultmap 
clauses)
-///         Note: 512 is OMP_MAP_IS_PTR, not IMPLICIT. Implicitness is tracked 
separately.
-///
-///   544 = OMP_MAP_TARGET_PARAM (32) + OMP_MAP_IS_PTR (512)
-///         Incorrect behavior - missing LITERAL flag, causes runtime present 
table lookup
-///
-
-///==========================================================================
-/// Test 1: Explicit firstprivate(pointer) → map type 288
-///==========================================================================
-
-// CHECK-DAG: @.offload_maptypes{{[^.]*}} = private unnamed_addr constant [1 x 
i64] [i64 288]
-// CHECK-DAG: @.offload_sizes{{[^.]*}} = private unnamed_addr constant [1 x 
i64] zeroinitializer
-
-void test1_explicit_firstprivate() {
-  double *ptr = nullptr;
-  
-  // Explicit firstprivate should generate map type 288
-  // (TARGET_PARAM | LITERAL, no IS_PTR flag for explicit clauses)
-  #pragma omp target firstprivate(ptr)
-  {
-    if (ptr) ptr[0] = 1.0;
-  }
-}
-
-///==========================================================================
-/// Test 2: defaultmap(firstprivate:pointer) → map type 800
-///==========================================================================
-
-// CHECK-DAG: @.offload_maptypes{{.*}} = private unnamed_addr constant [1 x 
i64] [i64 800]
-// CHECK-DAG: @.offload_sizes{{.*}} = private unnamed_addr constant [1 x i64] 
zeroinitializer
-
-void test2_defaultmap_firstprivate_pointer() {
-  double *ptr = nullptr;
-  
-  // defaultmap(firstprivate:pointer) creates implicit firstprivate
-  // Should generate map type 800 (TARGET_PARAM | LITERAL | IS_PTR)
-  #pragma omp target defaultmap(firstprivate:pointer)
-  {
-    if (ptr) ptr[0] = 2.0;
-  }
-}
-
-///==========================================================================
-/// Test 3: defaultmap(firstprivate:scalar) with double → map type 800
-///==========================================================================
-
-// CHECK-DAG: @.offload_maptypes{{.*}} = private unnamed_addr constant [1 x 
i64] [i64 800]
-
-void test3_defaultmap_scalar_double() {
-  double d = 3.0;
-  
-  // OpenMP's "scalar" category excludes pointers but includes arithmetic types
-  // Double gets implicit firstprivate → map type 800
-  #pragma omp target defaultmap(firstprivate:scalar)
-  {
-    d += 1.0;
-  }
-}
-
-///==========================================================================
-/// Test 4: Pointer with defaultmap(firstprivate:scalar) → map type 800
-///==========================================================================
-
-// CHECK-DAG: @.offload_maptypes{{.*}} = private unnamed_addr constant [1 x 
i64] [i64 800]
-// CHECK-DAG: @.offload_sizes{{.*}} = private unnamed_addr constant [1 x i64] 
zeroinitializer
-
-void test4_pointer_with_scalar_defaultmap() {
-  double *ptr = nullptr;
-  
-  // Note: defaultmap(firstprivate:scalar) does NOT apply to pointers (scalar 
excludes pointers).
-  // However, the pointer still gets 800 because in OpenMP 5.0+, pointers 
without explicit
-  // data-sharing attributes are implicitly firstprivate and lowered as 
IS_PTR|LITERAL|TARGET_PARAM.
-  // This is the default pointer behavior, NOT due to the scalar defaultmap.
-  #pragma omp target defaultmap(firstprivate:scalar)
-  {
-    if (ptr) ptr[0] = 4.0;
-  }
-}
-
-///==========================================================================
-/// Test 5: Multiple pointers with explicit firstprivate → all get 288
-///==========================================================================
-
-// CHECK-DAG: @.offload_maptypes{{.*}} = private unnamed_addr constant [3 x 
i64] [i64 288, i64 288, i64 288]
-// CHECK-DAG: @.offload_sizes{{.*}} = private unnamed_addr constant [3 x i64] 
zeroinitializer
-
-void test5_multiple_firstprivate() {
-  int *a = nullptr;
-  float *b = nullptr;
-  double *c = nullptr;
-  
-  // All explicit firstprivate pointers get map type 288
-  #pragma omp target firstprivate(a, b, c)
-  {
-    if (a) a[0] = 6;
-    if (b) b[0] = 7.0f;
-    if (c) c[0] = 8.0;
-  }
-}
-
-///==========================================================================
-/// Test 6: Pointer to const with firstprivate → map type 288
-///==========================================================================
-
-// CHECK-DAG: @.offload_maptypes{{.*}} = private unnamed_addr constant [1 x 
i64] [i64 288]
-// CHECK-DAG: @.offload_sizes{{.*}} = private unnamed_addr constant [1 x i64] 
zeroinitializer
-
-void test6_const_pointer() {
-  const double *const_ptr = nullptr;
-  
-  // Const pointer with explicit firstprivate → 288
-  #pragma omp target firstprivate(const_ptr)
-  {
-    if (const_ptr) {
-      double val = const_ptr[0];
-      (void)val;
-    }
-  }
-}
-
-///==========================================================================
-/// Test 7: Pointer-to-pointer with firstprivate → map type 288
-///==========================================================================
-
-// CHECK-DAG: @.offload_maptypes{{.*}} = private unnamed_addr constant [1 x 
i64] [i64 288]
-// CHECK-DAG: @.offload_sizes{{.*}} = private unnamed_addr constant [1 x i64] 
zeroinitializer
-
-void test7_pointer_to_pointer() {
-  int **pp = nullptr;
-  
-  // Pointer-to-pointer with explicit firstprivate → 288
-  #pragma omp target firstprivate(pp)
-  {
-    if (pp && *pp) (*pp)[0] = 9;
-  }
-}
-
-///==========================================================================
-/// Verification: The key fix is that firstprivate pointers now include
-/// the LITERAL flag (256), which tells the runtime to pass the pointer
-/// value directly instead of performing a present table lookup.
-///
-/// Before fix: Pointers got 544 (TARGET_PARAM | IS_PTR) → runtime lookup
-/// After fix:  Pointers get 288 or 800 (includes LITERAL) → direct pass
-///==========================================================================
-
-#endif // HEADER

diff  --git a/clang/test/OpenMP/target_map_codegen_01.cpp 
b/clang/test/OpenMP/target_map_codegen_01.cpp
index 2285e9b7964fa..9f3553d2377cb 100644
--- a/clang/test/OpenMP/target_map_codegen_01.cpp
+++ b/clang/test/OpenMP/target_map_codegen_01.cpp
@@ -38,12 +38,12 @@
 // CK2-LABEL: 
@.__omp_offloading_{{.*}}implicit_maps_reference{{.*}}_l{{[0-9]+}}.region_id = 
weak constant i8 0
 
 // CK2: [[SIZES:@.+]] = {{.+}}constant [1 x i64] [i64 4]
-// Map types: OMP_MAP_LITERAL | OMP_MAP_TARGET_PARAM | OMP_MAP_IMPLICIT = 800
+// Map types: OMP_MAP_PRIVATE_VAL | OMP_MAP_TARGET_PARAM | OMP_MAP_IMPLICIT = 
800
 // CK2: [[TYPES:@.+]] = {{.+}}constant [1 x i64] [i64 800]
 // CK2-LABEL: 
@.__omp_offloading_{{.*}}implicit_maps_reference{{.*}}_l{{[0-9]+}}.region_id = 
weak constant i8 0
 // CK2: [[SIZES2:@.+]] = {{.+}}constant [1 x i64] zeroinitializer
-// Map types: OMP_MAP_IS_PTR | OMP_MAP_LITERAL | OMP_MAP_TARGET_PARAM | 
OMP_MAP_IMPLICIT = 800
-// CK2: [[TYPES2:@.+]] = {{.+}}constant [1 x i64] [i64 800]
+// Map types: OMP_MAP_IS_PTR | OMP_MAP_IMPLICIT = 544
+// CK2: [[TYPES2:@.+]] = {{.+}}constant [1 x i64] [i64 544]
 
 // CK2-LABEL: implicit_maps_reference{{.*}}(
 void implicit_maps_reference (int a, int *b){

diff  --git a/clang/test/OpenMP/target_map_codegen_09.cpp 
b/clang/test/OpenMP/target_map_codegen_09.cpp
index 2b825562d1802..eebd811b50c3d 100644
--- a/clang/test/OpenMP/target_map_codegen_09.cpp
+++ b/clang/test/OpenMP/target_map_codegen_09.cpp
@@ -36,8 +36,8 @@
 // CK10-LABEL: 
@.__omp_offloading_{{.*}}implicit_maps_pointer{{.*}}_l{{[0-9]+}}.region_id = 
weak constant i8 0
 
 // CK10-DAG: [[SIZES:@.+]] = {{.+}}constant [1 x i64] zeroinitializer
-// Map types: OMP_MAP_IS_PTR | OMP_MAP_LITERAL | OMP_MAP_TARGET_PARAM | 
OMP_MAP_IMPLICIT = 800
-// CK10-DAG: [[TYPES:@.+]] = {{.+}}constant [1 x i64] [i64 800]
+// Map types: OMP_MAP_TARGET_PARAM | OMP_MAP_IMPLICIT = 544
+// CK10-DAG: [[TYPES:@.+]] = {{.+}}constant [1 x i64] [i64 544]
 
 // CK10-LABEL: implicit_maps_pointer{{.*}}(
 void implicit_maps_pointer (){

diff  --git a/clang/test/OpenMP/target_map_codegen_10.cpp 
b/clang/test/OpenMP/target_map_codegen_10.cpp
index 67c531169390b..5f8f4dc7771a7 100644
--- a/clang/test/OpenMP/target_map_codegen_10.cpp
+++ b/clang/test/OpenMP/target_map_codegen_10.cpp
@@ -32,8 +32,7 @@
 // CK11_5-DAG: [[SIZES:@.+]] = {{.+}}constant [2 x i64] [i64 16, i64 0]
 // Map types: OMP_MAP_TO  | OMP_MAP_FROM | OMP_MAP_TARGET_PARAM | 
OMP_MAP_IMPLICIT = 547
 // CK11_4-DAG: [[TYPES:@.+]] = {{.+}}constant [2 x i64] [i64 547, i64 547]
-// Map types: OMP_MAP_TO  | OMP_MAP_FROM | OMP_MAP_TARGET_PARAM | 
OMP_MAP_IMPLICIT = 547, OMP_MAP_IS_PTR | OMP_MAP_LITERAL | OMP_MAP_TARGET_PARAM 
| OMP_MAP_IMPLICIT = 800
-// CK11_5-DAG: [[TYPES:@.+]] = {{.+}}constant [2 x i64] [i64 547, i64 800]
+// CK11_5-DAG: [[TYPES:@.+]] = {{.+}}constant [2 x i64] [i64 547, i64 544]
 
 // CK11-LABEL: implicit_maps_double_complex{{.*}}(
 void implicit_maps_double_complex (int a, int *b){

diff  --git a/clang/test/OpenMP/target_map_codegen_26.cpp 
b/clang/test/OpenMP/target_map_codegen_26.cpp
index 00a42c017d7ee..2bc1092685ac3 100644
--- a/clang/test/OpenMP/target_map_codegen_26.cpp
+++ b/clang/test/OpenMP/target_map_codegen_26.cpp
@@ -35,7 +35,7 @@
 
 // CK27-LABEL: 
@.__omp_offloading_{{.*}}zero_size_section_and_private_maps{{.*}}_l{{[0-9]+}}.region_id
 = weak constant i8 0
 // CK27: [[SIZE00:@.+]] = private {{.*}}constant [1 x i64] zeroinitializer
-// CK27: [[MTYPE00:@.+]] = private {{.*}}constant [1 x i64] [i64 800]
+// CK27: [[MTYPE00:@.+]] = private {{.*}}constant [1 x i64] [i64 544]
 
 // CK27-LABEL: 
@.__omp_offloading_{{.*}}zero_size_section_and_private_maps{{.*}}_l{{[0-9]+}}.region_id
 = weak constant i8 0
 // CK27: [[SIZE01:@.+]] = private {{.*}}constant [1 x i64] zeroinitializer
@@ -52,7 +52,7 @@
 // CK27-LABEL: 
@.__omp_offloading_{{.*}}zero_size_section_and_private_maps{{.*}}_l{{[0-9]+}}.region_id
 = weak constant i8 0
 // CK27-LABEL: 
@.__omp_offloading_{{.*}}zero_size_section_and_private_maps{{.*}}_l{{[0-9]+}}.region_id
 = weak constant i8 0
 // CK27: [[SIZE05:@.+]] = private {{.*}}constant [1 x i64] zeroinitializer
-// CK27: [[MTYPE05:@.+]] = private {{.*}}constant [1 x i64] [i64 288]
+// CK27: [[MTYPE05:@.+]] = private {{.*}}constant [1 x i64] [i64 32]
 
 // CK27-LABEL: 
@.__omp_offloading_{{.*}}zero_size_section_and_private_maps{{.*}}_l{{[0-9]+}}.region_id
 = weak constant i8 0
 // CK27-LABEL: 
@.__omp_offloading_{{.*}}zero_size_section_and_private_maps{{.*}}_l{{[0-9]+}}.region_id
 = weak constant i8 0

diff  --git a/clang/test/OpenMP/target_parallel_depend_codegen.cpp 
b/clang/test/OpenMP/target_parallel_depend_codegen.cpp
index 106c34518cce6..52264ee79e123 100644
--- a/clang/test/OpenMP/target_parallel_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_parallel_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git a/clang/test/OpenMP/target_parallel_for_depend_codegen.cpp 
b/clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
index ae01116b83101..aec4feda15cf0 100644
--- a/clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git a/clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp 
b/clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
index 2e8731e766e11..62f772ea79156 100644
--- a/clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git a/clang/test/OpenMP/target_simd_depend_codegen.cpp 
b/clang/test/OpenMP/target_simd_depend_codegen.cpp
index 4a0196b996d20..d813173dffbef 100644
--- a/clang/test/OpenMP/target_simd_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_simd_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git a/clang/test/OpenMP/target_teams_depend_codegen.cpp 
b/clang/test/OpenMP/target_teams_depend_codegen.cpp
index 65c3d88103b76..b2280b80995fb 100644
--- a/clang/test/OpenMP/target_teams_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_teams_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git a/clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp 
b/clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
index de5e1f3ff7991..f9306d3091ee8 100644
--- a/clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git 
a/clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp 
b/clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
index db5fa66cf707b..4d93515c738ed 100644
--- a/clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git 
a/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
 
b/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
index c462bd21f6aa7..ed760d7e2e000 100644
--- 
a/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
+++ 
b/clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
@@ -44,7 +44,7 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // CHECK-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// CHECK-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // CHECK-DAG: @{{.*}} = weak constant i8 0
 
 // TCHECK: @{{.+}} = weak constant [[ENTTY]]

diff  --git a/clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp 
b/clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
index a7f5ac38abba8..9335c65bb2296 100644
--- a/clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
+++ b/clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
@@ -53,11 +53,11 @@
 // TCHECK: [[ENTTY:%.+]] = type { i64, i16, i16, i32, ptr, ptr, i64, i64, ptr }
 
 // OMP45-DAG: [[SIZET:@.+]] = private unnamed_addr constant [2 x i64] [i64 0, 
i64 4]
-// OMP45-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 800, 
i64 800]
+// OMP45-DAG: [[MAPT:@.+]] = private unnamed_addr constant [2 x i64] [i64 544, 
i64 800]
 // OMP45-DAG: @{{.*}} = weak constant i8 0
 
 // OMP50-DAG: [[SIZET:@.+]] = private unnamed_addr constant [3 x i64] [i64 0, 
i64 4, i64 1]
-// OMP50-DAG: [[MAPT:@.+]] = private unnamed_addr constant [3 x i64] [i64 800, 
i64 800, i64 800]
+// OMP50-DAG: [[MAPT:@.+]] = private unnamed_addr constant [3 x i64] [i64 544, 
i64 800, i64 800]
 // OMP50-DAG: @{{.*}} = weak constant i8 0
 
 


        
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to