dawn-cmake/test/unittest/reader/spirv/SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_TwoAccessChain.spvasm
David Neto d1a026ecd0 Add end-to-end corpus from Tint SPIR-V Reader
Add the unit tests samples from src/reader/spirv when:
- they are valid for Vulkan 1.0 (plus some common extensions)
- they should translate to valid WGSL

Bug: tint:1043
Change-Id: I40a01990dbc40aff5cf7ace0b1aabfd0e437f638
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/60000
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: David Neto <dneto@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Reviewed-by: James Price <jrprice@google.com>
2021-07-30 16:03:06 +00:00

36 lines
1.2 KiB
Plaintext

; Test: SpvModuleScopeVarParserTest_BuiltinPosition_StorePositionMember_TwoAccessChain.spvasm
; SPIR-V
; Version: 1.0
; Generator: Khronos SPIR-V Tools Assembler; 0
; Bound: 102
; Schema: 0
OpCapability Shader
OpMemoryModel Logical Simple
OpEntryPoint Vertex %2 "main" %1
OpMemberDecorate %_struct_10 0 BuiltIn Position
OpMemberDecorate %_struct_10 1 BuiltIn PointSize
OpMemberDecorate %_struct_10 2 BuiltIn ClipDistance
OpMemberDecorate %_struct_10 3 BuiltIn CullDistance
%void = OpTypeVoid
%4 = OpTypeFunction %void
%float = OpTypeFloat 32
%v4float = OpTypeVector %float 4
%uint = OpTypeInt 32 0
%uint_0 = OpConstant %uint 0
%uint_1 = OpConstant %uint 1
%_arr_float_uint_1 = OpTypeArray %float %uint_1
%_struct_10 = OpTypeStruct %v4float %float %_arr_float_uint_1 %_arr_float_uint_1
%_ptr_Output__struct_10 = OpTypePointer Output %_struct_10
%1 = OpVariable %_ptr_Output__struct_10 Output
%_ptr_Output_v4float = OpTypePointer Output %v4float
%_ptr_Output_float = OpTypePointer Output %float
%15 = OpConstantNull %float
%2 = OpFunction %void None %4
%16 = OpLabel
%100 = OpAccessChain %_ptr_Output_v4float %1 %uint_0
%101 = OpAccessChain %_ptr_Output_float %100 %uint_1
OpStore %101 %15
OpReturn
OpFunctionEnd