blob: 6a112564cbf497cc4db2d60b031f2a4b1901f568 [file] [log] [blame]
Ben Claytonc0af5c52022-06-02 14:36:10 +00001; SPIR-V
2; Version: 1.3
3; Generator: Google Tint Compiler; 0
Natalie Chouinarde9027182024-06-13 18:50:19 +00004; Bound: 47
Ben Claytonc0af5c52022-06-02 14:36:10 +00005; Schema: 0
6 OpCapability Shader
Ben Claytonee36e392022-07-26 14:27:25 +00007 %19 = OpExtInstImport "GLSL.std.450"
Ben Claytonc0af5c52022-06-02 14:36:10 +00008 OpMemoryModel Logical GLSL450
Ben Claytonc0af5c52022-06-02 14:36:10 +00009 OpEntryPoint Fragment %fragment_main "fragment_main"
10 OpEntryPoint GLCompute %compute_main "compute_main"
Natalie Chouinarde9027182024-06-13 18:50:19 +000011 OpEntryPoint Vertex %vertex_main "vertex_main" %pos_1 %vertex_point_size
Ben Claytonc0af5c52022-06-02 14:36:10 +000012 OpExecutionMode %fragment_main OriginUpperLeft
13 OpExecutionMode %compute_main LocalSize 1 1 1
Natalie Chouinarde9027182024-06-13 18:50:19 +000014 OpName %pos_1 "pos_1"
Ben Claytonc0af5c52022-06-02 14:36:10 +000015 OpName %vertex_point_size "vertex_point_size"
Zhaoming Jiang20cddbf2022-08-05 15:11:44 +000016 OpName %modf_4bfced "modf_4bfced"
Ben Claytonc0af5c52022-06-02 14:36:10 +000017 OpName %arg_0 "arg_0"
Ben Claytoned998e92022-11-23 19:57:00 +000018 OpName %__modf_result_vec4_f32 "__modf_result_vec4_f32"
19 OpMemberName %__modf_result_vec4_f32 0 "fract"
20 OpMemberName %__modf_result_vec4_f32 1 "whole"
Ben Claytonc0af5c52022-06-02 14:36:10 +000021 OpName %res "res"
Ben Claytonc0af5c52022-06-02 14:36:10 +000022 OpName %fragment_main "fragment_main"
23 OpName %compute_main "compute_main"
Natalie Chouinarde9027182024-06-13 18:50:19 +000024 OpName %VertexOutput "VertexOutput"
25 OpMemberName %VertexOutput 0 "pos"
26 OpName %vertex_main_inner "vertex_main_inner"
27 OpName %out "out"
28 OpName %vertex_main "vertex_main"
29 OpDecorate %pos_1 BuiltIn Position
Ben Claytonc0af5c52022-06-02 14:36:10 +000030 OpDecorate %vertex_point_size BuiltIn PointSize
Ben Claytoned998e92022-11-23 19:57:00 +000031 OpMemberDecorate %__modf_result_vec4_f32 0 Offset 0
32 OpMemberDecorate %__modf_result_vec4_f32 1 Offset 16
Natalie Chouinarde9027182024-06-13 18:50:19 +000033 OpMemberDecorate %VertexOutput 0 Offset 0
Ben Claytonc0af5c52022-06-02 14:36:10 +000034 %float = OpTypeFloat 32
35 %v4float = OpTypeVector %float 4
36%_ptr_Output_v4float = OpTypePointer Output %v4float
37 %5 = OpConstantNull %v4float
Natalie Chouinarde9027182024-06-13 18:50:19 +000038 %pos_1 = OpVariable %_ptr_Output_v4float Output %5
Ben Claytonc0af5c52022-06-02 14:36:10 +000039%_ptr_Output_float = OpTypePointer Output %float
40 %8 = OpConstantNull %float
41%vertex_point_size = OpVariable %_ptr_Output_float Output %8
42 %void = OpTypeVoid
43 %9 = OpTypeFunction %void
Ben Clayton329dfd72022-11-23 00:05:05 +000044 %float_n1_5 = OpConstant %float -1.5
45 %14 = OpConstantComposite %v4float %float_n1_5 %float_n1_5 %float_n1_5 %float_n1_5
Ben Claytonc0af5c52022-06-02 14:36:10 +000046%_ptr_Function_v4float = OpTypePointer Function %v4float
Ben Claytoned998e92022-11-23 19:57:00 +000047%__modf_result_vec4_f32 = OpTypeStruct %v4float %v4float
48%_ptr_Function___modf_result_vec4_f32 = OpTypePointer Function %__modf_result_vec4_f32
49 %23 = OpConstantNull %__modf_result_vec4_f32
Natalie Chouinarde9027182024-06-13 18:50:19 +000050%VertexOutput = OpTypeStruct %v4float
51 %30 = OpTypeFunction %VertexOutput
52%_ptr_Function_VertexOutput = OpTypePointer Function %VertexOutput
53 %36 = OpConstantNull %VertexOutput
54 %uint = OpTypeInt 32 0
55 %uint_0 = OpConstant %uint 0
Ben Clayton329dfd72022-11-23 00:05:05 +000056 %float_1 = OpConstant %float 1
Zhaoming Jiang20cddbf2022-08-05 15:11:44 +000057%modf_4bfced = OpFunction %void None %9
Ben Claytonc0af5c52022-06-02 14:36:10 +000058 %12 = OpLabel
59 %arg_0 = OpVariable %_ptr_Function_v4float Function %5
Ben Claytoned998e92022-11-23 19:57:00 +000060 %res = OpVariable %_ptr_Function___modf_result_vec4_f32 Function %23
Ben Claytonee36e392022-07-26 14:27:25 +000061 OpStore %arg_0 %14
62 %20 = OpLoad %v4float %arg_0
Ben Claytoned998e92022-11-23 19:57:00 +000063 %17 = OpExtInst %__modf_result_vec4_f32 %19 ModfStruct %20
Ben Claytonee36e392022-07-26 14:27:25 +000064 OpStore %res %17
Ben Claytonc0af5c52022-06-02 14:36:10 +000065 OpReturn
66 OpFunctionEnd
Ben Claytonc0af5c52022-06-02 14:36:10 +000067%fragment_main = OpFunction %void None %9
Natalie Chouinarde9027182024-06-13 18:50:19 +000068 %25 = OpLabel
69 %26 = OpFunctionCall %void %modf_4bfced
Ben Claytonc0af5c52022-06-02 14:36:10 +000070 OpReturn
71 OpFunctionEnd
72%compute_main = OpFunction %void None %9
Natalie Chouinarde9027182024-06-13 18:50:19 +000073 %28 = OpLabel
74 %29 = OpFunctionCall %void %modf_4bfced
75 OpReturn
76 OpFunctionEnd
77%vertex_main_inner = OpFunction %VertexOutput None %30
78 %33 = OpLabel
79 %out = OpVariable %_ptr_Function_VertexOutput Function %36
80 %39 = OpAccessChain %_ptr_Function_v4float %out %uint_0
81 OpStore %39 %5
82 %40 = OpFunctionCall %void %modf_4bfced
83 %41 = OpLoad %VertexOutput %out
84 OpReturnValue %41
85 OpFunctionEnd
86%vertex_main = OpFunction %void None %9
87 %43 = OpLabel
88 %44 = OpFunctionCall %VertexOutput %vertex_main_inner
89 %45 = OpCompositeExtract %v4float %44 0
90 OpStore %pos_1 %45
91 OpStore %vertex_point_size %float_1
Ben Claytonc0af5c52022-06-02 14:36:10 +000092 OpReturn
93 OpFunctionEnd