[PATCH vkd3d 0/3] Support SM 5.1 register spaces

Hans-Kristian Arntzen post at arntzen-software.no
Thu Feb 20 05:18:07 CST 2020


These patches add support for SM 5.1 register spaces.

The binary format of DXBC changes depending on whether SM 5.1 is used,
compared to SM 5.0 or earlier as 5.0 has a flat binding space, whereas
5.1 does not, which makes implementation a bit awkward.

Two tests are added which demonstrate the functionality for all
descriptor types as well as root constants and root descriptors.

Descriptor indexing is also part of SM 5.1, but is not covered here,
as that will need a larger rewrite of the binding model in vkd3d to work.

(These patches were the start of the DXIL patchset submitted earlier.)

Hans-Kristian Arntzen (3):
  vkd3d: Deal correctly with SM 5.1 register spaces.
  vkd3d: Add test case for SM 5.1 register spaces.
  vkd3d: Add test case for root constants in SM 5.1.

 include/vkd3d_shader.h                   |  16 +
 libs/vkd3d-shader/dxbc.c                 |  29 ++
 libs/vkd3d-shader/spirv.c                | 194 +++++++-
 libs/vkd3d-shader/vkd3d_shader_private.h |   5 +
 libs/vkd3d/command.c                     |  32 +-
 libs/vkd3d/state.c                       |  65 ++-
 libs/vkd3d/vkd3d_private.h               |   1 +
 tests/d3d12.c                            | 579 +++++++++++++++++++++++
 8 files changed, 867 insertions(+), 54 deletions(-)

-- 
2.25.1




More information about the wine-devel mailing list