From edc85fc4631782d42e113f00dfbbd113dcd8c96f Mon Sep 17 00:00:00 2001 From: Yong He Date: Tue, 12 Mar 2024 13:47:14 -0700 Subject: Make type names spec-conformant in SPIRV reflect. (#3748) * Preserve ByteAddressBuffer user type name. * Make user type lowercase. * Make typenames conform to spec. * Use `SpvOpDecorateString`. --- tests/spirv/spirv-reflection.slang | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'tests') diff --git a/tests/spirv/spirv-reflection.slang b/tests/spirv/spirv-reflection.slang index 90414eb59..d1de9e974 100644 --- a/tests/spirv/spirv-reflection.slang +++ b/tests/spirv/spirv-reflection.slang @@ -9,25 +9,27 @@ struct MyElement } StructuredBuffer myBuffer : MY_HLSL_SEMANTIC1; AppendStructuredBuffer myAppendBuffer : MY_HLSL_SEMANTIC2; - +ByteAddressBuffer bw; [numthreads(8, 8, 1)] void computeMain() { float4 color = mTexture.Load(int3(0, 0, 0)); - myAppendBuffer.Append(color.x + myBuffer[0].x); + myAppendBuffer.Append(color.x + myBuffer[0].x + bw.Load(0)); } // SPIRV-DAG: OpExtension "SPV_GOOGLE_user_type" -// SPIRV-DAG: OpDecorate %mTexture UserTypeGOOGLE "Texture2D" -// SPIRV-DAG: OpDecorate %mTexture UserSemantic "MY_HLSL_SEMANTIC" +// SPIRV-DAG: OpDecorateString %mTexture UserTypeGOOGLE "texture2d" +// SPIRV-DAG: OpDecorateString %mTexture UserSemantic "MY_HLSL_SEMANTIC" -// SPIRV-DAG: OpDecorate %myBuffer UserTypeGOOGLE "StructuredBuffer" -// SPIRV-DAG: OpDecorate %myBuffer UserSemantic "MY_HLSL_SEMANTIC1" +// SPIRV-DAG: OpDecorateString %myBuffer UserTypeGOOGLE "structuredbuffer:" +// SPIRV-DAG: OpDecorateString %myBuffer UserSemantic "MY_HLSL_SEMANTIC1" -// SPIRV-DAG: OpDecorate %myAppendBuffer_counter UserTypeGOOGLE "RWStructuredBuffer" -// SPIRV-DAG: OpDecorate %myAppendBuffer_counter UserSemantic "MY_HLSL_SEMANTIC2" +// SPIRV-DAG: OpDecorateString %myAppendBuffer_counter UserTypeGOOGLE "appendstructuredbuffer:" +// SPIRV-DAG: OpDecorateString %myAppendBuffer_counter UserSemantic "MY_HLSL_SEMANTIC2" -// SPIRV-DAG: OpDecorate %myAppendBuffer_elements UserTypeGOOGLE "RWStructuredBuffer" -// SPIRV-DAG: OpDecorate %myAppendBuffer_elements UserSemantic "MY_HLSL_SEMANTIC2" +// SPIRV-DAG: OpDecorateString %myAppendBuffer_elements UserTypeGOOGLE "appendstructuredbuffer:" +// SPIRV-DAG: OpDecorateString %myAppendBuffer_elements UserSemantic "MY_HLSL_SEMANTIC2" // SPIRV-DAG: OpDecorateId %myAppendBuffer_elements CounterBuffer %myAppendBuffer_counter + +// SPIRV-DAG: OpDecorateString %bw UserTypeGOOGLE "byteaddressbuffer" \ No newline at end of file -- cgit v1.2.3