[Mlir-commits] [llvm] [mlir] [Flang][OpenMP][OpenMPIRBuilder] Implement module scope declare target use rewrite mechanism (PR #212920)
Sergio Afonso
llvmlistbot at llvm.org
Mon Aug 3 07:06:14 PDT 2026
================
@@ -1051,6 +1054,92 @@ void OpenMPIRBuilder::finalize(Function *Fn) {
bool OpenMPIRBuilder::isFinalized() { return IsFinalized; }
+void OpenMPIRBuilder::registerDeclareTargetGlobalReplacement(
+ GlobalValue *Original, GlobalValue *Replacement) {
+ assert(Original && Replacement &&
+ "Null values provided to registerDeclareTargetGlobalReplacement");
+ DeclareTargetGlobalReplacements.push_back({Original, Replacement});
+}
+
+void OpenMPIRBuilder::applyDeclareTargetGlobalReplacements() {
+ for (DeclareTargetGlobalReplacement &R : DeclareTargetGlobalReplacements) {
+ GlobalValue *OldGV = R.Original;
+ GlobalValue *NewGV = R.Replacement;
+ if (!OldGV || !NewGV)
+ continue;
----------------
skatrak wrote:
Nit: This is an assert in `registerDeclareTargetGlobalReplacement`, so perhaps we should do the same here.
https://github.com/llvm/llvm-project/pull/212920
More information about the Mlir-commits
mailing list