1cb93a386Sopenharmony_ciOpCapability Shader 2cb93a386Sopenharmony_ci%1 = OpExtInstImport "GLSL.std.450" 3cb93a386Sopenharmony_ciOpMemoryModel Logical GLSL450 4cb93a386Sopenharmony_ciOpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise 5cb93a386Sopenharmony_ciOpExecutionMode %_entrypoint_v OriginUpperLeft 6cb93a386Sopenharmony_ciOpName %sk_FragColor "sk_FragColor" 7cb93a386Sopenharmony_ciOpName %sk_Clockwise "sk_Clockwise" 8cb93a386Sopenharmony_ciOpName %_UniformBuffer "_UniformBuffer" 9cb93a386Sopenharmony_ciOpMemberName %_UniformBuffer 0 "testInputs" 10cb93a386Sopenharmony_ciOpMemberName %_UniformBuffer 1 "colorGreen" 11cb93a386Sopenharmony_ciOpMemberName %_UniformBuffer 2 "colorRed" 12cb93a386Sopenharmony_ciOpName %_entrypoint_v "_entrypoint_v" 13cb93a386Sopenharmony_ciOpName %main "main" 14cb93a386Sopenharmony_ciOpName %uintValues "uintValues" 15cb93a386Sopenharmony_ciOpName %expectedA "expectedA" 16cb93a386Sopenharmony_ciOpName %clampLow "clampLow" 17cb93a386Sopenharmony_ciOpName %expectedB "expectedB" 18cb93a386Sopenharmony_ciOpName %clampHigh "clampHigh" 19cb93a386Sopenharmony_ciOpDecorate %sk_FragColor RelaxedPrecision 20cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Location 0 21cb93a386Sopenharmony_ciOpDecorate %sk_FragColor Index 0 22cb93a386Sopenharmony_ciOpDecorate %sk_Clockwise BuiltIn FrontFacing 23cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 0 Offset 0 24cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 0 RelaxedPrecision 25cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 1 Offset 16 26cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 1 RelaxedPrecision 27cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 2 Offset 32 28cb93a386Sopenharmony_ciOpMemberDecorate %_UniformBuffer 2 RelaxedPrecision 29cb93a386Sopenharmony_ciOpDecorate %_UniformBuffer Block 30cb93a386Sopenharmony_ciOpDecorate %10 Binding 0 31cb93a386Sopenharmony_ciOpDecorate %10 DescriptorSet 0 32cb93a386Sopenharmony_ciOpDecorate %34 RelaxedPrecision 33cb93a386Sopenharmony_ciOpDecorate %36 RelaxedPrecision 34cb93a386Sopenharmony_ciOpDecorate %38 RelaxedPrecision 35cb93a386Sopenharmony_ciOpDecorate %39 RelaxedPrecision 36cb93a386Sopenharmony_ciOpDecorate %40 RelaxedPrecision 37cb93a386Sopenharmony_ciOpDecorate %42 RelaxedPrecision 38cb93a386Sopenharmony_ciOpDecorate %44 RelaxedPrecision 39cb93a386Sopenharmony_ciOpDecorate %46 RelaxedPrecision 40cb93a386Sopenharmony_ciOpDecorate %217 RelaxedPrecision 41cb93a386Sopenharmony_ciOpDecorate %220 RelaxedPrecision 42cb93a386Sopenharmony_ciOpDecorate %221 RelaxedPrecision 43cb93a386Sopenharmony_ci%float = OpTypeFloat 32 44cb93a386Sopenharmony_ci%v4float = OpTypeVector %float 4 45cb93a386Sopenharmony_ci%_ptr_Output_v4float = OpTypePointer Output %v4float 46cb93a386Sopenharmony_ci%sk_FragColor = OpVariable %_ptr_Output_v4float Output 47cb93a386Sopenharmony_ci%bool = OpTypeBool 48cb93a386Sopenharmony_ci%_ptr_Input_bool = OpTypePointer Input %bool 49cb93a386Sopenharmony_ci%sk_Clockwise = OpVariable %_ptr_Input_bool Input 50cb93a386Sopenharmony_ci%_UniformBuffer = OpTypeStruct %v4float %v4float %v4float 51cb93a386Sopenharmony_ci%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer 52cb93a386Sopenharmony_ci%10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform 53cb93a386Sopenharmony_ci%void = OpTypeVoid 54cb93a386Sopenharmony_ci%15 = OpTypeFunction %void 55cb93a386Sopenharmony_ci%v2float = OpTypeVector %float 2 56cb93a386Sopenharmony_ci%float_0 = OpConstant %float 0 57cb93a386Sopenharmony_ci%19 = OpConstantComposite %v2float %float_0 %float_0 58cb93a386Sopenharmony_ci%_ptr_Function_v2float = OpTypePointer Function %v2float 59cb93a386Sopenharmony_ci%23 = OpTypeFunction %v4float %_ptr_Function_v2float 60cb93a386Sopenharmony_ci%uint = OpTypeInt 32 0 61cb93a386Sopenharmony_ci%v4uint = OpTypeVector %uint 4 62cb93a386Sopenharmony_ci%_ptr_Function_v4uint = OpTypePointer Function %v4uint 63cb93a386Sopenharmony_ci%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 64cb93a386Sopenharmony_ci%int = OpTypeInt 32 1 65cb93a386Sopenharmony_ci%int_0 = OpConstant %int 0 66cb93a386Sopenharmony_ci%float_100 = OpConstant %float 100 67cb93a386Sopenharmony_ci%float_200 = OpConstant %float 200 68cb93a386Sopenharmony_ci%uint_100 = OpConstant %uint 100 69cb93a386Sopenharmony_ci%uint_200 = OpConstant %uint 200 70cb93a386Sopenharmony_ci%uint_275 = OpConstant %uint 275 71cb93a386Sopenharmony_ci%uint_300 = OpConstant %uint 300 72cb93a386Sopenharmony_ci%54 = OpConstantComposite %v4uint %uint_100 %uint_200 %uint_275 %uint_300 73cb93a386Sopenharmony_ci%uint_0 = OpConstant %uint 0 74cb93a386Sopenharmony_ci%57 = OpConstantComposite %v4uint %uint_100 %uint_0 %uint_0 %uint_300 75cb93a386Sopenharmony_ci%uint_250 = OpConstant %uint 250 76cb93a386Sopenharmony_ci%uint_425 = OpConstant %uint 425 77cb93a386Sopenharmony_ci%61 = OpConstantComposite %v4uint %uint_100 %uint_200 %uint_250 %uint_425 78cb93a386Sopenharmony_ci%uint_400 = OpConstant %uint 400 79cb93a386Sopenharmony_ci%uint_500 = OpConstant %uint 500 80cb93a386Sopenharmony_ci%65 = OpConstantComposite %v4uint %uint_300 %uint_400 %uint_250 %uint_500 81cb93a386Sopenharmony_ci%false = OpConstantFalse %bool 82cb93a386Sopenharmony_ci%v2uint = OpTypeVector %uint 2 83cb93a386Sopenharmony_ci%v2bool = OpTypeVector %bool 2 84cb93a386Sopenharmony_ci%v3uint = OpTypeVector %uint 3 85cb93a386Sopenharmony_ci%v3bool = OpTypeVector %bool 3 86cb93a386Sopenharmony_ci%v4bool = OpTypeVector %bool 4 87cb93a386Sopenharmony_ci%120 = OpConstantComposite %v2uint %uint_100 %uint_200 88cb93a386Sopenharmony_ci%128 = OpConstantComposite %v3uint %uint_100 %uint_200 %uint_275 89cb93a386Sopenharmony_ci%154 = OpConstantComposite %v2uint %uint_100 %uint_0 90cb93a386Sopenharmony_ci%155 = OpConstantComposite %v2uint %uint_300 %uint_400 91cb93a386Sopenharmony_ci%166 = OpConstantComposite %v3uint %uint_100 %uint_0 %uint_0 92cb93a386Sopenharmony_ci%167 = OpConstantComposite %v3uint %uint_300 %uint_400 %uint_250 93cb93a386Sopenharmony_ci%198 = OpConstantComposite %v3uint %uint_100 %uint_200 %uint_250 94cb93a386Sopenharmony_ci%_ptr_Function_v4float = OpTypePointer Function %v4float 95cb93a386Sopenharmony_ci%int_1 = OpConstant %int 1 96cb93a386Sopenharmony_ci%int_2 = OpConstant %int 2 97cb93a386Sopenharmony_ci%_entrypoint_v = OpFunction %void None %15 98cb93a386Sopenharmony_ci%16 = OpLabel 99cb93a386Sopenharmony_ci%20 = OpVariable %_ptr_Function_v2float Function 100cb93a386Sopenharmony_ciOpStore %20 %19 101cb93a386Sopenharmony_ci%22 = OpFunctionCall %v4float %main %20 102cb93a386Sopenharmony_ciOpStore %sk_FragColor %22 103cb93a386Sopenharmony_ciOpReturn 104cb93a386Sopenharmony_ciOpFunctionEnd 105cb93a386Sopenharmony_ci%main = OpFunction %v4float None %23 106cb93a386Sopenharmony_ci%24 = OpFunctionParameter %_ptr_Function_v2float 107cb93a386Sopenharmony_ci%25 = OpLabel 108cb93a386Sopenharmony_ci%uintValues = OpVariable %_ptr_Function_v4uint Function 109cb93a386Sopenharmony_ci%expectedA = OpVariable %_ptr_Function_v4uint Function 110cb93a386Sopenharmony_ci%clampLow = OpVariable %_ptr_Function_v4uint Function 111cb93a386Sopenharmony_ci%expectedB = OpVariable %_ptr_Function_v4uint Function 112cb93a386Sopenharmony_ci%clampHigh = OpVariable %_ptr_Function_v4uint Function 113cb93a386Sopenharmony_ci%210 = OpVariable %_ptr_Function_v4float Function 114cb93a386Sopenharmony_ci%30 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0 115cb93a386Sopenharmony_ci%34 = OpLoad %v4float %30 116cb93a386Sopenharmony_ci%36 = OpVectorTimesScalar %v4float %34 %float_100 117cb93a386Sopenharmony_ci%38 = OpCompositeConstruct %v4float %float_200 %float_200 %float_200 %float_200 118cb93a386Sopenharmony_ci%39 = OpFAdd %v4float %36 %38 119cb93a386Sopenharmony_ci%40 = OpCompositeExtract %float %39 0 120cb93a386Sopenharmony_ci%41 = OpConvertFToU %uint %40 121cb93a386Sopenharmony_ci%42 = OpCompositeExtract %float %39 1 122cb93a386Sopenharmony_ci%43 = OpConvertFToU %uint %42 123cb93a386Sopenharmony_ci%44 = OpCompositeExtract %float %39 2 124cb93a386Sopenharmony_ci%45 = OpConvertFToU %uint %44 125cb93a386Sopenharmony_ci%46 = OpCompositeExtract %float %39 3 126cb93a386Sopenharmony_ci%47 = OpConvertFToU %uint %46 127cb93a386Sopenharmony_ci%48 = OpCompositeConstruct %v4uint %41 %43 %45 %47 128cb93a386Sopenharmony_ciOpStore %uintValues %48 129cb93a386Sopenharmony_ciOpStore %expectedA %54 130cb93a386Sopenharmony_ciOpStore %clampLow %57 131cb93a386Sopenharmony_ciOpStore %expectedB %61 132cb93a386Sopenharmony_ciOpStore %clampHigh %65 133cb93a386Sopenharmony_ci%68 = OpLoad %v4uint %uintValues 134cb93a386Sopenharmony_ci%69 = OpCompositeExtract %uint %68 0 135cb93a386Sopenharmony_ci%67 = OpExtInst %uint %1 UClamp %69 %uint_100 %uint_300 136cb93a386Sopenharmony_ci%70 = OpLoad %v4uint %expectedA 137cb93a386Sopenharmony_ci%71 = OpCompositeExtract %uint %70 0 138cb93a386Sopenharmony_ci%72 = OpIEqual %bool %67 %71 139cb93a386Sopenharmony_ciOpSelectionMerge %74 None 140cb93a386Sopenharmony_ciOpBranchConditional %72 %73 %74 141cb93a386Sopenharmony_ci%73 = OpLabel 142cb93a386Sopenharmony_ci%76 = OpLoad %v4uint %uintValues 143cb93a386Sopenharmony_ci%77 = OpVectorShuffle %v2uint %76 %76 0 1 144cb93a386Sopenharmony_ci%79 = OpCompositeConstruct %v2uint %uint_100 %uint_100 145cb93a386Sopenharmony_ci%80 = OpCompositeConstruct %v2uint %uint_300 %uint_300 146cb93a386Sopenharmony_ci%75 = OpExtInst %v2uint %1 UClamp %77 %79 %80 147cb93a386Sopenharmony_ci%81 = OpLoad %v4uint %expectedA 148cb93a386Sopenharmony_ci%82 = OpVectorShuffle %v2uint %81 %81 0 1 149cb93a386Sopenharmony_ci%83 = OpIEqual %v2bool %75 %82 150cb93a386Sopenharmony_ci%85 = OpAll %bool %83 151cb93a386Sopenharmony_ciOpBranch %74 152cb93a386Sopenharmony_ci%74 = OpLabel 153cb93a386Sopenharmony_ci%86 = OpPhi %bool %false %25 %85 %73 154cb93a386Sopenharmony_ciOpSelectionMerge %88 None 155cb93a386Sopenharmony_ciOpBranchConditional %86 %87 %88 156cb93a386Sopenharmony_ci%87 = OpLabel 157cb93a386Sopenharmony_ci%90 = OpLoad %v4uint %uintValues 158cb93a386Sopenharmony_ci%91 = OpVectorShuffle %v3uint %90 %90 0 1 2 159cb93a386Sopenharmony_ci%93 = OpCompositeConstruct %v3uint %uint_100 %uint_100 %uint_100 160cb93a386Sopenharmony_ci%94 = OpCompositeConstruct %v3uint %uint_300 %uint_300 %uint_300 161cb93a386Sopenharmony_ci%89 = OpExtInst %v3uint %1 UClamp %91 %93 %94 162cb93a386Sopenharmony_ci%95 = OpLoad %v4uint %expectedA 163cb93a386Sopenharmony_ci%96 = OpVectorShuffle %v3uint %95 %95 0 1 2 164cb93a386Sopenharmony_ci%97 = OpIEqual %v3bool %89 %96 165cb93a386Sopenharmony_ci%99 = OpAll %bool %97 166cb93a386Sopenharmony_ciOpBranch %88 167cb93a386Sopenharmony_ci%88 = OpLabel 168cb93a386Sopenharmony_ci%100 = OpPhi %bool %false %74 %99 %87 169cb93a386Sopenharmony_ciOpSelectionMerge %102 None 170cb93a386Sopenharmony_ciOpBranchConditional %100 %101 %102 171cb93a386Sopenharmony_ci%101 = OpLabel 172cb93a386Sopenharmony_ci%104 = OpLoad %v4uint %uintValues 173cb93a386Sopenharmony_ci%105 = OpCompositeConstruct %v4uint %uint_100 %uint_100 %uint_100 %uint_100 174cb93a386Sopenharmony_ci%106 = OpCompositeConstruct %v4uint %uint_300 %uint_300 %uint_300 %uint_300 175cb93a386Sopenharmony_ci%103 = OpExtInst %v4uint %1 UClamp %104 %105 %106 176cb93a386Sopenharmony_ci%107 = OpLoad %v4uint %expectedA 177cb93a386Sopenharmony_ci%108 = OpIEqual %v4bool %103 %107 178cb93a386Sopenharmony_ci%110 = OpAll %bool %108 179cb93a386Sopenharmony_ciOpBranch %102 180cb93a386Sopenharmony_ci%102 = OpLabel 181cb93a386Sopenharmony_ci%111 = OpPhi %bool %false %88 %110 %101 182cb93a386Sopenharmony_ciOpSelectionMerge %113 None 183cb93a386Sopenharmony_ciOpBranchConditional %111 %112 %113 184cb93a386Sopenharmony_ci%112 = OpLabel 185cb93a386Sopenharmony_ci%114 = OpLoad %v4uint %expectedA 186cb93a386Sopenharmony_ci%115 = OpCompositeExtract %uint %114 0 187cb93a386Sopenharmony_ci%116 = OpIEqual %bool %uint_100 %115 188cb93a386Sopenharmony_ciOpBranch %113 189cb93a386Sopenharmony_ci%113 = OpLabel 190cb93a386Sopenharmony_ci%117 = OpPhi %bool %false %102 %116 %112 191cb93a386Sopenharmony_ciOpSelectionMerge %119 None 192cb93a386Sopenharmony_ciOpBranchConditional %117 %118 %119 193cb93a386Sopenharmony_ci%118 = OpLabel 194cb93a386Sopenharmony_ci%121 = OpLoad %v4uint %expectedA 195cb93a386Sopenharmony_ci%122 = OpVectorShuffle %v2uint %121 %121 0 1 196cb93a386Sopenharmony_ci%123 = OpIEqual %v2bool %120 %122 197cb93a386Sopenharmony_ci%124 = OpAll %bool %123 198cb93a386Sopenharmony_ciOpBranch %119 199cb93a386Sopenharmony_ci%119 = OpLabel 200cb93a386Sopenharmony_ci%125 = OpPhi %bool %false %113 %124 %118 201cb93a386Sopenharmony_ciOpSelectionMerge %127 None 202cb93a386Sopenharmony_ciOpBranchConditional %125 %126 %127 203cb93a386Sopenharmony_ci%126 = OpLabel 204cb93a386Sopenharmony_ci%129 = OpLoad %v4uint %expectedA 205cb93a386Sopenharmony_ci%130 = OpVectorShuffle %v3uint %129 %129 0 1 2 206cb93a386Sopenharmony_ci%131 = OpIEqual %v3bool %128 %130 207cb93a386Sopenharmony_ci%132 = OpAll %bool %131 208cb93a386Sopenharmony_ciOpBranch %127 209cb93a386Sopenharmony_ci%127 = OpLabel 210cb93a386Sopenharmony_ci%133 = OpPhi %bool %false %119 %132 %126 211cb93a386Sopenharmony_ciOpSelectionMerge %135 None 212cb93a386Sopenharmony_ciOpBranchConditional %133 %134 %135 213cb93a386Sopenharmony_ci%134 = OpLabel 214cb93a386Sopenharmony_ci%136 = OpLoad %v4uint %expectedA 215cb93a386Sopenharmony_ci%137 = OpIEqual %v4bool %54 %136 216cb93a386Sopenharmony_ci%138 = OpAll %bool %137 217cb93a386Sopenharmony_ciOpBranch %135 218cb93a386Sopenharmony_ci%135 = OpLabel 219cb93a386Sopenharmony_ci%139 = OpPhi %bool %false %127 %138 %134 220cb93a386Sopenharmony_ciOpSelectionMerge %141 None 221cb93a386Sopenharmony_ciOpBranchConditional %139 %140 %141 222cb93a386Sopenharmony_ci%140 = OpLabel 223cb93a386Sopenharmony_ci%143 = OpLoad %v4uint %uintValues 224cb93a386Sopenharmony_ci%144 = OpCompositeExtract %uint %143 0 225cb93a386Sopenharmony_ci%142 = OpExtInst %uint %1 UClamp %144 %uint_100 %uint_300 226cb93a386Sopenharmony_ci%145 = OpLoad %v4uint %expectedB 227cb93a386Sopenharmony_ci%146 = OpCompositeExtract %uint %145 0 228cb93a386Sopenharmony_ci%147 = OpIEqual %bool %142 %146 229cb93a386Sopenharmony_ciOpBranch %141 230cb93a386Sopenharmony_ci%141 = OpLabel 231cb93a386Sopenharmony_ci%148 = OpPhi %bool %false %135 %147 %140 232cb93a386Sopenharmony_ciOpSelectionMerge %150 None 233cb93a386Sopenharmony_ciOpBranchConditional %148 %149 %150 234cb93a386Sopenharmony_ci%149 = OpLabel 235cb93a386Sopenharmony_ci%152 = OpLoad %v4uint %uintValues 236cb93a386Sopenharmony_ci%153 = OpVectorShuffle %v2uint %152 %152 0 1 237cb93a386Sopenharmony_ci%151 = OpExtInst %v2uint %1 UClamp %153 %154 %155 238cb93a386Sopenharmony_ci%156 = OpLoad %v4uint %expectedB 239cb93a386Sopenharmony_ci%157 = OpVectorShuffle %v2uint %156 %156 0 1 240cb93a386Sopenharmony_ci%158 = OpIEqual %v2bool %151 %157 241cb93a386Sopenharmony_ci%159 = OpAll %bool %158 242cb93a386Sopenharmony_ciOpBranch %150 243cb93a386Sopenharmony_ci%150 = OpLabel 244cb93a386Sopenharmony_ci%160 = OpPhi %bool %false %141 %159 %149 245cb93a386Sopenharmony_ciOpSelectionMerge %162 None 246cb93a386Sopenharmony_ciOpBranchConditional %160 %161 %162 247cb93a386Sopenharmony_ci%161 = OpLabel 248cb93a386Sopenharmony_ci%164 = OpLoad %v4uint %uintValues 249cb93a386Sopenharmony_ci%165 = OpVectorShuffle %v3uint %164 %164 0 1 2 250cb93a386Sopenharmony_ci%163 = OpExtInst %v3uint %1 UClamp %165 %166 %167 251cb93a386Sopenharmony_ci%168 = OpLoad %v4uint %expectedB 252cb93a386Sopenharmony_ci%169 = OpVectorShuffle %v3uint %168 %168 0 1 2 253cb93a386Sopenharmony_ci%170 = OpIEqual %v3bool %163 %169 254cb93a386Sopenharmony_ci%171 = OpAll %bool %170 255cb93a386Sopenharmony_ciOpBranch %162 256cb93a386Sopenharmony_ci%162 = OpLabel 257cb93a386Sopenharmony_ci%172 = OpPhi %bool %false %150 %171 %161 258cb93a386Sopenharmony_ciOpSelectionMerge %174 None 259cb93a386Sopenharmony_ciOpBranchConditional %172 %173 %174 260cb93a386Sopenharmony_ci%173 = OpLabel 261cb93a386Sopenharmony_ci%176 = OpLoad %v4uint %uintValues 262cb93a386Sopenharmony_ci%177 = OpLoad %v4uint %clampLow 263cb93a386Sopenharmony_ci%178 = OpLoad %v4uint %clampHigh 264cb93a386Sopenharmony_ci%175 = OpExtInst %v4uint %1 UClamp %176 %177 %178 265cb93a386Sopenharmony_ci%179 = OpLoad %v4uint %expectedB 266cb93a386Sopenharmony_ci%180 = OpIEqual %v4bool %175 %179 267cb93a386Sopenharmony_ci%181 = OpAll %bool %180 268cb93a386Sopenharmony_ciOpBranch %174 269cb93a386Sopenharmony_ci%174 = OpLabel 270cb93a386Sopenharmony_ci%182 = OpPhi %bool %false %162 %181 %173 271cb93a386Sopenharmony_ciOpSelectionMerge %184 None 272cb93a386Sopenharmony_ciOpBranchConditional %182 %183 %184 273cb93a386Sopenharmony_ci%183 = OpLabel 274cb93a386Sopenharmony_ci%185 = OpLoad %v4uint %expectedB 275cb93a386Sopenharmony_ci%186 = OpCompositeExtract %uint %185 0 276cb93a386Sopenharmony_ci%187 = OpIEqual %bool %uint_100 %186 277cb93a386Sopenharmony_ciOpBranch %184 278cb93a386Sopenharmony_ci%184 = OpLabel 279cb93a386Sopenharmony_ci%188 = OpPhi %bool %false %174 %187 %183 280cb93a386Sopenharmony_ciOpSelectionMerge %190 None 281cb93a386Sopenharmony_ciOpBranchConditional %188 %189 %190 282cb93a386Sopenharmony_ci%189 = OpLabel 283cb93a386Sopenharmony_ci%191 = OpLoad %v4uint %expectedB 284cb93a386Sopenharmony_ci%192 = OpVectorShuffle %v2uint %191 %191 0 1 285cb93a386Sopenharmony_ci%193 = OpIEqual %v2bool %120 %192 286cb93a386Sopenharmony_ci%194 = OpAll %bool %193 287cb93a386Sopenharmony_ciOpBranch %190 288cb93a386Sopenharmony_ci%190 = OpLabel 289cb93a386Sopenharmony_ci%195 = OpPhi %bool %false %184 %194 %189 290cb93a386Sopenharmony_ciOpSelectionMerge %197 None 291cb93a386Sopenharmony_ciOpBranchConditional %195 %196 %197 292cb93a386Sopenharmony_ci%196 = OpLabel 293cb93a386Sopenharmony_ci%199 = OpLoad %v4uint %expectedB 294cb93a386Sopenharmony_ci%200 = OpVectorShuffle %v3uint %199 %199 0 1 2 295cb93a386Sopenharmony_ci%201 = OpIEqual %v3bool %198 %200 296cb93a386Sopenharmony_ci%202 = OpAll %bool %201 297cb93a386Sopenharmony_ciOpBranch %197 298cb93a386Sopenharmony_ci%197 = OpLabel 299cb93a386Sopenharmony_ci%203 = OpPhi %bool %false %190 %202 %196 300cb93a386Sopenharmony_ciOpSelectionMerge %205 None 301cb93a386Sopenharmony_ciOpBranchConditional %203 %204 %205 302cb93a386Sopenharmony_ci%204 = OpLabel 303cb93a386Sopenharmony_ci%206 = OpLoad %v4uint %expectedB 304cb93a386Sopenharmony_ci%207 = OpIEqual %v4bool %61 %206 305cb93a386Sopenharmony_ci%208 = OpAll %bool %207 306cb93a386Sopenharmony_ciOpBranch %205 307cb93a386Sopenharmony_ci%205 = OpLabel 308cb93a386Sopenharmony_ci%209 = OpPhi %bool %false %197 %208 %204 309cb93a386Sopenharmony_ciOpSelectionMerge %214 None 310cb93a386Sopenharmony_ciOpBranchConditional %209 %212 %213 311cb93a386Sopenharmony_ci%212 = OpLabel 312cb93a386Sopenharmony_ci%215 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1 313cb93a386Sopenharmony_ci%217 = OpLoad %v4float %215 314cb93a386Sopenharmony_ciOpStore %210 %217 315cb93a386Sopenharmony_ciOpBranch %214 316cb93a386Sopenharmony_ci%213 = OpLabel 317cb93a386Sopenharmony_ci%218 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2 318cb93a386Sopenharmony_ci%220 = OpLoad %v4float %218 319cb93a386Sopenharmony_ciOpStore %210 %220 320cb93a386Sopenharmony_ciOpBranch %214 321cb93a386Sopenharmony_ci%214 = OpLabel 322cb93a386Sopenharmony_ci%221 = OpLoad %v4float %210 323cb93a386Sopenharmony_ciOpReturnValue %221 324cb93a386Sopenharmony_ciOpFunctionEnd 325