<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/llvm.git/mlir/docs/PatternRewriter.md, branch EmptyLineAfterFunctionDefinition</title>
<subtitle>github.com: llvm/llvm-project.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/'/>
<entry>
<title>[mlir:GreedyPatternRewriter] Add debug logging for pattern rewriter actions</title>
<updated>2021-10-21T17:14:35+00:00</updated>
<author>
<name>River Riddle</name>
<email>riddleriver@gmail.com</email>
</author>
<published>2021-10-21T17:07:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=5652ecc3739df66b259bd9d40b210ee1b8f35248'/>
<id>5652ecc3739df66b259bd9d40b210ee1b8f35248</id>
<content type='text'>
This effectively mirrors the logging in dialect conversion, which has proven
very useful for understanding the pattern application process.

Differential Revision: https://reviews.llvm.org/D112120
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This effectively mirrors the logging in dialect conversion, which has proven
very useful for understanding the pattern application process.

Differential Revision: https://reviews.llvm.org/D112120
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir] Add support for filtering patterns based on debug names and labels</title>
<updated>2021-06-02T19:05:25+00:00</updated>
<author>
<name>River Riddle</name>
<email>riddleriver@gmail.com</email>
</author>
<published>2021-06-02T18:43:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=0289a2692e0e1b6b846f0627262d15daa58160ac'/>
<id>0289a2692e0e1b6b846f0627262d15daa58160ac</id>
<content type='text'>
This revision allows for attaching "debug labels" to patterns, and provides to FrozenRewritePatternSet for  filtering patterns based on these labels (in addition to the debug name of the pattern). This will greatly simplify the ability to write tests targeted towards specific patterns (in cases where many patterns may interact),  will also simplify debugging pattern application by observing how application changes when enabling/disabling specific patterns.

To enable better reuse of pattern rewrite options between passes, this revision also adds a new PassUtil.td file to the Rewrite/ library that will allow for passes to easily hook into a common interface for pattern debugging. Two options are used to seed this utility, `disable-patterns` and `enable-patterns`, which are used to enable the filtering behavior indicated above.

Differential Revision: https://reviews.llvm.org/D102441
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This revision allows for attaching "debug labels" to patterns, and provides to FrozenRewritePatternSet for  filtering patterns based on these labels (in addition to the debug name of the pattern). This will greatly simplify the ability to write tests targeted towards specific patterns (in cases where many patterns may interact),  will also simplify debugging pattern application by observing how application changes when enabling/disabling specific patterns.

To enable better reuse of pattern rewrite options between passes, this revision also adds a new PassUtil.td file to the Rewrite/ library that will allow for passes to easily hook into a common interface for pattern debugging. Two options are used to seed this utility, `disable-patterns` and `enable-patterns`, which are used to enable the filtering behavior indicated above.

Differential Revision: https://reviews.llvm.org/D102441
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir][doc] Fix links and references in top level docs directory</title>
<updated>2021-05-24T16:43:00+00:00</updated>
<author>
<name>Markus Böck</name>
<email>markus.boeck02@gmail.com</email>
</author>
<published>2021-05-24T16:40:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=d35bd98651ec64a8c6c9e5b942d950a20ecdcb79'/>
<id>d35bd98651ec64a8c6c9e5b942d950a20ecdcb79</id>
<content type='text'>
This is the fourth and final patch in a series of patches fixing markdown links and references inside the mlir documentation. This patch combined with the other three should fix almost every broken link on mlir.llvm.org as far as I can tell.

This patch in particular addresses all Markdown files in the top level docs directory.

Differential Revision: https://reviews.llvm.org/D103032
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the fourth and final patch in a series of patches fixing markdown links and references inside the mlir documentation. This patch combined with the other three should fix almost every broken link on mlir.llvm.org as far as I can tell.

This patch in particular addresses all Markdown files in the top level docs directory.

Differential Revision: https://reviews.llvm.org/D103032
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir] Allow derived rewrite patterns to define a non-virtual `initialize` hook</title>
<updated>2021-05-18T21:40:32+00:00</updated>
<author>
<name>River Riddle</name>
<email>riddleriver@gmail.com</email>
</author>
<published>2021-05-18T21:31:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=2257e4a70e4aabe7255161f3a54922d7dcf1c059'/>
<id>2257e4a70e4aabe7255161f3a54922d7dcf1c059</id>
<content type='text'>
This is a hook that allows for providing custom initialization of the pattern, e.g. if it has bounded recursion, setting the debug name, etc., without needing to define a custom constructor. A non-virtual hook was chosen to avoid polluting the vtable with code that we really just want to be inlined when constructing the pattern. The alternative to this would be to just define a constructor for each pattern, this unfortunately creates a lot of otherwise unnecessary boiler plate for a lot of patterns and a hook provides a much simpler/cleaner interface for the very common case.

Differential Revision: https://reviews.llvm.org/D102440
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a hook that allows for providing custom initialization of the pattern, e.g. if it has bounded recursion, setting the debug name, etc., without needing to define a custom constructor. A non-virtual hook was chosen to avoid polluting the vtable with code that we really just want to be inlined when constructing the pattern. The alternative to this would be to just define a constructor for each pattern, this unfortunately creates a lot of otherwise unnecessary boiler plate for a lot of patterns and a hook provides a much simpler/cleaner interface for the very common case.

Differential Revision: https://reviews.llvm.org/D102440
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir-docs] Add a blurb on recursion during pattern application</title>
<updated>2021-05-18T21:40:32+00:00</updated>
<author>
<name>River Riddle</name>
<email>riddleriver@gmail.com</email>
</author>
<published>2021-05-18T21:31:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=93cb71a4649ac71b9aca48ba5496f11ffbc4b26d'/>
<id>93cb71a4649ac71b9aca48ba5496f11ffbc4b26d</id>
<content type='text'>
We currently do not document how the pattern rewriter infra treats recursion when it gets detected. This revision adds a blurb on recursion in patterns, and how patterns can signal that they are equipped to handle it.

Differential Revision: https://reviews.llvm.org/D102439
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We currently do not document how the pattern rewriter infra treats recursion when it gets detected. This revision adds a blurb on recursion in patterns, and how patterns can signal that they are equipped to handle it.

Differential Revision: https://reviews.llvm.org/D102439
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge with mainline.</title>
<updated>2021-05-17T18:15:10+00:00</updated>
<author>
<name>Chris Lattner</name>
<email>clattner@nondot.org</email>
</author>
<published>2021-05-17T16:51:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=648f34a2840b75f4081884052f2ccb11f62f8209'/>
<id>648f34a2840b75f4081884052f2ccb11f62f8209</id>
<content type='text'>
Differential Revision: https://reviews.llvm.org/D102636
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Differential Revision: https://reviews.llvm.org/D102636
</pre>
</div>
</content>
</entry>
<entry>
<title>[PatternMatch] Big mechanical rename OwningRewritePatternList -&gt; RewritePatternSet and insert -&gt; add.  NFC</title>
<updated>2021-03-23T00:20:50+00:00</updated>
<author>
<name>Chris Lattner</name>
<email>clattner@nondot.org</email>
</author>
<published>2021-03-22T23:58:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=dc4e913be9c3d1c37f66348d4b5047a107499b53'/>
<id>dc4e913be9c3d1c37f66348d4b5047a107499b53</id>
<content type='text'>
This doesn't change APIs, this just cleans up the many in-tree uses of these
names to use the new preferred names.  We'll keep the old names around for a
couple weeks to help transitions.

Differential Revision: https://reviews.llvm.org/D99127
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This doesn't change APIs, this just cleans up the many in-tree uses of these
names to use the new preferred names.  We'll keep the old names around for a
couple weeks to help transitions.

Differential Revision: https://reviews.llvm.org/D99127
</pre>
</div>
</content>
</entry>
<entry>
<title>[Branch-Rename] Fix some links</title>
<updated>2021-02-01T11:13:21+00:00</updated>
<author>
<name>xgupta</name>
<email>shivam98.tkg@gmail.com</email>
</author>
<published>2021-02-01T07:24:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=94fac81fccfef9917e94bed398781744fb82e159'/>
<id>94fac81fccfef9917e94bed398781744fb82e159</id>
<content type='text'>
According to the [[ https://foundation.llvm.org/docs/branch-rename/ | status of branch rename ]], the master branch of the LLVM repository is removed on 28 Jan 2021.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D95766
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
According to the [[ https://foundation.llvm.org/docs/branch-rename/ | status of branch rename ]], the master branch of the LLVM repository is removed on 28 Jan 2021.

Reviewed By: mehdi_amini

Differential Revision: https://reviews.llvm.org/D95766
</pre>
</div>
</content>
</entry>
<entry>
<title>[MLIR][Docs] Fix a small typo in documentation.</title>
<updated>2020-12-21T21:30:22+00:00</updated>
<author>
<name>ergawy</name>
<email>kareem.ergawy@gmail.com</email>
</author>
<published>2020-12-21T08:40:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=9d2529a38b34d06dbe17020b98db1ee21d9a628c'/>
<id>9d2529a38b34d06dbe17020b98db1ee21d9a628c</id>
<content type='text'>
Just fixes a tiny typo in a link between 2 pages.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D93616
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Just fixes a tiny typo in a link between 2 pages.

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D93616
</pre>
</div>
</content>
</entry>
<entry>
<title>[mlir][Pattern] Refactor the Pattern class into a "metadata only" class</title>
<updated>2020-10-27T01:01:06+00:00</updated>
<author>
<name>River Riddle</name>
<email>riddleriver@gmail.com</email>
</author>
<published>2020-10-27T00:23:41+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/llvm.git/commit/?id=b99bd771626fbbf8b9b29ce312d4151968796826'/>
<id>b99bd771626fbbf8b9b29ce312d4151968796826</id>
<content type='text'>
The Pattern class was originally intended to be used for solely matching operations, but that use never materialized. All of the pattern infrastructure uses RewritePattern, and the infrastructure for pure matching(Matchers.h) is implemented inline. This means that this class isn't a useful abstraction at the moment, so this revision refactors it to solely encapsulate the "metadata" of a pattern. The metadata includes the various state describing a pattern; benefit, root operation, etc. The API on PatternApplicator is updated to now operate on `Pattern`s as nothing special from `RewritePattern` is necessary.

This refactoring is also necessary for the upcoming use of PDL patterns alongside C++ rewrite patterns.

Differential Revision: https://reviews.llvm.org/D86258
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Pattern class was originally intended to be used for solely matching operations, but that use never materialized. All of the pattern infrastructure uses RewritePattern, and the infrastructure for pure matching(Matchers.h) is implemented inline. This means that this class isn't a useful abstraction at the moment, so this revision refactors it to solely encapsulate the "metadata" of a pattern. The metadata includes the various state describing a pattern; benefit, root operation, etc. The API on PatternApplicator is updated to now operate on `Pattern`s as nothing special from `RewritePattern` is necessary.

This refactoring is also necessary for the upcoming use of PDL patterns alongside C++ rewrite patterns.

Differential Revision: https://reviews.llvm.org/D86258
</pre>
</div>
</content>
</entry>
</feed>
