diff options
| author | Nima Nikfetrat <3170208+Nimanf@users.noreply.github.com> | 2019-04-02 18:19:34 -0400 |
|---|---|---|
| committer | Tim Foley <tfoleyNV@users.noreply.github.com> | 2019-04-02 15:19:34 -0700 |
| commit | c9d06fe1f46a21c66c378ab9771495d6344db49c (patch) | |
| tree | 0c3b7afd24f1385cbb94cff6211e52309bda4efd | |
| parent | 2896aa39a529a00673a30ef4a9c3ebe76f401fea (diff) | |
Avoid SPIRV validation error by removing readonly flag from shaderRecord buffer (#936)
| -rw-r--r-- | source/slang/emit.cpp | 6 | ||||
| -rw-r--r-- | tests/vkray/closesthit.slang.glsl | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/source/slang/emit.cpp b/source/slang/emit.cpp index 5a8a349b3..7615b0b28 100644 --- a/source/slang/emit.cpp +++ b/source/slang/emit.cpp @@ -6052,9 +6052,9 @@ struct EmitVisitor if( isShaderRecord ) { - // TODO: A shader record in vk can be potentially read write. Currently slang does't support write access - // so for now we will assume readonly - emit("readonly buffer "); + // TODO: A shader record in vk can be potentially read-write. Currently slang doesn't support write access + // and readonly buffer generates SPIRV validation error. + emit("buffer "); } else if(as<IRGLSLShaderStorageBufferType>(type)) { diff --git a/tests/vkray/closesthit.slang.glsl b/tests/vkray/closesthit.slang.glsl index d85e982fa..67072e9ff 100644 --- a/tests/vkray/closesthit.slang.glsl +++ b/tests/vkray/closesthit.slang.glsl @@ -21,7 +21,7 @@ struct SLANG_ParameterGroup_ShaderRecord_0 }; layout(shaderRecordNV) -readonly buffer tmp_shaderrecord +buffer tmp_shaderrecord { SLANG_ParameterGroup_ShaderRecord_0 _data; } ShaderRecord_0; |
