https://github.com/tblah approved this pull request.
LGTM but please could you add a test that covers every region.
https://github.com/llvm/llvm-project/pull/146033
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.l
https://github.com/tblah approved this pull request.
https://github.com/llvm/llvm-project/pull/146025
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
https://github.com/tblah approved this pull request.
https://github.com/llvm/llvm-project/pull/146028
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/144898
>From 392514e4d56491575ec47a1eb5607fd52f5b1ff9 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Wed, 18 Jun 2025 21:01:13 +
Subject: [PATCH 1/2] [flang][OpenMP][NFC] remove globals with mlir::StateStack
Idea s
tblah wrote:
1. https://github.com/llvm/llvm-project/pull/144897
2. https://github.com/llvm/llvm-project/pull/144898
https://github.com/llvm/llvm-project/pull/144898
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/144898
Idea suggested by @skatrak
>From 280e55d4355f100b7d3066fce3c0515b369fecce Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Wed, 18 Jun 2025 21:01:13 +
Subject: [PATCH] [flang][OpenMP][NFC] remove globals with
https://github.com/tblah approved this pull request.
LGTM. Thanks for the fix
https://github.com/llvm/llvm-project/pull/144015
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/144087
Based on top of #144013
I was really hoping this would also work for `hostEvalInfo` but unfortunately
that needed to be shared to a greater degree.
The same technique should work for that but it would need that
https://github.com/tblah approved this pull request.
https://github.com/llvm/llvm-project/pull/141772
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -0,0 +1,51 @@
+// Tests mapping `local` locality specifier to `private` clauses for non-empty
+// `init` and `dealloc` regions.
+
+// RUN: fir-opt --omp-do-concurrent-conversion="map-to=host" %s | FileCheck %s
+
+func.func @my_allocator() {
+ return
+}
+
+func.func @my_dealloc
https://github.com/tblah approved this pull request.
Looks great!
https://github.com/llvm/llvm-project/pull/142735
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi
https://github.com/tblah approved this pull request.
https://github.com/llvm/llvm-project/pull/142567
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
https://github.com/tblah approved this pull request.
Thanks for the update
https://github.com/llvm/llvm-project/pull/141766
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bra
@@ -77,6 +77,19 @@ static std::string getIdentifierName(const Record *Rec,
StringRef Prefix) {
return Prefix.str() + BaseRecord(Rec).getFormattedName();
}
+using RecordWithSpelling = std::pair;
+
+static std::vector
+getSpellings(ArrayRef Records) {
tblah w
https://github.com/tblah approved this pull request.
LGTM with one nit, but wait for a second review
https://github.com/llvm/llvm-project/pull/141766
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin
@@ -77,6 +77,19 @@ static std::string getIdentifierName(const Record *Rec,
StringRef Prefix) {
return Prefix.str() + BaseRecord(Rec).getFormattedName();
}
+using RecordWithSpelling = std::pair;
+
+static std::vector
+getSpellings(ArrayRef Records) {
tblah w
https://github.com/tblah edited https://github.com/llvm/llvm-project/pull/141766
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
https://github.com/tblah approved this pull request.
LGTM but wait for another review
https://github.com/llvm/llvm-project/pull/141765
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listin
https://github.com/tblah approved this pull request.
LGTM, thanks!
https://github.com/llvm/llvm-project/pull/141763
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-comm
tblah wrote:
ping for review
https://github.com/llvm/llvm-project/pull/140092
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
tblah wrote:
PR stack:
1. https://github.com/llvm/llvm-project/pull/140089
2. https://github.com/llvm/llvm-project/pull/140090
3. https://github.com/llvm/llvm-project/pull/140092
https://github.com/llvm/llvm-project/pull/140092
___
llvm-branch-commits
tblah wrote:
PR stack:
1. https://github.com/llvm/llvm-project/pull/140089
2. https://github.com/llvm/llvm-project/pull/140090
3. https://github.com/llvm/llvm-project/pull/140092
https://github.com/llvm/llvm-project/pull/140090
___
llvm-branch-commits
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/140092
Fixes #136357
The barrier needs to go between the copying into firstprivate variables and the
initialization call for the OpenMP construct (e.g. wsloop). There is no way of
expressing this in MLIR because for de
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/140090
Part of a series to fix https://github.com/llvm/llvm-project/issues/136357
Rate limit · GitHub
body {
background-color: #f6f8fa;
color: #24292e;
font
@@ -2029,9 +2031,30 @@ class FirConverter : public
Fortran::lower::AbstractConverter {
void handleLocalitySpecs(const IncrementLoopInfo &info) {
Fortran::semantics::SemanticsContext &semanticsContext =
bridge.getSemanticsContext();
-for (const Fortran::semant
https://github.com/tblah approved this pull request.
LGTM, thanks!
https://github.com/llvm/llvm-project/pull/139131
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-comm
@@ -162,7 +173,52 @@ class DoConcurrentConversion
assert(loop.getRegion().hasOneBlock());
mlir::Block &loopBlock = loop.getRegion().getBlocks().front();
-// Collect iteration variable(s) allocations do that we can move them
+// Handle localization
+if (!loo
@@ -162,7 +173,52 @@ class DoConcurrentConversion
assert(loop.getRegion().hasOneBlock());
mlir::Block &loopBlock = loop.getRegion().getBlocks().front();
-// Collect iteration variable(s) allocations do that we can move them
+// Handle localization
+if (!loo
https://github.com/tblah approved this pull request.
Thanks for the updates
https://github.com/llvm/llvm-project/pull/138505
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-br
https://github.com/tblah approved this pull request.
LGTM
https://github.com/llvm/llvm-project/pull/138816
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
https://github.com/tblah approved this pull request.
https://github.com/llvm/llvm-project/pull/138489
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -548,19 +357,16 @@ class DoConcurrentConversionPass
return;
}
-llvm::DenseSet concurrentLoopsToSkip;
+llvm::DenseSet concurrentLoopsToSkip;
tblah wrote:
My concern was that the walk order might be changed some time because I didn't
reali
https://github.com/tblah commented:
This needs a TODO message for locality specifiers which are not yet supported
(as I understand it this means ones with init or dealloc regions)
https://github.com/llvm/llvm-project/pull/138512
___
llvm-branch-commit
https://github.com/tblah edited https://github.com/llvm/llvm-project/pull/138512
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -162,7 +173,52 @@ class DoConcurrentConversion
assert(loop.getRegion().hasOneBlock());
mlir::Block &loopBlock = loop.getRegion().getBlocks().front();
-// Collect iteration variable(s) allocations do that we can move them
+// Handle localization
+if (!loo
https://github.com/tblah approved this pull request.
LGTM, thanks
https://github.com/llvm/llvm-project/pull/138506
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi
@@ -3485,6 +3485,137 @@ def fir_BoxTotalElementsOp
let hasCanonicalizer = 1;
}
+def YieldOp : fir_Op<"yield",
+[Pure, ReturnLike, Terminator,
+ ParentOneOf<["LocalitySpecifierOp"]>]> {
+ let summary = "loop yield and termination operation";
+ let description = [{
+
@@ -3485,6 +3485,137 @@ def fir_BoxTotalElementsOp
let hasCanonicalizer = 1;
}
+def YieldOp : fir_Op<"yield",
tblah wrote:
What about the locallity specifiers requires a different terminator? Couldn't
this use `fir.result`?
https://github.com/llvm/llvm-pr
https://github.com/tblah edited https://github.com/llvm/llvm-project/pull/138505
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
https://github.com/tblah commented:
Please could you add a test for the verifier failures.
https://github.com/llvm/llvm-project/pull/138505
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/l
@@ -3485,6 +3485,137 @@ def fir_BoxTotalElementsOp
let hasCanonicalizer = 1;
}
+def YieldOp : fir_Op<"yield",
+[Pure, ReturnLike, Terminator,
+ ParentOneOf<["LocalitySpecifierOp"]>]> {
+ let summary = "loop yield and termination operation";
+ let description = [{
+
@@ -3485,6 +3485,137 @@ def fir_BoxTotalElementsOp
let hasCanonicalizer = 1;
}
+def YieldOp : fir_Op<"yield",
+[Pure, ReturnLike, Terminator,
+ ParentOneOf<["LocalitySpecifierOp"]>]> {
+ let summary = "loop yield and termination operation";
+ let description = [{
+
https://github.com/tblah edited https://github.com/llvm/llvm-project/pull/138489
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -548,19 +357,16 @@ class DoConcurrentConversionPass
return;
}
-llvm::DenseSet concurrentLoopsToSkip;
+llvm::DenseSet concurrentLoopsToSkip;
tblah wrote:
The correctness of this depends upon the traversal order used by
`applyFullConversio
https://github.com/tblah commented:
Thanks, looks good. Just one comment.
https://github.com/llvm/llvm-project/pull/138489
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bran
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137841
Rate limit · GitHub
body {
background-color: #f6f8fa;
color: #24292e;
font-family: -apple-system,BlinkMacSystemFont,Segoe
UI,Helvetica,Arial,sans-ser
tblah wrote:
PR Stack:
- Cancel parallel https://github.com/llvm/llvm-project/pull/137192
- Cancel sections https://github.com/llvm/llvm-project/pull/137193
- Cancel wsloop https://github.com/llvm/llvm-project/pull/137194
- Cancellation point https://github.com/llvm/llvm-project/pull/137205
- Can
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/137841
A cancel or cancellation point for taskgroup is always nested inside of a task
inside of the taskgroup. For the task which is cancelled, it is that task which
needs to be cleaned up: not the owning taskgroup. The
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137205
>From 7fbe43d895479254287466b957daa7747849e627 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:40:39 +
Subject: [PATCH 1/2] [mlir][OpenMP] Convert omp.cancellation_point to LLVMIR
This is
tblah wrote:
The new testsuite failures look unrelated to my patch
https://github.com/llvm/llvm-project/pull/137205
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-comm
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137205
>From 1c6d8d0fc688dcd630b7077d2e7ae190a6c62361 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:40:39 +
Subject: [PATCH 1/2] [mlir][OpenMP] Convert omp.cancellation_point to LLVMIR
This is
tblah wrote:
Thanks for taking a look Michael. I think the issue was actually in an earlier
patch in my series, but the UB was only triggering intermittently. The fix for
Windows builds is
https://github.com/llvm/llvm-project/pull/137193/commits/6c678b739d4fab204862ee057e00c3b0cc4c1946
https:
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137205
>From 1c6d8d0fc688dcd630b7077d2e7ae190a6c62361 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:40:39 +
Subject: [PATCH] [mlir][OpenMP] Convert omp.cancellation_point to LLVMIR
This is basi
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137194
>From 9a8ed32eaea1a5b6a55e32b5b97f890a1fb8ecf9 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:05:50 +
Subject: [PATCH] [mlir][OpenMP] convert wsloop cancellation to LLVMIR
Taskloop suppor
https://github.com/tblah approved this pull request.
LGTM. If I didn't miss anything, this patch copies the old header code verbatim
into both implementation files?
https://github.com/llvm/llvm-project/pull/137517
___
llvm-branch-commits mailing list
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137205
>From 4e97789c831bbfbfe85a9df7420df65de036b09a Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:40:39 +
Subject: [PATCH] [mlir][OpenMP] Convert omp.cancellation_point to LLVMIR
This is basi
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137194
>From 3a198c8800f519b4a88772c93c52b7fd08ccb131 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:05:50 +
Subject: [PATCH] [mlir][OpenMP] convert wsloop cancellation to LLVMIR
Taskloop suppor
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137193
>From f3b8eebb37320ab748682f6a091e52e64aeec0d7 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Thu, 10 Apr 2025 11:43:18 +
Subject: [PATCH] [mlir][OpenMP] Convert omp.cancel sections to LLVMIR
This is quite u
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137194
>From bb1af0154c62a622775f0f05cbdc486de69266c9 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:05:50 +
Subject: [PATCH] [mlir][OpenMP] convert wsloop cancellation to LLVMIR
Taskloop suppor
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/137193
>From 4d28bd8f0106321af6679e9b155fd36ef2f919fc Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Thu, 10 Apr 2025 11:43:18 +
Subject: [PATCH] [mlir][OpenMP] Convert omp.cancel sections to LLVMIR
This is quite u
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/137193
This is quite ugly but it is the best I could think of. The old FiniCBWrapper
was way too brittle depending upon the exact block structure inside of the
section, and could be confused by any control flow in the s
tblah wrote:
PR Stack:
- Cancel parallel https://github.com/llvm/llvm-project/pull/137192
- Cancel sections https://github.com/llvm/llvm-project/pull/137193
- Cancel wsloop https://github.com/llvm/llvm-project/pull/137194
- Cancellation point (TODO)
- Cancel(lation point) taskgroup (TODO)
https:
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/137205
This is basically identical to cancel except without the if clause.
taskgroup will be implemented in a followup PR.
>From 88fc39d0b2a3a846006889d4320b9f29ced025b7 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date:
tblah wrote:
PR Stack:
Cancel parallel
https://github.com/llvm/llvm-project/pull/137192
Cancel sections
https://github.com/llvm/llvm-project/pull/137193
Cancel wsloop
https://github.com/llvm/llvm-project/pull/137194
Cancellation point (TODO)
Cancel(lation point) taskgroup (TODO)
https://g
tblah wrote:
PR Stack:
- Cancel parallel https://github.com/llvm/llvm-project/pull/137192
- Cancel sections https://github.com/llvm/llvm-project/pull/137193
- Cancel wsloop https://github.com/llvm/llvm-project/pull/137194
- Cancellation point https://github.com/llvm/llvm-project/pull/137205
- Can
https://github.com/tblah created
https://github.com/llvm/llvm-project/pull/137194
Taskloop support will follow in a later patch.
>From bb374c9f98cb13e55c9ce7d129f567428e58c24e Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Tue, 15 Apr 2025 15:05:50 +
Subject: [PATCH] [mlir][OpenMP] conver
https://github.com/tblah approved this pull request.
LGTM, thanks
https://github.com/llvm/llvm-project/pull/136312
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi
https://github.com/tblah approved this pull request.
LGTM, thanks
https://github.com/llvm/llvm-project/pull/136313
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi
@@ -4242,9 +4242,8 @@ struct OmpDeviceTypeClause {
// OMP 5.2 15.8.3 extended-atomic, fail-clause ->
//FAIL(memory-order)
struct OmpFailClause {
- WRAPPER_CLASS_BOILERPLATE(
- OmpFailClause, common::Indirection);
- CharBlock source;
tblah wrote:
Why
https://github.com/tblah edited https://github.com/llvm/llvm-project/pull/136313
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
tblah wrote:
Ping for review.
@vzakhari are you happy with the change to `hlfir.elemental_addr`?
https://github.com/llvm/llvm-project/pull/133892
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/ma
https://github.com/tblah approved this pull request.
Nice cleanup. I think this is a NFC? Could you add that to the commit title
LGTM
https://github.com/llvm/llvm-project/pull/131582
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.
tblah wrote:
Have you run any testsuites on this? If so please add that to the commit
description.
https://github.com/llvm/llvm-project/pull/131574
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/
https://github.com/tblah approved this pull request.
LGTM, thanks
https://github.com/llvm/llvm-project/pull/130789
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commi
https://github.com/tblah approved this pull request.
Thank you for the quick fix. This does fix the issue I saw.
https://github.com/llvm/llvm-project/pull/130290
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm
tblah wrote:
Apologies for the comments I missed. I'm not sure how that happened. Thanks for
carefully checking each one.
https://github.com/llvm/llvm-project/pull/125307
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/125307
>From df47461dcf1f9244da472efdcc57d266ecd42b34 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Fri, 24 Jan 2025 17:32:41 +
Subject: [PATCH 01/12] [mlir][OpenMP] Pack task private variables into a
heap-allocat
https://github.com/tblah approved this pull request.
https://github.com/llvm/llvm-project/pull/128518
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
tblah wrote:
This looks good to me but I am unsure what the exact interpretation of the
[rules](https://llvm.org/docs/HowToReleaseLLVM.html#release-patch-rules) should
be.
> Before RC3/Final Major Release Patches should be limited to critical bugs or
> regressions.
This is not fixing a regres
tblah wrote:
This is now rebased on top of current main and ready for review. Apologies for
the delay, I was on holiday and rebasing required rethinking how insertion
points worked.
@ergawy I changed the signature of `initPrivateVar` so that the correct private
variable SSA value is returned
@@ -1794,37 +1909,118 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
moduleTranslation, allocaIP);
// Allocate and initialize private variables
- // TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTermi
@@ -1794,37 +1909,118 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
moduleTranslation, allocaIP);
// Allocate and initialize private variables
- // TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTermi
@@ -1794,37 +1909,118 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
moduleTranslation, allocaIP);
// Allocate and initialize private variables
- // TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTermi
@@ -1794,37 +1909,118 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
moduleTranslation, allocaIP);
// Allocate and initialize private variables
- // TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTermi
@@ -1794,37 +1909,118 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
moduleTranslation, allocaIP);
// Allocate and initialize private variables
- // TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTermi
@@ -1794,37 +1909,118 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
moduleTranslation, allocaIP);
// Allocate and initialize private variables
- // TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTermi
@@ -1331,19 +1334,16 @@ findAssociatedValue(Value privateVar,
llvm::IRBuilderBase &builder,
/// Initialize a single (first)private variable. You probably want to use
/// allocateAndInitPrivateVars instead of this.
-static llvm::Error
-initPrivateVar(llvm::IRBuilderBase &build
@@ -1415,11 +1413,13 @@ static llvm::Expected
allocateAndInitPrivateVars(
llvm::Value *llvmPrivateVar = builder.CreateAlloca(
llvmAllocType, /*ArraySize=*/nullptr, "omp.private.alloc");
-llvm::Error err = initPrivateVar(
+llvm::Expected privateVarOrError =
@@ -146,13 +146,24 @@ def PrivateClauseOp : OpenMP_Op<"private",
[IsolatedFromAbove, RecipeInterface]>
return region.empty() ? nullptr : region.getArgument(0);
}
+/// Returns true if the init region might read from the mold argument
+bool initReadsFromMold()
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/125307
>From df47461dcf1f9244da472efdcc57d266ecd42b34 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Fri, 24 Jan 2025 17:32:41 +
Subject: [PATCH 01/11] [mlir][OpenMP] Pack task private variables into a
heap-allocat
https://github.com/tblah approved this pull request.
LGTM, thanks!
https://github.com/llvm/llvm-project/pull/127820
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-comm
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/125901
>From 8a7e449cfa357e18ba094cc61d14bf481668ddcd Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Wed, 5 Feb 2025 17:29:42 +
Subject: [PATCH] [flang][Lower][OpenMP] Don't read moldarg for static sized
array
Thi
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/125307
>From 06831df6909ff246ccd541e4f4c39fd47fd993a4 Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Fri, 24 Jan 2025 17:32:41 +
Subject: [PATCH 01/12] [mlir][OpenMP] Pack task private variables into a
heap-allocat
https://github.com/tblah edited https://github.com/llvm/llvm-project/pull/125307
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -1796,36 +1918,110 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
// Allocate and initialize private variables
// TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTerminator());
- for (auto [privDecl, mlirP
https://github.com/tblah updated
https://github.com/llvm/llvm-project/pull/125307
>From afa9026eefb6c9cd613ed021a92e159f93c3667c Mon Sep 17 00:00:00 2001
From: Tom Eccles
Date: Fri, 24 Jan 2025 17:32:41 +
Subject: [PATCH 1/8] [mlir][OpenMP] Pack task private variables into a
heap-allocated
https://github.com/tblah edited https://github.com/llvm/llvm-project/pull/125307
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -1796,36 +1918,110 @@ convertOmpTaskOp(omp::TaskOp taskOp,
llvm::IRBuilderBase &builder,
// Allocate and initialize private variables
// TODO: package private variables up in a structure
builder.SetInsertPoint(initBlock->getTerminator());
- for (auto [privDecl, mlirP
@@ -1730,6 +1730,126 @@ buildDependData(std::optional dependKinds,
OperandRange dependVars,
}
}
+static bool privatizerReadsSourceVariable(omp::PrivateClauseOp &priv) {
+ if (priv.getDataSharingType() == omp::DataSharingClauseType::FirstPrivate)
+return true;
+
+ Regi
@@ -1730,6 +1730,126 @@ buildDependData(std::optional dependKinds,
OperandRange dependVars,
}
}
+static bool privatizerReadsSourceVariable(omp::PrivateClauseOp &priv) {
+ if (priv.getDataSharingType() == omp::DataSharingClauseType::FirstPrivate)
+return true;
+
+ Regi
1 - 100 of 318 matches
Mail list logo