Skip to content

[milestone] Compile a runnable shader from clang #7

Closed
2 of 2 issues completed
Closed
@damyanp

Description

@damyanp

This is a milestone on the way to getting full HLSL support in Clang.

For this milestone we need to be able to compile a simple compute shader such that the resulting DXBC container can pass validation and be signed by the DXC validator and can therefore be executed on a non-developer mode Windows desktop PC. The shader compiler binary should come from some kind of nightly build, rather than building locally.

Sample shader

RWBuffer<int> In : register(u0);
RWBuffer<int> Out : register(u1);

[numthreads(8,1,1)]
void main(uint GI : SV_GroupIndex) {
  Out[GI] = In[GI] * In[GI];
}

Workstreams

Language (#21)

  • numthreads entry attribute
  • Entry function linkage rules

Resource Binding (#23)

Semantics (#25)

  • Support SV_GroupIndex and SV_DispatchThreadID used with basic scalar/vector input types for target shader.

Resources (#8)

DirectX Container (#9)

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Closed

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions