<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/mlir/lib/Dialect/SPIRV, branch meklort-10.0.1</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.1'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2020-01-15T00:18:42+00:00</updated>
<entry>
<title>[mlir][spirv] Properly support SPIR-V conversion target</title>
<updated>2020-01-15T00:18:42+00:00</updated>
<author>
<name>Lei Zhang</name>
<email>antiagainst@google.com</email>
</author>
<published>2020-01-14T23:23:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=47c6ab2b97773ee5fb360fc093a5824be64b8c68'/>
<id>urn:sha1:47c6ab2b97773ee5fb360fc093a5824be64b8c68</id>
<content type='text'>
This commit defines a new SPIR-V dialect attribute for specifying
a SPIR-V target environment. It is a dictionary attribute containing
the SPIR-V version, supported extension list, and allowed capability
list. A SPIRVConversionTarget subclass is created to take in the
target environment and sets proper dynmaically legal ops by querying
the op availability interface of SPIR-V ops to make sure they are
available in the specified target environment. All existing conversions
targeting SPIR-V is changed to use this SPIRVConversionTarget. It
probes whether the input IR has a `spv.target_env` attribute,
otherwise, it uses the default target environment: SPIR-V 1.0 with
Shader capability and no extra extensions.

Differential Revision: https://reviews.llvm.org/D72256
</content>
</entry>
<entry>
<title>Make helper functions static or move them into anonymous namespaces.  NFC.</title>
<updated>2020-01-14T13:06:37+00:00</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2020-01-14T13:06:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=df186507e1d07c3ddba091a076ba7a33dbdc5867'/>
<id>urn:sha1:df186507e1d07c3ddba091a076ba7a33dbdc5867</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[mlir] NFC: Remove Value::operator* and Value::operator-&gt; now that Value is properly value-typed.</title>
<updated>2020-01-11T16:54:39+00:00</updated>
<author>
<name>River Riddle</name>
<email>riverriddle@google.com</email>
</author>
<published>2020-01-11T16:54:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=2bdf33cc4c733342fc83081bc7410ac5e9a24f55'/>
<id>urn:sha1:2bdf33cc4c733342fc83081bc7410ac5e9a24f55</id>
<content type='text'>
Summary: These were temporary methods used to simplify the transition.

Reviewed By: antiagainst

Differential Revision: https://reviews.llvm.org/D72548
</content>
</entry>
<entry>
<title>[mlir][spirv] Fix typos related to (de)serialization.</title>
<updated>2020-01-10T17:01:28+00:00</updated>
<author>
<name>Denis Khalikov</name>
<email>khalikov.denis@huawei.com</email>
</author>
<published>2020-01-10T16:56:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=0b032d7ba7157b62cd0d39f8d2dc0b0efa57a710'/>
<id>urn:sha1:0b032d7ba7157b62cd0d39f8d2dc0b0efa57a710</id>
<content type='text'>
Fix typos related to (de)serialization of spv.selection.

Differential Revision: https://reviews.llvm.org/D72503
</content>
</entry>
<entry>
<title>Sprinkle some constexpr on default ctors so the compiler can diagnose unused instances. NFCI.</title>
<updated>2020-01-10T13:59:24+00:00</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2020-01-10T13:58:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=e49c3c8f2ef97bdf256ca76f3d001eeb79361d56'/>
<id>urn:sha1:e49c3c8f2ef97bdf256ca76f3d001eeb79361d56</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[mlir][spirv] Fix ADDITIONAL_HEADER_DIRS for SPIR-V libraries</title>
<updated>2020-01-03T20:06:09+00:00</updated>
<author>
<name>Lei Zhang</name>
<email>antiagainst@google.com</email>
</author>
<published>2020-01-03T20:05:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=1570084d334311907c70c9179c19af8541524fff'/>
<id>urn:sha1:1570084d334311907c70c9179c19af8541524fff</id>
<content type='text'>
SPIRV/ headers live under mlir/Dialect/.

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D72141
</content>
</entry>
<entry>
<title>[mlir][spirv] Fix shader ABI attribute prefix and add verification</title>
<updated>2020-01-03T12:44:27+00:00</updated>
<author>
<name>Lei Zhang</name>
<email>antiagainst@google.com</email>
</author>
<published>2020-01-03T12:37:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=b3d286776941aef765f8858d95f80808b528f2fa'/>
<id>urn:sha1:b3d286776941aef765f8858d95f80808b528f2fa</id>
<content type='text'>
This commit fixes shader ABI attributes to use `spv.` as the prefix
so that they match the dialect's namespace. This enables us to add
verification hooks in the SPIR-V dialect to verify them.

Reviewed By: mravishankar

Differential Revision: https://reviews.llvm.org/D72062
</content>
</entry>
<entry>
<title>[mlir][spirv] Allow specifying availability on enum attribute cases</title>
<updated>2020-01-02T18:19:44+00:00</updated>
<author>
<name>Lei Zhang</name>
<email>antiagainst@google.com</email>
</author>
<published>2020-01-02T18:19:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=a81cb1b8bf580d6ab15d9ed6ff4f104eeedd3a1d'/>
<id>urn:sha1:a81cb1b8bf580d6ab15d9ed6ff4f104eeedd3a1d</id>
<content type='text'>
Lots of SPIR-V ops take enum attributes and certain enum cases
need extra capabilities or extensions to be available. This commit
extends to allow specifying availability spec on enum cases.
Extra utility functions are generated for the corresponding enum
classes to return the availability requirement. The availability
interface implemention for a SPIR-V op now goes over all enum
attributes to collect the availability requirements.

Reviewed By: mravishankar

Differential Revision: https://reviews.llvm.org/D71947
</content>
</entry>
<entry>
<title>[mlir][spirv] NFC: Move shader ABI attributes to a new file</title>
<updated>2020-01-02T03:43:09+00:00</updated>
<author>
<name>Lei Zhang</name>
<email>antiagainst@google.com</email>
</author>
<published>2020-01-02T03:42:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=0359e1d6be2e4449ece5063c6b2a08a5094798b4'/>
<id>urn:sha1:0359e1d6be2e4449ece5063c6b2a08a5094798b4</id>
<content type='text'>
This allows us to include the definitions of these attributes in
other files without pulling in all dependencies for lowering.

Reviewed By: mravishankar

Differential Revision: https://reviews.llvm.org/D72054
</content>
</entry>
<entry>
<title>[mlir][spirv] Add basic definitions for supporting availability</title>
<updated>2019-12-27T21:25:09+00:00</updated>
<author>
<name>Lei Zhang</name>
<email>antiagainst@google.com</email>
</author>
<published>2019-12-27T21:24:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=b30d87a90ba983d76f8a6cd334ac38244bbf9ded'/>
<id>urn:sha1:b30d87a90ba983d76f8a6cd334ac38244bbf9ded</id>
<content type='text'>
SPIR-V has a few mechanisms to control op availability: version,
extension, and capabilities. These mechanisms are considered as
different availability classes.

This commit introduces basic definitions for modelling SPIR-V
availability classes. Specifically, an `Availability` class is
added to SPIRVBase.td, along with two subclasses: MinVersion
and MaxVersion for versioning. SPV_Op is extended to take a
list of `Availability`. Each `Availability` instance carries
information for generating op interfaces for the corresponding
availability class and also the concrete availability
requirements.

With the availability spec on ops, we can now auto-generate the
op interfaces of all SPIR-V availability classes and also
synthesize the op's implementations of these interfaces. The
interface generation is done via new TableGen backends
-gen-avail-interface-{decls|defs}. The op's implementation is
done via -gen-spirv-avail-impls.

Differential Revision: https://reviews.llvm.org/D71930
</content>
</entry>
</feed>
