76 lines
3.0 KiB
Plaintext
76 lines
3.0 KiB
Plaintext
|
; SPIR-V
|
||
|
; Version: 1.0
|
||
|
; Generator: Khronos Glslang Reference Front End; 7
|
||
|
; Bound: 44
|
||
|
; Schema: 0
|
||
|
OpCapability Shader
|
||
|
OpCapability StorageImageExtendedFormats
|
||
|
%1 = OpExtInstImport "GLSL.std.450"
|
||
|
OpMemoryModel Logical GLSL450
|
||
|
OpEntryPoint GLCompute %main "main" %id_1
|
||
|
OpExecutionMode %main LocalSize 1 1 1
|
||
|
OpSource HLSL 500
|
||
|
OpName %main "main"
|
||
|
OpName %_main_vu3_ "@main(vu3;"
|
||
|
OpName %id "id"
|
||
|
OpName %loaded "loaded"
|
||
|
OpName %TargetTexture "TargetTexture"
|
||
|
OpName %storeTemp "storeTemp"
|
||
|
OpName %id_0 "id"
|
||
|
OpName %id_1 "id"
|
||
|
OpName %param "param"
|
||
|
OpDecorate %TargetTexture DescriptorSet 0
|
||
|
OpDecorate %TargetTexture Binding 0
|
||
|
OpDecorate %id_1 BuiltIn WorkgroupId
|
||
|
%void = OpTypeVoid
|
||
|
%3 = OpTypeFunction %void
|
||
|
%uint = OpTypeInt 32 0
|
||
|
%v3uint = OpTypeVector %uint 3
|
||
|
%_ptr_Function_v3uint = OpTypePointer Function %v3uint
|
||
|
%9 = OpTypeFunction %void %_ptr_Function_v3uint
|
||
|
%float = OpTypeFloat 32
|
||
|
%v2float = OpTypeVector %float 2
|
||
|
%_ptr_Function_v2float = OpTypePointer Function %v2float
|
||
|
%17 = OpTypeImage %float 2D 0 0 0 2 Rg32f
|
||
|
%_ptr_UniformConstant_17 = OpTypePointer UniformConstant %17
|
||
|
%TargetTexture = OpVariable %_ptr_UniformConstant_17 UniformConstant
|
||
|
%v2uint = OpTypeVector %uint 2
|
||
|
%float_1 = OpConstant %float 1
|
||
|
%uint_1 = OpConstant %uint 1
|
||
|
%_ptr_Input_v3uint = OpTypePointer Input %v3uint
|
||
|
%id_1 = OpVariable %_ptr_Input_v3uint Input
|
||
|
%main = OpFunction %void None %3
|
||
|
%5 = OpLabel
|
||
|
%id_0 = OpVariable %_ptr_Function_v3uint Function
|
||
|
%param = OpVariable %_ptr_Function_v3uint Function
|
||
|
%40 = OpLoad %v3uint %id_1
|
||
|
OpStore %id_0 %40
|
||
|
%42 = OpLoad %v3uint %id_0
|
||
|
OpStore %param %42
|
||
|
%43 = OpFunctionCall %void %_main_vu3_ %param
|
||
|
OpReturn
|
||
|
OpFunctionEnd
|
||
|
%_main_vu3_ = OpFunction %void None %9
|
||
|
%id = OpFunctionParameter %_ptr_Function_v3uint
|
||
|
%12 = OpLabel
|
||
|
%loaded = OpVariable %_ptr_Function_v2float Function
|
||
|
%storeTemp = OpVariable %_ptr_Function_v2float Function
|
||
|
%20 = OpLoad %17 %TargetTexture
|
||
|
%22 = OpLoad %v3uint %id
|
||
|
%23 = OpVectorShuffle %v2uint %22 %22 0 1
|
||
|
%24 = OpImageRead %v2float %20 %23
|
||
|
OpStore %loaded %24
|
||
|
%26 = OpLoad %v2float %loaded
|
||
|
%28 = OpCompositeConstruct %v2float %float_1 %float_1
|
||
|
%29 = OpFAdd %v2float %26 %28
|
||
|
OpStore %storeTemp %29
|
||
|
%30 = OpLoad %17 %TargetTexture
|
||
|
%31 = OpLoad %v3uint %id
|
||
|
%32 = OpVectorShuffle %v2uint %31 %31 0 1
|
||
|
%34 = OpCompositeConstruct %v2uint %uint_1 %uint_1
|
||
|
%35 = OpIAdd %v2uint %32 %34
|
||
|
%36 = OpLoad %v2float %storeTemp
|
||
|
OpImageWrite %30 %35 %36
|
||
|
OpReturn
|
||
|
OpFunctionEnd
|