[llvm] [OpenMP] Fix OpenMPIRBuilder generating incorrect duplicate SrcLocInfo (PR #100364)
Akash Banerjee via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 24 05:59:03 PDT 2024
https://github.com/TIFitis created https://github.com/llvm/llvm-project/pull/100364
This should further fix some of the incorrect debug info being generated related to #97458
>From 3765bce8d754e9743cb35d996c3cb5c9595b2895 Mon Sep 17 00:00:00 2001
From: Akash Banerjee <Akash.Banerjee at amd.com>
Date: Wed, 24 Jul 2024 13:35:54 +0100
Subject: [PATCH] [OpenMP] Fix OpenMPIRBuilder generating incorrect duplicate
SrcLocInfo
---
llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp b/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
index 98da6e2efcb5c..5f71682627a19 100644
--- a/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+++ b/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
@@ -3426,11 +3426,6 @@ OpenMPIRBuilder::InsertPointTy OpenMPIRBuilder::createReductionsGPU(
else
Config.setGridValue(getGridValue(T, ReductionFunc));
- uint32_t SrcLocStrSize;
- Constant *SrcLocStr = getOrCreateDefaultSrcLocStr(SrcLocStrSize);
- Value *RTLoc =
- getOrCreateIdent(SrcLocStr, SrcLocStrSize, omp::IdentFlag(0), 0);
-
// Build res = __kmpc_reduce{_nowait}(<gtid>, <n>, sizeof(RedList),
// RedList, shuffle_reduce_func, interwarp_copy_func);
// or
@@ -3483,7 +3478,7 @@ OpenMPIRBuilder::InsertPointTy OpenMPIRBuilder::createReductionsGPU(
Builder.CreatePointerBitCastOrAddrSpaceCast(SarFunc, PtrTy);
Value *WcFuncCast =
Builder.CreatePointerBitCastOrAddrSpaceCast(WcFunc, PtrTy);
- Value *Args[] = {RTLoc, ReductionDataSize, RL, SarFuncCast, WcFuncCast};
+ Value *Args[] = {SrcLocInfo, ReductionDataSize, RL, SarFuncCast, WcFuncCast};
Function *Pv2Ptr = getOrCreateRuntimeFunctionPtr(
RuntimeFunction::OMPRTL___kmpc_nvptx_parallel_reduce_nowait_v2);
Res = Builder.CreateCall(Pv2Ptr, Args);
@@ -3506,7 +3501,7 @@ OpenMPIRBuilder::InsertPointTy OpenMPIRBuilder::createReductionsGPU(
Value *KernelTeamsReductionPtr = Builder.CreateCall(
RedFixedBuferFn, {}, "_openmp_teams_reductions_buffer_$_$ptr");
- Value *Args3[] = {RTLoc,
+ Value *Args3[] = {SrcLocInfo,
KernelTeamsReductionPtr,
Builder.getInt32(ReductionBufNum),
ReductionDataSize,
More information about the llvm-commits
mailing list