PATCH: R600/SI: Do abs/neg folding with ComplexPatterns

Tom Stellard tom at stellard.net
Mon Jun 30 14:21:44 PDT 2014


Hi,

The attached patches move the abs/neg folding for SI into
ISel using complex patterns.  The first patch adds a pass called
SIShrinkInstructions, which converts instructions from 64-bit to 32-bit
encodings.  The next 4 patches do some tablegen refactoring, then patches
6 and 7 actually move the abs/neg folding.

With these patches we now select to the 64-bit encoding for most instructions,
which is why the SIShrinkInstructions pass was added.  Also, some of the
integer VOP3 instructions no longer have the modifiers operands.

-Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-R600-SI-Add-instruction-shrinking-pass.patch
Type: text/x-diff
Size: 14587 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140630/0edda7e5/attachment.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-R600-SI-Initialize-unused-VOP3-sources-to-0-instead-.patch
Type: text/x-diff
Size: 2280 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140630/0edda7e5/attachment-0001.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-R600-SI-Initailize-encoding-fields-of-unused-VOP3-mo.patch
Type: text/x-diff
Size: 1785 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140630/0edda7e5/attachment-0002.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-R600-SI-Separate-encoding-and-operand-definitions-in.patch
Type: text/x-diff
Size: 13912 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140630/0edda7e5/attachment-0003.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-R600-SI-Refactor-VOP3-instruction-definitions.patch
Type: text/x-diff
Size: 4521 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140630/0edda7e5/attachment-0004.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0006-TableGen-Allow-AddedComplexity-values-to-be-negative.patch
Type: text/x-diff
Size: 5383 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140630/0edda7e5/attachment-0005.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0007-R600-SI-Do-abs-neg-folding-with-ComplexPatterns.patch
Type: text/x-diff
Size: 39754 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140630/0edda7e5/attachment-0006.patch>


More information about the llvm-commits mailing list