<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>Revert "[mlir][memref]: Collapse strided unit dim even if strides are dynamic" (#166448)</title>
<updated>2025-11-04T21:49:46+00:00</updated>
<author>
<name>Han-Chung Wang</name>
<email>hanhan0912@gmail.com</email>
</author>
<published>2025-11-04T21:49:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b21949eb34037aa1811cc55609ab46c577feab63'/>
<id>b21949eb34037aa1811cc55609ab46c577feab63</id>
<content type='text'>
Reverts llvm/llvm-project#157330

The original revision introduces a bug in `isGuaranteedCollapsible`. The
`memref&lt;3x3x1x96xf32, strided&lt;[288, 96, 96, 1], offset: 864&gt;&gt;` is no
longer collapsable with the change. The revision reverts the change to
bring back correct behavior. `stride` should be computed as `96` like
the old behavior in the failed iteration.


https://github.com/llvm/llvm-project/blob/92a1eb37122fa24e3045fbabdea2bf87127cace5/mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp#L2597-L2605</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reverts llvm/llvm-project#157330

The original revision introduces a bug in `isGuaranteedCollapsible`. The
`memref&lt;3x3x1x96xf32, strided&lt;[288, 96, 96, 1], offset: 864&gt;&gt;` is no
longer collapsable with the change. The revision reverts the change to
bring back correct behavior. `stride` should be computed as `96` like
the old behavior in the failed iteration.


https://github.com/llvm/llvm-project/blob/92a1eb37122fa24e3045fbabdea2bf87127cace5/mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp#L2597-L2605</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir][memref]: Collapse strided unit dim even if strides are dynamic (#157330)</title>
<updated>2025-11-04T08:36:11+00:00</updated>
<author>
<name>Maya Amrami</name>
<email>62667278+amrami@users.noreply.github.com</email>
</author>
<published>2025-11-04T08:36:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f74e90961f51c9437461007c89b037be41e4e887'/>
<id>f74e90961f51c9437461007c89b037be41e4e887</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title> [MLIR] Revamp RegionBranchOpInterface  (#165429)</title>
<updated>2025-10-28T16:53:56+00:00</updated>
<author>
<name>Mehdi Amini</name>
<email>joker.eph@gmail.com</email>
</author>
<published>2025-10-28T16:53:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=41f65666f6378bba7266be7c662c70074f04ed75'/>
<id>41f65666f6378bba7266be7c662c70074f04ed75</id>
<content type='text'>
This is still somehow a WIP, we have some issues with this interface
that are not trivial to solve. This patch tries to make the concepts of
RegionBranchPoint and RegionSuccessor more robust and aligned with their
definition:
- A `RegionBranchPoint` is either the parent (`RegionBranchOpInterface`)
op or a `RegionBranchTerminatorOpInterface` operation in a nested
region.
- A `RegionSuccessor` is either one of the nested region or the parent
`RegionBranchOpInterface`

Some new methods with reasonnable default implementation are added to
help resolving the flow of values across the RegionBranchOpInterface.

It is still not trivial in the current state to walk the def-use chain
backward with this interface. For example when you have the 3rd block
argument in the entry block of a for-loop, finding the matching operands
requires to know about the hidden loop iterator block argument and where
the iterargs start. The API is designed around forward-tracking of the
chain unfortunately.

Try to reland #161575 ; I suspect a buildbot incremental build issue.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is still somehow a WIP, we have some issues with this interface
that are not trivial to solve. This patch tries to make the concepts of
RegionBranchPoint and RegionSuccessor more robust and aligned with their
definition:
- A `RegionBranchPoint` is either the parent (`RegionBranchOpInterface`)
op or a `RegionBranchTerminatorOpInterface` operation in a nested
region.
- A `RegionSuccessor` is either one of the nested region or the parent
`RegionBranchOpInterface`

Some new methods with reasonnable default implementation are added to
help resolving the flow of values across the RegionBranchOpInterface.

It is still not trivial in the current state to walk the def-use chain
backward with this interface. For example when you have the 3rd block
argument in the entry block of a for-loop, finding the matching operands
requires to know about the hidden loop iterator block argument and where
the iterargs start. The API is designed around forward-tracking of the
chain unfortunately.

Try to reland #161575 ; I suspect a buildbot incremental build issue.</pre>
</div>
</content>
</entry>
<entry>
<title>Revert " [MLIR] Revamp RegionBranchOpInterface " (#165356)</title>
<updated>2025-10-28T08:06:14+00:00</updated>
<author>
<name>Mehdi Amini</name>
<email>joker.eph@gmail.com</email>
</author>
<published>2025-10-28T08:06:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e3c547179f587299378397ac5c7f7eb8f4ca7976'/>
<id>e3c547179f587299378397ac5c7f7eb8f4ca7976</id>
<content type='text'>
Reverts llvm/llvm-project#161575

Broke Windows on ARM buildbot build, needs investigations.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reverts llvm/llvm-project#161575

Broke Windows on ARM buildbot build, needs investigations.</pre>
</div>
</content>
</entry>
<entry>
<title> [MLIR] Revamp RegionBranchOpInterface  (#161575)</title>
<updated>2025-10-28T07:47:26+00:00</updated>
<author>
<name>Mehdi Amini</name>
<email>joker.eph@gmail.com</email>
</author>
<published>2025-10-28T07:47:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=ab1fd21b541056ccd1e0584e438082f417ad3cb4'/>
<id>ab1fd21b541056ccd1e0584e438082f417ad3cb4</id>
<content type='text'>
This is still somehow a WIP, we have some issues with this interface
that are not trivial to solve. This patch tries to make the concepts of
RegionBranchPoint and RegionSuccessor more robust and aligned with their
definition:
- A `RegionBranchPoint` is either the parent (`RegionBranchOpInterface`)
op or a `RegionBranchTerminatorOpInterface` operation in a nested
region.
- A `RegionSuccessor` is either one of the nested region or the parent
`RegionBranchOpInterface`

Some new methods with reasonnable default implementation are added to
help resolving the flow of values across the RegionBranchOpInterface.

It is still not trivial in the current state to walk the def-use chain
backward with this interface. For example when you have the 3rd block
argument in the entry block of a for-loop, finding the matching operands
requires to know about the hidden loop iterator block argument and where
the iterargs start. The API is designed around forward-tracking of the
chain unfortunately.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is still somehow a WIP, we have some issues with this interface
that are not trivial to solve. This patch tries to make the concepts of
RegionBranchPoint and RegionSuccessor more robust and aligned with their
definition:
- A `RegionBranchPoint` is either the parent (`RegionBranchOpInterface`)
op or a `RegionBranchTerminatorOpInterface` operation in a nested
region.
- A `RegionSuccessor` is either one of the nested region or the parent
`RegionBranchOpInterface`

Some new methods with reasonnable default implementation are added to
help resolving the flow of values across the RegionBranchOpInterface.

It is still not trivial in the current state to walk the def-use chain
backward with this interface. For example when you have the 3rd block
argument in the entry block of a for-loop, finding the matching operands
requires to know about the hidden loop iterator block argument and where
the iterargs start. The API is designed around forward-tracking of the
chain unfortunately.
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir][IR] Add implicit conversion operator to `TypedValue` (#164621)</title>
<updated>2025-10-23T07:24:30+00:00</updated>
<author>
<name>Matthias Springer</name>
<email>me@m-sp.org</email>
</author>
<published>2025-10-23T07:24:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=fb4c05cf036e09ed97a48a6c515befbcc9198c61'/>
<id>fb4c05cf036e09ed97a48a6c515befbcc9198c61</id>
<content type='text'>
Allow implicit conversion from `TypedValue&lt;B&gt;` to `TypedValue&lt;A&gt;` if `B`
is assignable to `A`.

Example:
```c++
TypedValue&lt;MemRefType&gt; val;
TypedValue&lt;ShapedType&gt; shapedVal = val;  // this is now valid
```</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Allow implicit conversion from `TypedValue&lt;B&gt;` to `TypedValue&lt;A&gt;` if `B`
is assignable to `A`.

Example:
```c++
TypedValue&lt;MemRefType&gt; val;
TypedValue&lt;ShapedType&gt; shapedVal = val;  // this is now valid
```</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir][memref] Fold extract_strided_metadata(cast(x)) into extract_strided_metadata(x) (#164585)</title>
<updated>2025-10-23T00:54:38+00:00</updated>
<author>
<name>Ming Yan</name>
<email>ming.yan@terapines.com</email>
</author>
<published>2025-10-23T00:54:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4eaeeab771a902c2069cca3bcf9072acc282e6b4'/>
<id>4eaeeab771a902c2069cca3bcf9072acc282e6b4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir][memref] Canonicalize memref.reinterpret_cast when offset/sizes/strides are constants. (#163505)</title>
<updated>2025-10-17T10:19:35+00:00</updated>
<author>
<name>Ming Yan</name>
<email>ming.yan@terapines.com</email>
</author>
<published>2025-10-17T10:19:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c988bf82e0b400c48687480d8092c877f6560914'/>
<id>c988bf82e0b400c48687480d8092c877f6560914</id>
<content type='text'>
Implement folding logic to canonicalize memref.reinterpret_cast ops when
offset, sizes and strides are compile-time constants. This removes
dynamic shape annotations and produces a static memref form, allowing
further lowering and backend optimizations.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement folding logic to canonicalize memref.reinterpret_cast ops when
offset, sizes and strides are compile-time constants. This removes
dynamic shape annotations and produces a static memref form, allowing
further lowering and backend optimizations.</pre>
</div>
</content>
</entry>
<entry>
<title>Reland "[mlir] Add strided metadata range dataflow analysis" (#163403)" (#163408)</title>
<updated>2025-10-14T15:16:30+00:00</updated>
<author>
<name>Fabian Mora</name>
<email>fmora.dev@gmail.com</email>
</author>
<published>2025-10-14T15:16:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b2797d9b8236a40ee30d6daf4e603a82da9a94d4'/>
<id>b2797d9b8236a40ee30d6daf4e603a82da9a94d4</id>
<content type='text'>
This relands commit aa8499863ad23350da0912d99d189f306d0ea139. That
commit was originally reverted because it caused failures in shared lib
builds due to missing link dependencies. This patch relands the commit
with the missing libs added.

Signed-off-by: Fabian Mora &lt;fabian.mora-cordero@amd.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This relands commit aa8499863ad23350da0912d99d189f306d0ea139. That
commit was originally reverted because it caused failures in shared lib
builds due to missing link dependencies. This patch relands the commit
with the missing libs added.

Signed-off-by: Fabian Mora &lt;fabian.mora-cordero@amd.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "[mlir] Add strided metadata range dataflow analysis" (#163403)</title>
<updated>2025-10-14T14:21:17+00:00</updated>
<author>
<name>Fabian Mora</name>
<email>fmora.dev@gmail.com</email>
</author>
<published>2025-10-14T14:21:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4c0692edb445c5d90a189f5c12e5433b8e84a713'/>
<id>4c0692edb445c5d90a189f5c12e5433b8e84a713</id>
<content type='text'>
Reverts llvm/llvm-project#161280</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reverts llvm/llvm-project#161280</pre>
</div>
</content>
</entry>
</feed>
