Skip to content
Snippets Groups Projects

vkd3d-shader/dxil: Read some shader properties.

Merged Conor McCarthy requested to merge cmccarthy/vkd3d:dxil_instructions2 into master
2 unresolved threads

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
101 101
102 102 [test]
103 103 draw quad
104 todo(sm>=6) probe (0, 0) rgba (10.0, 11.0, 30.0, 31.0)
104 probe (0, 0) rgba (10.0, 11.0, 30.0, 31.0)
105
106
107 % dxcompiler emits correct array addressing.
108 [require]
109 shader model < 6.0
  • Giovanni Mascellani
    Giovanni Mascellani @giomasce started a thread on commit 69e81c70
  • 653 VKD3DSGF_ENABLE_CS4_RAW_STRUCTURED_BUFFERS = 0x20000,
    654 VKD3DSGF_ENABLE_RASTERIZER_ORDERED_VIEWS = 0x40000,
    655 VKD3DSGF_ENABLE_WAVE_INTRINSICS = 0x80000,
    656 VKD3DSGF_ENABLE_INT64 = 0x100000,
    657 VKD3DSGF_ENABLE_VIEWID = 0x200000,
    658 VKD3DSGF_ENABLE_BARYCENTRICS = 0x400000,
    659 VKD3DSGF_FORCE_NATIVE_LOW_PRECISION = 0x800000,
    660 VKD3DSGF_ENABLE_SHADINGRATE = 0x1000000,
    661 VKD3DSGF_ENABLE_RAYTRACING_TIER_1_1 = 0x2000000,
    662 VKD3DSGF_ENABLE_SAMPLER_FEEDBACK = 0x4000000,
    663 VKD3DSGF_ENABLE_ATOMIC_INT64_ON_TYPED_RESOURCE = 0x8000000,
    664 VKD3DSGF_ENABLE_ATOMIC_INT64_ON_GROUP_SHARED = 0x10000000,
    665 VKD3DSGF_ENABLE_DERIVATIVES_IN_MESH_AND_AMPLIFICATION_SHADERS = 0x20000000,
    666 VKD3DSGF_ENABLE_RESOURCE_DESCRIPTOR_HEAP_INDEXING = 0x40000000,
    667 VKD3DSGF_ENABLE_SAMPLER_DESCRIPTOR_HEAP_INDEXING = 0x80000000,
    668 VKD3DSGF_ENABLE_ATOMIC_INT64_ON_DESCRIPTOR_HEAP_RESOURCE = 0x100000000ull,
  • Giovanni Mascellani approved this merge request

    approved this merge request

  • You're just following the previous style, so that's not on you, but I find more readable to use (1ull << ...) to express bit flags.

    In the header, sure. I don't think that's necessarily true when looking them up from debug traces though.

    Note that while I'll go along with this for reasons of expediency, adding all of these flags at once is still a fair bit coarser than what's ideal; ideally we'd add these one by one as we find shaders needing them. As it is, the d3d-asm and spirv backends can't handle them, and I have no idea which, if any, of these are exercised by the tests.

    +    VKD3DSGF_ENABLE_MSAD                       = 0x80,

    Note that VKD3DSGF_ENABLE_MSAD is within VKD3D_SM4_GLOBAL_FLAGS_MASK; does that flag exist in tpf as well?

    +enum dxil_shader_properties_tag
    +{
    +    SHADER_PROPERTIES_FLAGS              =  0,
    +    SHADER_PROPERTIES_GEOMETRY           =  1,
    +    SHADER_PROPERTIES_DOMAIN             =  2,
    +    SHADER_PROPERTIES_HULL               =  3,
    +    SHADER_PROPERTIES_COMPUTE            =  4,
    +    SHADER_PROPERTIES_AUTO_BINDING_SPACE =  5,
    +    SHADER_PROPERTIES_RAY_PAYLOAD_SIZE   =  6,
    +    SHADER_PROPERTIES_RAY_ATTRIB_SIZE    =  7,
    +    SHADER_PROPERTIES_SHADER_KIND        =  8,
    +    SHADER_PROPERTIES_MESH               =  9,
    +    SHADER_PROPERTIES_AMPLIFICATION      = 10,
    +    SHADER_PROPERTIES_WAVE_SIZE          = 11,
    +    SHADER_PROPERTIES_ENTRY_ROOT_SIG     = 12,
    +};

    Similarly, most of these are unused.

    +static void sm6_parser_emit_global_flags(struct sm6_parser *sm6, const struct sm6_metadata_value *m)
    +{
    ...
    +    /* Rotate SKIP_OPTIMIZATION from bit 0 to bit 4 to match TPF. */

    We don't particularly care about TPF here; we're translating to vkd3d_shader_global_flags.

  • Conor McCarthy added 61 commits

    added 61 commits

    • d8b79222...9c6c7cb7 - 42 commits from branch wine:master
    • 9c6c7cb7...e68b4213 - 9 earlier commits
    • 8584644a - vkd3d-shader/dxil: Read DXIL metadata values.
    • afddf8fd - vkd3d-shader/dxil: Read DXIL metadata kinds.
    • 3902d5b8 - vkd3d-shader/dxil: Read DXIL metadata named nodes.
    • a415d632 - vkd3d-shader/dxil: Validate the entry point info.
    • ed6eb946 - vkd3d-shader/dxil: Read the DXIL input and output signatures.
    • a4c39ee0 - vkd3d-shader/dxil: Handle signature element additional tag/value pairs.
    • 6ff5c892 - vkd3d-shader/dxil: Handle multi-row signature elements.
    • e5e42397 - vkd3d-shader: Define more global flags.
    • cf43392f - vkd3d-shader/dxil: Read DXIL global flags.
    • 0bc0b6b4 - vkd3d-shader/dxil: Read DXIL compute shader thread group dimensions.

    Compare with previous version

  • Conor McCarthy added 16 commits

    added 16 commits

    • 0bc0b6b4...6e405636 - 6 earlier commits
    • 8dc1355d - vkd3d-shader/dxil: Read DXIL metadata values.
    • 91ab0bd6 - vkd3d-shader/dxil: Read DXIL metadata kinds.
    • 30e76ace - vkd3d-shader/dxil: Read DXIL metadata named nodes.
    • 1f6ae1e7 - vkd3d-shader/dxil: Validate the entry point info.
    • f0aa791a - vkd3d-shader/dxil: Read the DXIL input and output signatures.
    • cf29675d - vkd3d-shader/dxil: Handle signature element additional tag/value pairs.
    • 68ee7a26 - vkd3d-shader/dxil: Handle multi-row signature elements.
    • 4357bae5 - vkd3d-shader: Define more global flags.
    • b8b1d2e6 - vkd3d-shader/dxil: Read DXIL global flags.
    • 1f0a7a3a - vkd3d-shader/dxil: Read DXIL compute shader thread group dimensions.

    Compare with previous version

  • Conor McCarthy added 19 commits

    added 19 commits

    • 1f0a7a3a...05d516bb - 7 commits from branch wine:master
    • 05d516bb...696789ef - 2 earlier commits
    • 58b2a18f - vkd3d-shader/dxil: Read DXIL metadata values.
    • c262051a - vkd3d-shader/dxil: Read DXIL metadata kinds.
    • 4a16cadd - vkd3d-shader/dxil: Read DXIL metadata named nodes.
    • 191b6c07 - vkd3d-shader/dxil: Validate the entry point info.
    • 0a308f31 - vkd3d-shader/dxil: Read the DXIL input and output signatures.
    • 4b1071aa - vkd3d-shader/dxil: Handle signature element additional tag/value pairs.
    • 82dcf848 - vkd3d-shader/dxil: Handle multi-row signature elements.
    • af0572b8 - vkd3d-shader: Define more global flags.
    • 79d468a1 - vkd3d-shader/dxil: Read DXIL global flags.
    • 71b5539f - vkd3d-shader/dxil: Read DXIL compute shader thread group dimensions.

    Compare with previous version

  • Conor McCarthy changed title from Draft: vkd3d-shader/dxil: Complete the signature reads and read some shader properties. to Draft: vkd3d-shader/dxil: Read some shader properties.

    changed title from Draft: vkd3d-shader/dxil: Complete the signature reads and read some shader properties. to Draft: vkd3d-shader/dxil: Read some shader properties.

  • Conor McCarthy changed the description

    changed the description

  • Conor McCarthy added 30 commits

    added 30 commits

    • 71b5539f...47d4097e - 27 commits from branch wine:master
    • bac94537 - vkd3d-shader: Define more global flags.
    • 141e1541 - vkd3d-shader/dxil: Read DXIL global flags.
    • 481854fc - vkd3d-shader/dxil: Read DXIL compute shader thread group dimensions.

    Compare with previous version

  • Conor McCarthy marked this merge request as ready

    marked this merge request as ready

  • Conor McCarthy changed the description

    changed the description

  • Conor McCarthy added 2 commits

    added 2 commits

    • 8eca38b9 - vkd3d-shader/dxil: Read DXIL global flags.
    • 8e1a9118 - vkd3d-shader/dxil: Read DXIL compute shader thread group dimensions.

    Compare with previous version

  • Henri Verbeet approved this merge request

    approved this merge request

  • added 3 commits

    • 06f8a884 - vkd3d-shader: Define more global flags.
    • 4b7ca0c2 - vkd3d-shader/dxil: Read DXIL global flags.
    • 85c165ff - vkd3d-shader/dxil: Read DXIL compute shader thread group dimensions.

    Compare with previous version

  • Alexandre Julliard approved this merge request

    approved this merge request

  • Please register or sign in to reply
    Loading