[all-commits] [llvm/llvm-project] afa902: [mlir][OpenMP] Pack task private variables into a ...
Tom Eccles via All-commits
all-commits at lists.llvm.org
Mon Feb 3 03:44:39 PST 2025
Branch: refs/heads/users/tblah/delayed-task-exec-5
Home: https://github.com/llvm/llvm-project
Commit: afa9026eefb6c9cd613ed021a92e159f93c3667c
https://github.com/llvm/llvm-project/commit/afa9026eefb6c9cd613ed021a92e159f93c3667c
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-02-03 (Mon, 03 Feb 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
A mlir/test/Target/LLVMIR/openmp-task-privatization.mlir
Log Message:
-----------
[mlir][OpenMP] Pack task private variables into a heap-allocated context struct
See RFC:
https://discourse.llvm.org/t/rfc-openmp-supporting-delayed-task-execution-with-firstprivate-variables/83084
The aim here is to ensure that tasks which are not executed for a while
after they are created do not try to reference any data which are now
out of scope. This is done by packing the data referred to by the task
into a heap allocated structure (freed at the end of the task).
I decided to create the task context structure in
OpenMPToLLVMIRTranslation instead of adapting how it is done
CodeExtractor (via OpenMPIRBuilder] because CodeExtractor is (at least
in theory) generic code which could have other unrelated uses.
Commit: f8a0b7181c86046f2d833eff97c4cd88db656285
https://github.com/llvm/llvm-project/commit/f8a0b7181c86046f2d833eff97c4cd88db656285
Author: Tom Eccles <tom.eccles at arm.com>
Date: 2025-02-03 (Mon, 03 Feb 2025)
Changed paths:
M mlir/test/Target/LLVMIR/openmp-llvm.mlir
Log Message:
-----------
Update after code review on previous patch
Compare: https://github.com/llvm/llvm-project/compare/f2b7ba929220...f8a0b7181c86
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list