summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNima Nikfetrat <3170208+Nimanf@users.noreply.github.com>2019-04-02 18:19:34 -0400
committerTim Foley <tfoleyNV@users.noreply.github.com>2019-04-02 15:19:34 -0700
commitc9d06fe1f46a21c66c378ab9771495d6344db49c (patch)
tree0c3b7afd24f1385cbb94cff6211e52309bda4efd
parent2896aa39a529a00673a30ef4a9c3ebe76f401fea (diff)
Avoid SPIRV validation error by removing readonly flag from shaderRecord buffer (#936)
-rw-r--r--source/slang/emit.cpp6
-rw-r--r--tests/vkray/closesthit.slang.glsl2
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;