Open
Description
Specification and implementation of the HLSL language.
This workstream tracks the specification and implementation of HLSL's grammar,
semantics and built-in functionality. Many other workstreams will contribute
design and implementation for language features, for those cases this workstream
merely tracks the dependency not the ongoing work.
Milestones
Compile a runnable shader from clang (#7)
-
numthreads
entry attribute - Entry function linkage rules
Compile particle_life.hlsl (#20)
- Basic type declarations (e.g.
uint
,int
,half
, ...) - Vector type declarations (e.g.
vector<T,N>
,float3
,int4
, ...) - Vector cast-construction syntax (e.g.
float3(x,x,x)
) - Internal function linkage rules
- cbuffer declarations
- [HLSL] bitcasts emitted instead of vector conversions in binary operators llvm-project#106253
Compile a broad selection of compute shaders (#11)
- Identify remaining language features for DirectML
- [HLSL] vector subscript indexing llvm-project#91640
- [HLSL] Copy in/copy out parameter passing llvm-project#87526 (
out
andinout
keywords) - HLSL initializer list support llvm-project#56067
- [HLSL] Crash using array parameters llvm-project#125743
- [HLSL]
[branch]
attribute support forswitch
statements llvm-project#125754
Render Simple Triangle (#13)
- Semantic language components TBD (see Semantics workstream)
Render Mesh (#15)
- Matrix language components TBD (see Matrix workstream)
Pixel and Vertex Shaders (#16)
- Barycentric Design
Mesh Shaders (#17)
- DispatchMesh address space and uniformity design
- [HLSL]
precise
keyword for floating point types llvm-project#100776
Ray Tracing (#18)
- Full design for library shader linkage model
V1 Release (#19)
- Draft specification completed
External References
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
No status