Update rive-cpp to 2.0 version
[platform/core/uifw/rive-tizen.git] / submodule / skia / tests / sksl / intrinsics / Distance.asm.frag
1 OpCapability Shader
2 %1 = OpExtInstImport "GLSL.std.450"
3 OpMemoryModel Logical GLSL450
4 OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise
5 OpExecutionMode %_entrypoint_v OriginUpperLeft
6 OpName %sk_FragColor "sk_FragColor"
7 OpName %sk_Clockwise "sk_Clockwise"
8 OpName %_UniformBuffer "_UniformBuffer"
9 OpMemberName %_UniformBuffer 0 "pos1"
10 OpMemberName %_UniformBuffer 1 "pos2"
11 OpMemberName %_UniformBuffer 2 "colorGreen"
12 OpMemberName %_UniformBuffer 3 "colorRed"
13 OpName %_entrypoint_v "_entrypoint_v"
14 OpName %main "main"
15 OpName %expected "expected"
16 OpDecorate %sk_FragColor RelaxedPrecision
17 OpDecorate %sk_FragColor Location 0
18 OpDecorate %sk_FragColor Index 0
19 OpDecorate %sk_Clockwise BuiltIn FrontFacing
20 OpMemberDecorate %_UniformBuffer 0 Offset 0
21 OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
22 OpMemberDecorate %_UniformBuffer 1 Offset 16
23 OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
24 OpMemberDecorate %_UniformBuffer 2 Offset 32
25 OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision
26 OpMemberDecorate %_UniformBuffer 3 Offset 48
27 OpMemberDecorate %_UniformBuffer 3 RelaxedPrecision
28 OpDecorate %_UniformBuffer Block
29 OpDecorate %10 Binding 0
30 OpDecorate %10 DescriptorSet 0
31 OpDecorate %expected RelaxedPrecision
32 OpDecorate %33 RelaxedPrecision
33 OpDecorate %38 RelaxedPrecision
34 OpDecorate %39 RelaxedPrecision
35 OpDecorate %42 RelaxedPrecision
36 OpDecorate %43 RelaxedPrecision
37 OpDecorate %47 RelaxedPrecision
38 OpDecorate %49 RelaxedPrecision
39 OpDecorate %50 RelaxedPrecision
40 OpDecorate %52 RelaxedPrecision
41 OpDecorate %53 RelaxedPrecision
42 OpDecorate %58 RelaxedPrecision
43 OpDecorate %60 RelaxedPrecision
44 OpDecorate %61 RelaxedPrecision
45 OpDecorate %64 RelaxedPrecision
46 OpDecorate %65 RelaxedPrecision
47 OpDecorate %70 RelaxedPrecision
48 OpDecorate %72 RelaxedPrecision
49 OpDecorate %74 RelaxedPrecision
50 OpDecorate %96 RelaxedPrecision
51 OpDecorate %99 RelaxedPrecision
52 OpDecorate %100 RelaxedPrecision
53 %float = OpTypeFloat 32
54 %v4float = OpTypeVector %float 4
55 %_ptr_Output_v4float = OpTypePointer Output %v4float
56 %sk_FragColor = OpVariable %_ptr_Output_v4float Output
57 %bool = OpTypeBool
58 %_ptr_Input_bool = OpTypePointer Input %bool
59 %sk_Clockwise = OpVariable %_ptr_Input_bool Input
60 %_UniformBuffer = OpTypeStruct %v4float %v4float %v4float %v4float
61 %_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
62 %10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
63 %void = OpTypeVoid
64 %15 = OpTypeFunction %void
65 %float_0 = OpConstant %float 0
66 %v2float = OpTypeVector %float 2
67 %19 = OpConstantComposite %v2float %float_0 %float_0
68 %_ptr_Function_v2float = OpTypePointer Function %v2float
69 %23 = OpTypeFunction %v4float %_ptr_Function_v2float
70 %_ptr_Function_v4float = OpTypePointer Function %v4float
71 %float_3 = OpConstant %float 3
72 %float_5 = OpConstant %float 5
73 %float_13 = OpConstant %float 13
74 %31 = OpConstantComposite %v4float %float_3 %float_3 %float_5 %float_13
75 %false = OpConstantFalse %bool
76 %_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
77 %int = OpTypeInt 32 1
78 %int_0 = OpConstant %int 0
79 %int_1 = OpConstant %int 1
80 %v3float = OpTypeVector %float 3
81 %true = OpConstantTrue %bool
82 %int_2 = OpConstant %int 2
83 %int_3 = OpConstant %int 3
84 %_entrypoint_v = OpFunction %void None %15
85 %16 = OpLabel
86 %20 = OpVariable %_ptr_Function_v2float Function
87 OpStore %20 %19
88 %22 = OpFunctionCall %v4float %main %20
89 OpStore %sk_FragColor %22
90 OpReturn
91 OpFunctionEnd
92 %main = OpFunction %v4float None %23
93 %24 = OpFunctionParameter %_ptr_Function_v2float
94 %25 = OpLabel
95 %expected = OpVariable %_ptr_Function_v4float Function
96 %90 = OpVariable %_ptr_Function_v4float Function
97 OpStore %expected %31
98 %34 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
99 %38 = OpLoad %v4float %34
100 %39 = OpCompositeExtract %float %38 0
101 %40 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
102 %42 = OpLoad %v4float %40
103 %43 = OpCompositeExtract %float %42 0
104 %33 = OpExtInst %float %1 Distance %39 %43
105 %44 = OpFOrdEqual %bool %33 %float_3
106 OpSelectionMerge %46 None
107 OpBranchConditional %44 %45 %46
108 %45 = OpLabel
109 %48 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
110 %49 = OpLoad %v4float %48
111 %50 = OpVectorShuffle %v2float %49 %49 0 1
112 %51 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
113 %52 = OpLoad %v4float %51
114 %53 = OpVectorShuffle %v2float %52 %52 0 1
115 %47 = OpExtInst %float %1 Distance %50 %53
116 %54 = OpFOrdEqual %bool %47 %float_3
117 OpBranch %46
118 %46 = OpLabel
119 %55 = OpPhi %bool %false %25 %54 %45
120 OpSelectionMerge %57 None
121 OpBranchConditional %55 %56 %57
122 %56 = OpLabel
123 %59 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
124 %60 = OpLoad %v4float %59
125 %61 = OpVectorShuffle %v3float %60 %60 0 1 2
126 %63 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
127 %64 = OpLoad %v4float %63
128 %65 = OpVectorShuffle %v3float %64 %64 0 1 2
129 %58 = OpExtInst %float %1 Distance %61 %65
130 %66 = OpFOrdEqual %bool %58 %float_5
131 OpBranch %57
132 %57 = OpLabel
133 %67 = OpPhi %bool %false %46 %66 %56
134 OpSelectionMerge %69 None
135 OpBranchConditional %67 %68 %69
136 %68 = OpLabel
137 %71 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
138 %72 = OpLoad %v4float %71
139 %73 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
140 %74 = OpLoad %v4float %73
141 %70 = OpExtInst %float %1 Distance %72 %74
142 %75 = OpFOrdEqual %bool %70 %float_13
143 OpBranch %69
144 %69 = OpLabel
145 %76 = OpPhi %bool %false %57 %75 %68
146 OpSelectionMerge %78 None
147 OpBranchConditional %76 %77 %78
148 %77 = OpLabel
149 OpBranch %78
150 %78 = OpLabel
151 %80 = OpPhi %bool %false %69 %true %77
152 OpSelectionMerge %82 None
153 OpBranchConditional %80 %81 %82
154 %81 = OpLabel
155 OpBranch %82
156 %82 = OpLabel
157 %83 = OpPhi %bool %false %78 %true %81
158 OpSelectionMerge %85 None
159 OpBranchConditional %83 %84 %85
160 %84 = OpLabel
161 OpBranch %85
162 %85 = OpLabel
163 %86 = OpPhi %bool %false %82 %true %84
164 OpSelectionMerge %88 None
165 OpBranchConditional %86 %87 %88
166 %87 = OpLabel
167 OpBranch %88
168 %88 = OpLabel
169 %89 = OpPhi %bool %false %85 %true %87
170 OpSelectionMerge %93 None
171 OpBranchConditional %89 %91 %92
172 %91 = OpLabel
173 %94 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2
174 %96 = OpLoad %v4float %94
175 OpStore %90 %96
176 OpBranch %93
177 %92 = OpLabel
178 %97 = OpAccessChain %_ptr_Uniform_v4float %10 %int_3
179 %99 = OpLoad %v4float %97
180 OpStore %90 %99
181 OpBranch %93
182 %93 = OpLabel
183 %100 = OpLoad %v4float %90
184 OpReturnValue %100
185 OpFunctionEnd