matthias-springer wrote:
> > _[Reviewable](https://reviewable.io/reviews/llvm/llvm-project/83425)_
> > status: 0 of 4 files reviewed, 1 unresolved discussion (waiting on @ftynse,
> > @joker-eph, and @matthias-springer)
>
> _[`mlir/lib/Transforms/Utils/DialectConversion.cpp` line 363 at
> r1](
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/83950
Until now, `transform.apply_conversion_patterns` consumed the target handle and
potentially invalidated handles. This commit adds tracking functionality
similar to `transform.apply_patterns`, such that
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/84131
This commit adds two new notifications to `RewriterBase::Listener`:
* `notifyPatternBegin`: Called when a pattern application begins during a
greedy pattern rewrite or dialect conversion.
* `notifyPatte
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/84134
D144193 (#66771) has been merged.
>From d9a6a5665c177185bafbe9cff264e28634b2b3e7 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Wed, 6 Mar 2024 08:09:22 +
Subject: [PATCH] [mlir][Transform]
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/84140
This commit adds a new attribute to `transform.apply_conversion_patterns` that
lets users specify how op handles should be updated if a tracked op is replaced
during a dialect conversion.
`find_replac
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/84131
>From 407c7f7c24a87f409a921328605cc93637386d19 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Mar 2024 02:01:50 +
Subject: [PATCH] [mlir][IR] Add listener notifications for pattern be
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/84134
>From 9f25fbb0bc012e8710242af0901a6416ce57e5ba Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Mar 2024 02:06:22 +
Subject: [PATCH] [mlir][Transform] Remove `notifyOperationErased` wor
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/84140
>From 515d86af51fdb10c957222f20f56bd3fa4e2c4d3 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Mar 2024 02:09:29 +
Subject: [PATCH] [mlir][Transform] Specify mapping update rules for
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/84131
>From 0aef4b91f6aad0335e7eae2849edffd4338f4c40 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Mar 2024 03:42:15 +
Subject: [PATCH] [mlir][IR] Add listener notifications for pattern be
@@ -68,9 +68,9 @@ class PatternApplicator {
///invalidate the match and try another pattern.
LogicalResult
matchAndRewrite(Operation *op, PatternRewriter &rewriter,
- function_ref canApply = {},
- function_ref onFailure = {},
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/84131
___
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/matthias-springer edited
https://github.com/llvm/llvm-project/pull/84131
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -68,9 +68,9 @@ class PatternApplicator {
///invalidate the match and try another pattern.
LogicalResult
matchAndRewrite(Operation *op, PatternRewriter &rewriter,
- function_ref canApply = {},
- function_ref onFailure = {},
@@ -68,9 +68,9 @@ class PatternApplicator {
///invalidate the match and try another pattern.
LogicalResult
matchAndRewrite(Operation *op, PatternRewriter &rewriter,
- function_ref canApply = {},
- function_ref onFailure = {},
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/84131
___
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/matthias-springer updated
https://github.com/llvm/llvm-project/pull/84131
>From 24a56caffaa23f6da73b129ca96f28e9a9bbf388 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Mar 2024 07:19:33 +
Subject: [PATCH] [mlir][IR] Add listener notifications for pattern be
@@ -68,9 +68,9 @@ class PatternApplicator {
///invalidate the match and try another pattern.
LogicalResult
matchAndRewrite(Operation *op, PatternRewriter &rewriter,
- function_ref canApply = {},
- function_ref onFailure = {},
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/84131
>From a65d640a0ca2c6810da0878ed42db39f27cebfe1 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Mar 2024 07:19:33 +
Subject: [PATCH] [mlir][IR] Add listener notifications for pattern be
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/84140
>From e2b6b753bad33cbd03b79d3b9b4c2f0cabfbab8d Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Mar 2024 02:09:29 +
Subject: [PATCH] [mlir][Transform] Specify mapping update rules for
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/84721
Before this change: `notifyOperationReplaced` was triggered when calling
`RewriteBase::replaceOp`.
After this change: `notifyOperationReplaced` is triggered when
`RewriterBase::replaceAllOpUsesWith` or
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/84722
Turn `RewriterBase::replaceAllUsesWith` into a non-templatized implementation,
so that it can be made virtual and be overridden in the
`ConversionPatternRewriter` in a subsequent change.
This change i
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/84725
This commit adds support for `RewriterBase::replaceAllUsesWith` to the dialect
conversion. Uses are not immediately replaced, but in a delayed fashion during
the "commit" phase. No type conversions are
@@ -751,6 +731,44 @@ class UnresolvedMaterializationRewrite : public
OperationRewrite {
/// The original output type. This is only used for argument conversions.
Type origOutputType;
};
+
+/// A value rewrite.
+class ValueRewrite : public IRRewrite {
+public:
+ /// Return
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/84865
This commit makes `rewriterImpl` private in `IRRewrite`. This ensures that only
the conversion value mapping and the dialect conversion configuration can be
accessed from an IR rewrite object.
>From
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/85184
This commit fixes memory leaks in sparse tensor integration tests by adding
`bufferization.dealloc_tensor` ops.
Note: Buffer deallocation will be automated in the future with the
ownership-based buffe
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/85355
This commit adds a new test-only op:
`sparse_tensor.has_runtime_library`. The op returns "1" if the sparse compiler
runs in runtime library mode.
This op is useful for writing test cases that require d
@@ -140,10 +140,16 @@ module {
sparse_tensor.print %s1 : tensor<4x3x2xf32, #BatchedCSR>
sparse_tensor.print %s2 : tensor<4x3x2xf32, #CSRDense>
-// FIXME: doing this explicitly crashes runtime
-// bufferization.dealloc_tensor %s0 : tensor<4x3x2xf32, #CCC>
-/
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/86098
There is an assertion that the stop condition is not satisfied for the the
starting point at the beginning of `computeBound`. Therefore, that case does
not have to be handled later on in that function.
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/86099
This commit changes the API of `ValueBoundsConstraintSet`: the stop condition
is now passed to the constructor instead of `processWorklist`. That makes it
easier to add items to the worklist multiple t
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/85895
___
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/matthias-springer updated
https://github.com/llvm/llvm-project/pull/86099
>From 305001b6211f48e7643c34805e7008126a539b49 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 22 Mar 2024 02:01:00 +
Subject: [PATCH] [mlir][Interfaces][NFC] `ValueBoundsConstraintSet`:
@@ -316,6 +317,9 @@ class ValueBoundsConstraintSet {
/// Builder for constructing affine expressions.
Builder builder;
+
+ /// The current stop condition function.
+ StopConditionFn stopCondition = nullptr;
matthias-springer wrote:
Actually I ran into t
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/85895
>From 8057ddd7f467891b5fec9c1f7426fd06012453fb Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 22 Mar 2024 02:03:32 +
Subject: [PATCH] [mlir][SCF] `ValueBoundsConstraintSet`: Support pre
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/86239
This commit simplifies the implementation of the `ValueBoundsOpInterface` for
`scf.for` based on the newly added `ValueBoundsConstraintSet::compare` API and
adds additional documentation.
Previously,
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/86098
>From f94427911043e2f4f8db4ea83800ceea19a5ac39 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 23 Mar 2024 05:55:09 +
Subject: [PATCH] [mlir][Interfaces][NFC] `ValueBoundsConstraintSet`:
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/86099
>From ad1b2ac46a744887594e13370762939034797d31 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 23 Mar 2024 05:57:33 +
Subject: [PATCH] [mlir][Interfaces][NFC] `ValueBoundsConstraintSet`:
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/85895
>From b4bab14a9451e0dd1663fcbce5718d053ba68e5a Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 23 Mar 2024 05:59:33 +
Subject: [PATCH] [mlir][SCF] `ValueBoundsConstraintSet`: Support pre
@@ -198,6 +198,28 @@ class ValueBoundsConstraintSet {
std::optional dim1 = std::nullopt,
std::optional dim2 = std::nullopt);
+ /// Traverse the IR starting from the given value/dim and add populate
+ /// constraints as long as th
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/86239
>From 3c4adb5458f054634d51e1502736bb3dbebad106 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 23 Mar 2024 06:02:28 +
Subject: [PATCH] [mlir][SCF][NFC] `ValueBoundsConstraintSet`: Simpli
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/86383
This commit adds a `ValueBoundsOpInterface` implementation for `arith.select`.
The implementation is almost identical to `scf.if` (#85895), but there is one
special case: if the condition is a shaped v
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/86915
This commit adds a new public API to `ValueBoundsOpInterface` to compare
values/dims. Supported comparison operators are: LT, LE, EQ, GE, GT.
The new `ValueBoundsOpInterface::compare` API replaces and
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/86915
___
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/matthias-springer edited
https://github.com/llvm/llvm-project/pull/86915
___
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/matthias-springer created
https://github.com/llvm/llvm-project/pull/87976
This was likely a copy-and-paste typo.
>From a09cbb284df8419e6ce819e289aa88bf86b66842 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Mon, 8 Apr 2024 09:44:02 +
Subject: [PATCH] [mlir][Inter
matthias-springer wrote:
It is currently not possible to trigger this bug. New columns are always added
to the constraint set as symbols. Only the first added SSA value (for which we
compute a bound) is added as a dimension. There is currently no API to compute
a bounds for an "AffineMap + ope
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/87976
>From 4a019ca348ce2a65684e6417b656a51437e8176d Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Mon, 8 Apr 2024 09:44:02 +
Subject: [PATCH] [mlir][Interfaces] `ValueBoundsOpInterface`: Fix typ
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/87980
This commit generalizes and cleans up the `ValueBoundsConstraintSet` API. The
API used to provide function overloads for comparing/computing bounds of:
- index-typed SSA value
- dimension of shaped valu
@@ -75,6 +75,75 @@ struct MulIOpInterface
}
};
+struct SelectOpInterface
matthias-springer wrote:
`SelectOpInterface` was already merged. I have to rebase.
https://github.com/llvm/llvm-project/pull/87980
___
llv
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/87976
>From d8c3fd63044c9b7dfd33c2023729b9a4b72b4886 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Mon, 8 Apr 2024 09:44:02 +
Subject: [PATCH] [mlir][Interfaces] `ValueBoundsOpInterface`: Fix typ
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/87980
>From 183ab14683a335e65891e1d585f69231699efceb Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Mon, 8 Apr 2024 11:25:29 +
Subject: [PATCH] [mlir][Interfaces][WIP] `ValueBoundsOpInterface`: `V
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/87980
___
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/matthias-springer edited
https://github.com/llvm/llvm-project/pull/87980
___
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/matthias-springer created
https://github.com/llvm/llvm-project/pull/93412
This commit adds a dialect conversion driver without rollback:
`OneShotDialectConversionDriver`
The new driver reuses some functionality of the greedy pattern rewrite driver.
Just a proof of concept,
matthias-springer wrote:
The final `OneShotConversionPatternRewriter` will support everything that
`ConversionPatternRewriter` supports. A few helper functions are still missing
in this PR:
- `applySignatureConversion`
- `convertRegionTypes`
- `convertNonEntryRegionTypes`
- `replaceUsesOfBlock
matthias-springer wrote:
You are right, there is one thing that conversion patterns are no longer
allowed to do. From the RFC:
```
One change is needed for existing conversion patterns: they must not modify the
IR if they
return failure. (Same as ordinary rewrite patterns.) Most patterns should
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/108359
The dialect conversion maintains a set of unresolved materializations
(`UnrealizedConversionCastOp`). Turn that set into a `DenseMap` that maps from
ops to `UnresolvedMaterializationRewrite *`. This i
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/108381
PR #106760 aligned the handling of dropped block arguments and dropped op
results. The two helper functions that insert source materializations for uses
of replaced block arguments / op results that s
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/108381
>From 0fd4cb81dbf6e9c2766a086e2e3fdffd3cf67510 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Thu, 12 Sep 2024 14:49:23 +0200
Subject: [PATCH] [mlir][Transforms] Dialect conversion: Unify mater
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/113032
>From 7ac8aa2ee4ee5634d8dd6f2d64d0e10b800e2d70 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 19 Oct 2024 12:05:13 +0200
Subject: [PATCH] [mlir][Transforms] Merge 1:1 and 1:N type converte
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/113032
The 1:N type converter derived from the 1:1 type converter and extends it with
1:N target materializations. This commit merges the two type converters and
stores 1:N target materializations in the 1:1
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/114017
Draft. Do not review yet.
Depends on #113999.
>From e88daefdd87df823bbfbe34cb44cb9ef00bd4e62 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Tue, 29 Oct 2024 09:51:11 +0100
Subject: [PATCH] [
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/114152
The dialect conversion-based bufferization passes have been migrated to
One-Shot Bufferize about two years ago. To clean up the code base, this commit
removes the `func-bufferize` pass, one of the few
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114154
>From 7c2f6b68d81536889deae221db5df3565089b60b Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Wed, 30 Oct 2024 00:46:05 +0100
Subject: [PATCH] [mlir][bufferization] Remove `finalizing-bufferize
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/114154
The dialect conversion-based bufferization passes have been migrated to
One-Shot Bufferize about two years ago. To clean up the code base, this commit
removes the `finalizing-bufferize` pass, one of t
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114017
>From 684ac4a0795d5fadef5a16a3acd45eddf838c857 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Tue, 29 Oct 2024 09:51:11 +0100
Subject: [PATCH] [mlir][bufferization] Add support for non-unique
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/114155
This commit removes the last remaining components of the dialect
conversion-based bufferization passes.
Note for LLVM integration: If you depend on these components, migrate to
One-Shot Bufferize or
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114017
>From 35223119257ac8afd71803871fcaa08fb19da4a5 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Tue, 29 Oct 2024 09:51:11 +0100
Subject: [PATCH] [mlir][bufferization] Add support for non-unique
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114155
>From d1d51e36de6a31bd6d7cef395a3da1bde692cbde Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Wed, 30 Oct 2024 00:58:32 +0100
Subject: [PATCH] [mlir][bufferization] Remove remaining dialect
co
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114017
>From 13808b4f86dba3f3baa652b41e769d2a19973028 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Tue, 29 Oct 2024 09:51:11 +0100
Subject: [PATCH] [mlir][bufferization] Add support for non-unique
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/114017
___
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/matthias-springer edited
https://github.com/llvm/llvm-project/pull/114017
___
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/matthias-springer ready_for_review
https://github.com/llvm/llvm-project/pull/114017
___
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/matthias-springer created
https://github.com/llvm/llvm-project/pull/115587
The `properlyDominates` implementations for blocks and ops are very similar.
This commit replaces them with a single implementation that operates on block
iterators. That implementation can be used to
@@ -641,3 +641,76 @@ void OpBuilder::cloneRegionBefore(Region ®ion, Region
&parent,
void OpBuilder::cloneRegionBefore(Region ®ion, Block *before) {
cloneRegionBefore(region, *before->getParent(), before->getIterator());
}
+
+//===-
@@ -334,6 +334,18 @@ class OpBuilder : public Builder {
/// This class represents a saved insertion point.
class InsertPoint {
public:
+/// Finds the closest insertion point where all given values are defined
matthias-springer wrote:
Possible candida
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/115587
>From 9979c6317d7410b8d8a9a06ecd404b2d4c495c3c Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 07:13:07 +0100
Subject: [PATCH] [mlir][IR][NFC] `DominanceInfo`: Share same impl fo
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/115597
Same as `DominanceInfo`, all functions should be `const`.
Depends on #115587.
>From caea72f975d38481d0544f52804192134a76 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 10:
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/115433
>From 213a01bb92eeab460fd82d881f53e96768e161ca Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Nov 2024 08:12:08 +0100
Subject: [PATCH] [mlir][IR] `DominanceInfo`: Deduplicate `properlyDo
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/115587
>From 57bd3919c4976f01fb0b6a15928545744e25d0cb Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 07:13:07 +0100
Subject: [PATCH] [mlir][IR][NFC] `DominanceInfo`: Share same impl fo
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/114940
___
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/matthias-springer edited
https://github.com/llvm/llvm-project/pull/114940
___
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/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114940
>From 8a49434df62e394cd109f0189349b4d28dafa525 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 12:29:16 +0100
Subject: [PATCH] [mlir][IR] Add `OpBuilder::setInsertionPointAfterVa
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/114940
___
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/matthias-springer created
https://github.com/llvm/llvm-project/pull/115816
This commit adds a new function
`ConversionPatternRewriter::replaceOpWithMultiple`. This function is similar to
`replaceOp`, but it accepts multiple `ValueRange` replacements, one per op
result.
Not
https://github.com/matthias-springer ready_for_review
https://github.com/llvm/llvm-project/pull/114940
___
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
@@ -341,6 +342,19 @@ class OpBuilder : public Builder {
InsertPoint(Block *insertBlock, Block::iterator insertPt)
: block(insertBlock), point(insertPt) {}
+/// Compute an insertion point to a place that post-dominates the
+/// definitions of all given value
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/114940
___
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/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114940
>From f1dbd8a29305afc1fcb19ef293c3de8383b48e79 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 12:29:16 +0100
Subject: [PATCH] [mlir][IR] Add `OpBuilder::setInsertionPointAfterVa
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/112141
___
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/matthias-springer updated
https://github.com/llvm/llvm-project/pull/115816
>From b425caab826e5d9ad2f078d6f548f3215005bf7f Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Tue, 12 Nov 2024 05:14:43 +0100
Subject: [PATCH 1/2] replace with multiple
---
mlir/include/mlir/
matthias-springer wrote:
> One question I have here is why not just insert right before the operation
> that is being replaced? What is the need for trying to insert after one of
> the values? Wouldnt' that remove the need for all of this complexity? It
> gives you a singular place to insert.
matthias-springer wrote:
> The only very high level conern I have is the use and need of
> `InsertionPoint::after`. As I understand, this is a not-yet-implemented
> optimization for the future for the purpose of reusing materializations by
> calculating a better insertion point where it may do
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/115433
>From d6ab91c2006c758c592ed964ad790b85808d44e2 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Fri, 8 Nov 2024 08:12:08 +0100
Subject: [PATCH] [mlir][IR] `DominanceInfo`: Deduplicate `properlyDo
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/115587
>From 247e4db0cef5c0ce2f15bba482b1214ab4fabc5c Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 07:13:07 +0100
Subject: [PATCH] [mlir][IR][NFC] `DominanceInfo`: Share same impl fo
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/114940
>From f716eaa7bfa4bf2e3971a908009255cccfd631df Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 12:29:16 +0100
Subject: [PATCH] [mlir][IR] Add `OpBuilder::setInsertionPointAfterVa
https://github.com/matthias-springer updated
https://github.com/llvm/llvm-project/pull/115597
>From e890126d7db83c24ea574df177d915cfa011c696 Mon Sep 17 00:00:00 2001
From: Matthias Springer
Date: Sat, 9 Nov 2024 10:40:09 +0100
Subject: [PATCH] [mlir][IR][NFC] `PostDominanceInfo`: Mark all funct
https://github.com/matthias-springer edited
https://github.com/llvm/llvm-project/pull/109540
___
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/matthias-springer created
https://github.com/llvm/llvm-project/pull/110419
This commit simplifies the signature of `OperationConverter::finalize`. This
function always returns "success", so the return value can be removed.
Note: Previously, this function used to return "fail
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/115430
Remove `properlyDominatesImpl` and implement the functionality in
`properlyDominates` directly.
Depends on #115413.
>From 58fbba463e7ed6bc03ad3276a4ed72b1f24d313a Mon Sep 17 00:00:00 2001
From: Matt
https://github.com/matthias-springer created
https://github.com/llvm/llvm-project/pull/115433
The implementations of `DominanceInfo::properlyDominates` and
`PostDominanceInfo::properlyPostDominates` are almost identical: only one line
of code is different. Define the function in `DominanceInfo
101 - 200 of 376 matches
Mail list logo