mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-05-14 19:31:25 +00:00
The expected output is far from perfect, and the generated HLSL and MSL isn't even validated yet, so may be incorrect. However, by committing the generated output, we get clear examples of the currently generated output of each backend. As we land fixes and improvements to each backend, the presubmits will require us to update the expected test output, and so code reviews will include diffs of each backend's generated output. Change-Id: I5c2a9e5b796d0ab75b3ec4c7f8ad00a0a2ab166f Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/51224 Commit-Queue: Ben Clayton <bclayton@chromium.org> Reviewed-by: David Neto <dneto@google.com>
124 lines
5.7 KiB
Plaintext
124 lines
5.7 KiB
Plaintext
; SPIR-V
|
|
; Version: 1.3
|
|
; Generator: Google Tint Compiler; 0
|
|
; Bound: 60
|
|
; Schema: 0
|
|
OpCapability Shader
|
|
OpMemoryModel Logical GLSL450
|
|
OpEntryPoint Vertex %vtx_main "vtx_main" %tint_pointsize %tint_symbol %tint_symbol_1 %tint_symbol_4 %tint_symbol_5
|
|
OpEntryPoint Fragment %frag_main "frag_main" %tint_symbol_7 %tint_symbol_9
|
|
OpExecutionMode %frag_main OriginUpperLeft
|
|
OpName %tint_pointsize "tint_pointsize"
|
|
OpName %Uniforms "Uniforms"
|
|
OpMemberName %Uniforms 0 "modelViewProjectionMatrix"
|
|
OpName %uniforms "uniforms"
|
|
OpName %tint_symbol "tint_symbol"
|
|
OpName %tint_symbol_1 "tint_symbol_1"
|
|
OpName %tint_symbol_4 "tint_symbol_4"
|
|
OpName %tint_symbol_5 "tint_symbol_5"
|
|
OpName %tint_symbol_7 "tint_symbol_7"
|
|
OpName %tint_symbol_9 "tint_symbol_9"
|
|
OpName %VertexOutput "VertexOutput"
|
|
OpMemberName %VertexOutput 0 "vtxFragColor"
|
|
OpMemberName %VertexOutput 1 "Position"
|
|
OpName %tint_symbol_6 "tint_symbol_6"
|
|
OpName %tint_symbol_3 "tint_symbol_3"
|
|
OpName %vtx_main "vtx_main"
|
|
OpName %VertexInput "VertexInput"
|
|
OpMemberName %VertexInput 0 "cur_position"
|
|
OpMemberName %VertexInput 1 "color"
|
|
OpName %output "output"
|
|
OpName %tint_symbol_10 "tint_symbol_10"
|
|
OpName %tint_symbol_8 "tint_symbol_8"
|
|
OpName %frag_main "frag_main"
|
|
OpDecorate %tint_pointsize BuiltIn PointSize
|
|
OpDecorate %Uniforms Block
|
|
OpMemberDecorate %Uniforms 0 Offset 0
|
|
OpMemberDecorate %Uniforms 0 ColMajor
|
|
OpMemberDecorate %Uniforms 0 MatrixStride 16
|
|
OpDecorate %uniforms Binding 0
|
|
OpDecorate %uniforms DescriptorSet 0
|
|
OpDecorate %tint_symbol Location 0
|
|
OpDecorate %tint_symbol_1 Location 1
|
|
OpDecorate %tint_symbol_4 Location 0
|
|
OpDecorate %tint_symbol_5 BuiltIn Position
|
|
OpDecorate %tint_symbol_7 Location 0
|
|
OpDecorate %tint_symbol_9 Location 0
|
|
OpMemberDecorate %VertexOutput 0 Offset 0
|
|
OpMemberDecorate %VertexOutput 1 Offset 16
|
|
OpMemberDecorate %VertexInput 0 Offset 0
|
|
OpMemberDecorate %VertexInput 1 Offset 16
|
|
%float = OpTypeFloat 32
|
|
%_ptr_Output_float = OpTypePointer Output %float
|
|
%4 = OpConstantNull %float
|
|
%tint_pointsize = OpVariable %_ptr_Output_float Output %4
|
|
%v4float = OpTypeVector %float 4
|
|
%mat4v4float = OpTypeMatrix %v4float 4
|
|
%Uniforms = OpTypeStruct %mat4v4float
|
|
%_ptr_Uniform_Uniforms = OpTypePointer Uniform %Uniforms
|
|
%uniforms = OpVariable %_ptr_Uniform_Uniforms Uniform
|
|
%_ptr_Input_v4float = OpTypePointer Input %v4float
|
|
%tint_symbol = OpVariable %_ptr_Input_v4float Input
|
|
%tint_symbol_1 = OpVariable %_ptr_Input_v4float Input
|
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
|
%15 = OpConstantNull %v4float
|
|
%tint_symbol_4 = OpVariable %_ptr_Output_v4float Output %15
|
|
%tint_symbol_5 = OpVariable %_ptr_Output_v4float Output %15
|
|
%tint_symbol_7 = OpVariable %_ptr_Input_v4float Input
|
|
%tint_symbol_9 = OpVariable %_ptr_Output_v4float Output %15
|
|
%void = OpTypeVoid
|
|
%VertexOutput = OpTypeStruct %v4float %v4float
|
|
%19 = OpTypeFunction %void %VertexOutput
|
|
%27 = OpTypeFunction %void
|
|
%float_1 = OpConstant %float 1
|
|
%VertexInput = OpTypeStruct %v4float %v4float
|
|
%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
|
|
%37 = OpConstantNull %VertexOutput
|
|
%uint = OpTypeInt 32 0
|
|
%uint_1 = OpConstant %uint 1
|
|
%_ptr_Function_v4float = OpTypePointer Function %v4float
|
|
%uint_0 = OpConstant %uint 0
|
|
%_ptr_Uniform_mat4v4float = OpTypePointer Uniform %mat4v4float
|
|
%52 = OpTypeFunction %void %v4float
|
|
%tint_symbol_6 = OpFunction %void None %19
|
|
%tint_symbol_3 = OpFunctionParameter %VertexOutput
|
|
%24 = OpLabel
|
|
%25 = OpCompositeExtract %v4float %tint_symbol_3 0
|
|
OpStore %tint_symbol_4 %25
|
|
%26 = OpCompositeExtract %v4float %tint_symbol_3 1
|
|
OpStore %tint_symbol_5 %26
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%vtx_main = OpFunction %void None %27
|
|
%29 = OpLabel
|
|
%output = OpVariable %_ptr_Function_VertexOutput Function %37
|
|
OpStore %tint_pointsize %float_1
|
|
%32 = OpLoad %v4float %tint_symbol
|
|
%33 = OpLoad %v4float %tint_symbol_1
|
|
%34 = OpCompositeConstruct %VertexInput %32 %33
|
|
%41 = OpAccessChain %_ptr_Function_v4float %output %uint_1
|
|
%44 = OpAccessChain %_ptr_Uniform_mat4v4float %uniforms %uint_0
|
|
%45 = OpLoad %mat4v4float %44
|
|
%46 = OpCompositeExtract %v4float %34 0
|
|
%47 = OpMatrixTimesVector %v4float %45 %46
|
|
OpStore %41 %47
|
|
%48 = OpAccessChain %_ptr_Function_v4float %output %uint_0
|
|
%49 = OpCompositeExtract %v4float %34 1
|
|
OpStore %48 %49
|
|
%51 = OpLoad %VertexOutput %output
|
|
%50 = OpFunctionCall %void %tint_symbol_6 %51
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%tint_symbol_10 = OpFunction %void None %52
|
|
%tint_symbol_8 = OpFunctionParameter %v4float
|
|
%55 = OpLabel
|
|
OpStore %tint_symbol_9 %tint_symbol_8
|
|
OpReturn
|
|
OpFunctionEnd
|
|
%frag_main = OpFunction %void None %27
|
|
%57 = OpLabel
|
|
%59 = OpLoad %v4float %tint_symbol_7
|
|
%58 = OpFunctionCall %void %tint_symbol_10 %59
|
|
OpReturn
|
|
OpFunctionEnd
|