Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4 |
|
#
fd0dbc7f |
| 29-Aug-2024 |
Xiang Li <python3kgae@outlook.com> |
[DirectX] add enum for PSV resource type/kind/flag. (#106227)
Add ResourceType, ResourceKind and ResourceFlag enum class for PSV
resource.
This is for #103275
|
Revision tags: llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6 |
|
#
531a0b67 |
| 13-May-2024 |
Xiang Li <python3kgae@outlook.com> |
[DirectX] Reapply Fix DXIL part header version encoding (#91956)
This reapplies
https://github.com/llvm/llvm-project/commit/195d8ac26d91ca798733c3a5f58d67992d43503d
[DirectX] Fix DXIL part header
[DirectX] Reapply Fix DXIL part header version encoding (#91956)
This reapplies
https://github.com/llvm/llvm-project/commit/195d8ac26d91ca798733c3a5f58d67992d43503d
[DirectX] Fix DXIL part header version encoding. The endian issue was
fixed by
https://github.com/llvm/llvm-project/commit/f42117c8517cc928c6373bad35ebf75d94fe865b.
Move MinorVersion be the lower 8 bit.
Set DXIL version in DXContainerObjectWriter::writeObject.
Fixes #89952
show more ...
|
#
f42117c8 |
| 12-May-2024 |
Xiang Li <python3kgae@outlook.com> |
[DirectX] Replace bitfield version in ProgramHeader. (#91797)
Avoid using bitfield in dxbc::ProgramHeader.
It could potentially be read incorrectly on any host depending on the
compiler.
From [
[DirectX] Replace bitfield version in ProgramHeader. (#91797)
Avoid using bitfield in dxbc::ProgramHeader.
It could potentially be read incorrectly on any host depending on the
compiler.
From [C++17's
[class.bit]](https://timsong-cpp.github.io/cppwp/n4659/class.bit#1)
> Bit-fields are packed into some addressable allocation unit. [ Note:
Bit-fields straddle allocation units on some machines and not on others.
Bit-fields are assigned right-to-left on some machines, left-to-right on
others. — end note ]
For #91793
show more ...
|
#
d6550543 |
| 10-May-2024 |
Justin Bogner <mail@justinbogner.com> |
Revert "[DirectX] Fix DXIL part header version encoding" (#91791)
Test failures on big endian bots after this change.
Reverts llvm/llvm-project#91506
|
#
195d8ac2 |
| 10-May-2024 |
Xiang Li <python3kgae@outlook.com> |
[DirectX] Fix DXIL part header version encoding (#91506)
Move MinorVersion be the lower 8 bit.
Set DXIL version in DXContainerObjectWriter::writeObject.
Fixes #89952
|
Revision tags: llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3 |
|
#
9f87522b |
| 05-Oct-2023 |
Chris B <chris.bieneman@me.com> |
[DX] Add support for program signatures (#67346)
For DirectX, program signatures are encoded into three different binary
sections depending on if the signature is for inputs, outputs, or
patches.
[DX] Add support for program signatures (#67346)
For DirectX, program signatures are encoded into three different binary
sections depending on if the signature is for inputs, outputs, or
patches. All three signature types use the same data structure encoding
so they can share a lot of logic.
This patch adds support for reading and writing program signature data
as both yaml and binary data.
Fixes #57743 and #57744
show more ...
|
Revision tags: llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3 |
|
#
0c3f51c0 |
| 11-Aug-2023 |
Chris Bieneman <chris.bieneman@me.com> |
Re-land [DX] Add support for PSV signature elements
The pipeline state data captured in the PSV0 section of the DXContainer file encodes signature elements which are read by the runtime to map input
Re-land [DX] Add support for PSV signature elements
The pipeline state data captured in the PSV0 section of the DXContainer file encodes signature elements which are read by the runtime to map inputs and outputs from the GPU program.
This change adds support for generating and parsing signature elements with testing driven through the ObjectYAML tooling.
Reviewed By: bogner
Differential Revision: https://reviews.llvm.org/D157671
Initially landed as 8c567e64f808f7a818965c6bc123fedf7db7336f, and reverted in 4d800633b2683304a5431d002d8ffc40a1815520.
../llvm/include/llvm/BinaryFormat/DXContainerConstants.def ../llvm/test/ObjectYAML/DXContainer/PSVv1-amplification.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv1-compute.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv1-domain.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv1-geometry.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv1-vertex.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv2-amplification.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv2-compute.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv2-domain.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv2-geometry.yaml ../llvm/test/ObjectYAML/DXContainer/PSVv2-vertex.yaml
show more ...
|
#
4d800633 |
| 16-Aug-2023 |
Chris Bieneman <chris.bieneman@me.com> |
Revert "[DX] Add support for PSV signature elements"
This reverts commit 8c567e64f808f7a818965c6bc123fedf7db7336f.
|
#
8c567e64 |
| 11-Aug-2023 |
Chris Bieneman <chris.bieneman@me.com> |
[DX] Add support for PSV signature elements
The pipeline state data captured in the PSV0 section of the DXContainer file encodes signature elements which are read by the runtime to map inputs and ou
[DX] Add support for PSV signature elements
The pipeline state data captured in the PSV0 section of the DXContainer file encodes signature elements which are read by the runtime to map inputs and outputs from the GPU program.
This change adds support for generating and parsing signature elements with testing driven through the ObjectYAML tooling.
Reviewed By: bogner
Differential Revision: https://reviews.llvm.org/D157671
show more ...
|
Revision tags: llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init |
|
#
5fdf8605 |
| 18-Jul-2023 |
Chris Bieneman <chris.bieneman@me.com> |
[DX] Fix PSV resource serialization
When writing this initially I missed including the resource stride. This change adds the resources stride to the serialized value.
I've also extended the testing
[DX] Fix PSV resource serialization
When writing this initially I missed including the resource stride. This change adds the resources stride to the serialized value.
I've also extended the testing and error reporting around parsing PSV information. This adds tests to verify that the reader produces meaningful error messages for malformed DXContainer files, and a test that verifies the resource stride is respected in the reader even if the stride isn't an expected or known value (as would happen if the format changes in the future).
This is part of #59479.
Reviewed By: bogner, bob80905
Differential Revision: https://reviews.llvm.org/D155143
show more ...
|
Revision tags: llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2 |
|
#
dd3f7b02 |
| 02-Feb-2023 |
Chris Bieneman <chris.bieneman@me.com> |
[DX] Add support for PSV resource bindings
This patch continues implementing DirectX pipeline state validation information by adding support for resource binding metadata.
Reviewed By: python3kgae
[DX] Add support for PSV resource bindings
This patch continues implementing DirectX pipeline state validation information by adding support for resource binding metadata.
Reviewed By: python3kgae
Differential Revision: https://reviews.llvm.org/D143130
show more ...
|
Revision tags: llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7 |
|
#
621ffbcb |
| 03-Jan-2023 |
Chris Bieneman <chris.bieneman@me.com> |
[DX] Improve parse error messages
This change refactors the parte parsing logic to operate on StringRefs of the part data rather than starting from an offset and splicing down. It also improves some
[DX] Improve parse error messages
This change refactors the parte parsing logic to operate on StringRefs of the part data rather than starting from an offset and splicing down. It also improves some of the error reporting around part layout.
Specifically, this code now reports a distinct error if there isn't enough data in the buffer to store the part size and it reports an error if the parts overlap.
Reviewed By: bob80905
Differential Revision: https://reviews.llvm.org/D139681
show more ...
|
#
76fca147 |
| 09-Dec-2022 |
Chris Bieneman <chris.bieneman@me.com> |
[NFC] Update DXContainer tests to use fake parts
The tests that are focused on testing the file structure should use fake part names so that the errors get triggered consistently. As we add parsing
[NFC] Update DXContainer tests to use fake parts
The tests that are focused on testing the file structure should use fake part names so that the errors get triggered consistently. As we add parsing support for known data types and structures under the parts the parsing errors change to be more semantically accurate.
This change ensures the general errors continue to work with less churn on the test cases in the future.
show more ...
|
Revision tags: llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5 |
|
#
0498415f |
| 06-Jun-2022 |
Chris Bieneman <chris.bieneman@me.com> |
Fix overflow bug impacting 32-bit testing
This test was failing on 32-bit arm builders due to an interger overflow. This changes the math to avoid overflow and should resolve the test failure.
|
#
902360d2 |
| 01-Jun-2022 |
Chris Bieneman <chris.bieneman@me.com> |
Temporarily disabling this test on arm
This is failing on an arm32 builder, and it is going to take me a while to debug. To not block further progress I'm disabling this test on arm32 configuraitons.
|
#
7b759d6d |
| 01-Jun-2022 |
Chris Bieneman <chris.bieneman@me.com> |
Temporarily disabling this test on arm
This is failing on an arm32 builder, and it is going to take me a while to debug. To not block further progress I'm disabling this test on arm32 configuraitons.
|
Revision tags: llvmorg-14.0.4 |
|
#
9e3919da |
| 02-May-2022 |
Chris Bieneman <chris.bieneman@me.com> |
[Object][DX] Parse DXContainer Parts
DXContainer files are structured as parts. This patch adds support for parsing out the file part offsets and file part headers.
Reviewed By: kuhar
Differential
[Object][DX] Parse DXContainer Parts
DXContainer files are structured as parts. This patch adds support for parsing out the file part offsets and file part headers.
Reviewed By: kuhar
Differential Revision: https://reviews.llvm.org/D124804
show more ...
|
#
15d20b97 |
| 03-May-2022 |
Chris Bieneman <chris.bieneman@me.com> |
Fix DXBC magic parsing
This gets identify_magic working correctly for DXContainer files
|
#
966c40ae |
| 02-May-2022 |
Chris Bieneman <chris.bieneman@me.com> |
[Object][DX] Identify DXBC file magic
This adds support to llvm::identify_magic to detect DXBC and classify it as the dxcontainer format.
|
#
55e13a6b |
| 02-May-2022 |
Chris Bieneman <chris.bieneman@me.com> |
[NFC] Fix warning reported on bots
|
Revision tags: llvmorg-14.0.3 |
|
#
4070aa01 |
| 28-Apr-2022 |
Chris Bieneman <chris.bieneman@me.com> |
[Object][DX] Initial DXContainer parsing support
This patch begins adding DXContainer parsing support to libObject. Following the pattern used by ELFFile my goal here is to write a standalone DXCont
[Object][DX] Initial DXContainer parsing support
This patch begins adding DXContainer parsing support to libObject. Following the pattern used by ELFFile my goal here is to write a standalone DXContainer parser and later write an adapter interface to support a subset of the ObjectFile interfaces so that we can add limited objdump support. I will also be adding ObjectYAML support to help drive testing of the object tools and MC-level object writers as those come together.
DXContainer is a slightly odd format. It is arranged in "parts" that are semantically similar to sections, but it doesn't support symbol listing.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D124643
show more ...
|