diff options
| author | Yong He <yonghe@outlook.com> | 2024-03-18 16:41:40 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-03-18 16:41:40 -0700 |
| commit | f96a3fea6704da866e96e453f722a951c214ba28 (patch) | |
| tree | e14aafe59eca98992593803db19cc3dff0ae1fe1 /source/slang/slang-emit-spirv.cpp | |
| parent | 7f6e95917bb1929115b4cffa2ed9035aa8710ee4 (diff) | |
Fix SPIRV for mesh shaders, checks for invalid target code&recursion. (#3788)
* Fix #3780.
* Fixers #3781.
* Add test for #3781.
* Diagnose error on unsupported builtin intrinsic types.
* Add check for recursion.
* Fix.
* Fix.
* Fix recursion detection.
* Fix.
* Fix.
* Fix recursion logic.
* More fix.
Diffstat (limited to 'source/slang/slang-emit-spirv.cpp')
| -rw-r--r-- | source/slang/slang-emit-spirv.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/slang/slang-emit-spirv.cpp b/source/slang/slang-emit-spirv.cpp index afb1b3a63..6ecffecd1 100644 --- a/source/slang/slang-emit-spirv.cpp +++ b/source/slang/slang-emit-spirv.cpp @@ -3060,6 +3060,12 @@ struct SPIRVEmitContext case Stage::Callable: requireSPIRVCapability(SpvCapabilityRayTracingKHR); ensureExtensionDeclaration(UnownedStringSlice("SPV_KHR_ray_tracing")); + break; + case Stage::Mesh: + case Stage::Amplification: + requireSPIRVCapability(SpvCapabilityMeshShadingEXT); + ensureExtensionDeclaration(UnownedStringSlice("SPV_EXT_mesh_shader")); + break; default: break; } |
