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