DirectXShaderCompiler icon indicating copy to clipboard operation
DirectXShaderCompiler copied to clipboard

Enable WaveMatrix intrinsics in node shaders

Open hekota opened this issue 1 year ago • 1 comments

Is your feature request related to a problem? Please describe. WaveMatrix intrinsics are currently enabled only in compute and library shaders.

Describe the solution you'd like Enable use of WaveMatrix intrinsics in node shaders as well.

Additional context

--- a/utils/hct/hctdb.py
+++ b/utils/hct/hctdb.py
@@ -650,6 +650,7 @@ class db_dxil(object):
             self.name_idx[i].shader_stages = (
                 "library",
                 "compute",
+                "node",
             )

hekota avatar Jan 19 '24 22:01 hekota

WaveMatrix operations are not allowed in node shaders due to their stage limits set in https://github.com/microsoft/DirectXShaderCompiler/blob/1f162e2230158e8b3d6c70ea31817c1a90a2de22/utils/hct/hctdb.py#L650

We aren't currently aware of a specific requirement for wave matrices in node shaders, so we have no definitive reason why leaving them out would impact anyone. However, these operations are intended for compute stages and node stages are compute stages in most respects. To omit them would be to leave out functionality that is expected in similar stages.

This was the only omission uncovered as part of #5345

pow2clk avatar Mar 12 '24 21:03 pow2clk