[Lldb-commits] [llvm] [flang] [libc] [lld] [openmp] [lldb] [clang-tools-extra] [compiler-rt] [libcxx] [clang] [PGO][OpenMP] Instrumentation for GPU devices (PR #76587)

2024-01-09 Thread Johannes Doerfert via lldb-commits
@@ -959,8 +959,12 @@ void CodeGenPGO::emitCounterIncrement(CGBuilderTy &Builder, const Stmt *S, unsigned Counter = (*RegionCounterMap)[S]; - llvm::Value *Args[] = {FuncNameVar, - Builder.getInt64(FunctionHash), + // Make sure that pointer to globa

[Lldb-commits] [libcxx] [llvm] [compiler-rt] [clang] [lldb] [flang] [clang-tools-extra] [openmp] [OpenMP] Add memory diff dump for kernel record-replay (PR #70667)

2024-01-05 Thread Johannes Doerfert via lldb-commits
jdoerfert wrote: Can you rebase this so we can merge it? https://github.com/llvm/llvm-project/pull/70667 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [libc] [flang] [openmp] [libcxx] [compiler-rt] [llvm] [clang-tools-extra] [clang] [lld] [PGO][OpenMP] Instrumentation for GPU devices (PR #76587)

2024-01-05 Thread Johannes Doerfert via lldb-commits
jdoerfert wrote: > > ongoing effort to extends PGO instrumentation to GPU device code > > Is there a high level description for this effort and its goal? Traditional > compiler PGO is mostly for profiling control-flow, but we don't usually have > a lot of control flow for GPU kernels. I am un

[Lldb-commits] [lldb] [libc] [llvm] [mlir] [clang] [NFC][ObjectSizeOffset] Use classes instead of std::pair (PR #76882)

2024-01-05 Thread Johannes Doerfert via lldb-commits
@@ -187,80 +187,132 @@ Value *lowerObjectSizeCall( const TargetLibraryInfo *TLI, AAResults *AA, bool MustSucceed, SmallVectorImpl *InsertedInstructions = nullptr); -using SizeOffsetType = std::pair; +/// SizeOffsetType - A base template class for the object size visito

[Lldb-commits] [lldb] [clang] [llvm] [mlir] [libc] [NFC][ObjectSizeOffset] Use classes instead of std::pair (PR #76882)

2024-01-05 Thread Johannes Doerfert via lldb-commits
https://github.com/jdoerfert approved this pull request. I left one more comment. I think the new classes are clearly superior to the pairs. I looked over the changes, nothing jumps out. LG https://github.com/llvm/llvm-project/pull/76882 ___ lldb-comm

[Lldb-commits] [clang] [lldb] [llvm] [libc] [mlir] [NFC][ObjectSizeOffset] Use classes instead of std::pair (PR #76882)

2024-01-05 Thread Johannes Doerfert via lldb-commits
https://github.com/jdoerfert edited https://github.com/llvm/llvm-project/pull/76882 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [libcxx] [llvm] [lld] [libc] [compiler-rt] [openmp] [lldb] [flang] [clang-tools-extra] [clang] [PGO][OpenMP] Instrumentation for GPU devices (PR #76587)

2024-01-03 Thread Johannes Doerfert via lldb-commits
https://github.com/jdoerfert commented: Can we have tests for this? You can just check for the dump. https://github.com/llvm/llvm-project/pull/76587 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listin

[Lldb-commits] [openmp] [clang-tools-extra] [flang] [libcxx] [libc] [compiler-rt] [clang] [lldb] [lld] [llvm] [PGO][OpenMP] Instrumentation for GPU devices (PR #76587)

2024-01-03 Thread Johannes Doerfert via lldb-commits
@@ -428,13 +428,22 @@ std::string getPGOFuncNameVarName(StringRef FuncName, return VarName; } +bool isGPUProfTarget(const Module &M) { + const auto &triple = M.getTargetTriple(); + return triple.rfind("nvptx", 0) == 0 || triple.rfind("amdgcn", 0) == 0 || + triple.r

[Lldb-commits] [libc] [clang] [lldb] [llvm] [mlir] [NFC][ObjectSizeOffset] Use classes instead of std::pair (PR #76882)

2024-01-03 Thread Johannes Doerfert via lldb-commits
@@ -187,80 +187,147 @@ Value *lowerObjectSizeCall( const TargetLibraryInfo *TLI, AAResults *AA, bool MustSucceed, SmallVectorImpl *InsertedInstructions = nullptr); -using SizeOffsetType = std::pair; +/// SizeOffsetType - A base template class for the object size visito

[Lldb-commits] [mlir] [libc] [clang] [lldb] [llvm] [NFC][ObjectSizeOffset] Use classes instead of std::pair (PR #76882)

2024-01-03 Thread Johannes Doerfert via lldb-commits
https://github.com/jdoerfert edited https://github.com/llvm/llvm-project/pull/76882 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [llvm] [libc] [lldb] [mlir] [clang] [NFC][ObjectSizeOffset] Use classes instead of std::pair (PR #76882)

2024-01-03 Thread Johannes Doerfert via lldb-commits
https://github.com/jdoerfert commented: Generally, getting rid of the pair is great. I am unsure I understand why we do the base template rather than inheritance. Where is the base template used? If we do inheritance we could avoid duplicating of members and provide default impls that work with

[Lldb-commits] [lldb] [libc] [llvm] [compiler-rt] [clang] [flang] [libcxx] [clang-tools-extra] [openmp] [lld] [mlir] [libunwind] [OpenMP] Improve omp offload profiler (PR #68016)

2023-12-21 Thread Johannes Doerfert via lldb-commits
https://github.com/jdoerfert approved this pull request. LG. Please rebase and merge. https://github.com/llvm/llvm-project/pull/68016 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [OpenMPIRBuilder] Remove wrapper function in `createTask`, `createTeams` (PR #67723)

2023-10-24 Thread Johannes Doerfert via lldb-commits
@@ -1523,41 +1560,31 @@ OpenMPIRBuilder::createTask(const LocationDescription &Loc, BasicBlock *TaskAllocaBB = splitBB(Builder, /*CreateBranch=*/true, "task.alloca"); + InsertPointTy TaskAllocaIP = + InsertPointTy(TaskAllocaBB, TaskAllocaBB->begin()); + InsertP

[Lldb-commits] [lldb] [OpenMPIRBuilder] Remove wrapper function in `createTask`, `createTeams` (PR #67723)

2023-10-24 Thread Johannes Doerfert via lldb-commits
@@ -1736,26 +1750,20 @@ OpenMPIRBuilder::createTask(const LocationDescription &Loc, StaleCI->eraseFromParent(); -// Emit the body for wrapper function -BasicBlock *WrapperEntryBB = -BasicBlock::Create(M.getContext(), "", WrapperFunc); -Builder.SetInse

[Lldb-commits] [lldb] [OpenMPIRBuilder] Remove wrapper function in `createTask`, `createTeams` (PR #67723)

2023-10-24 Thread Johannes Doerfert via lldb-commits
@@ -5771,84 +5779,63 @@ OpenMPIRBuilder::createTeams(const LocationDescription &Loc, BasicBlock *AllocaBB = splitBB(Builder, /*CreateBranch=*/true, "teams.alloca"); + // Generate the body of teams. + InsertPointTy AllocaIP(AllocaBB, AllocaBB->begin()); + InsertPoin

[Lldb-commits] [lldb] [MLIR] Enabling Intel GPU Integration. (PR #65539)

2023-09-06 Thread Johannes Doerfert via lldb-commits
https://github.com/jdoerfert edited https://github.com/llvm/llvm-project/pull/65539 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits