1; SPIR-V
2; Version: 1.0
3; Generator: Khronos Glslang Reference Front End; 1
4; Bound: 50
5; Schema: 0
6               OpCapability Shader
7          %1 = OpExtInstImport "GLSL.std.450"
8               OpMemoryModel Logical GLSL450
9               OpEntryPoint Fragment %fragmentProgram "main" %_entryPointOutput
10               OpExecutionMode %fragmentProgram OriginUpperLeft
11               OpSource HLSL 500
12               OpName %fragmentProgram "fragmentProgram"
13               OpName %_fragmentProgram_ "@fragmentProgram("
14               OpName %uv "uv"
15               OpName %_entryPointOutput "@entryPointOutput"
16               OpDecorate %_entryPointOutput Location 0
17       %void = OpTypeVoid
18          %3 = OpTypeFunction %void
19      %float = OpTypeFloat 32
20    %v4float = OpTypeVector %float 4
21          %8 = OpTypeFunction %v4float
22    %v2float = OpTypeVector %float 2
23%_ptr_Function_v2float = OpTypePointer Function %v2float
24    %float_0 = OpConstant %float 0
25         %15 = OpConstantComposite %v2float %float_0 %float_0
26       %uint = OpTypeInt 32 0
27     %uint_0 = OpConstant %uint 0
28%_ptr_Function_float = OpTypePointer Function %float
29       %bool = OpTypeBool
30    %float_1 = OpConstant %float 1
31         %26 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
32         %29 = OpConstantComposite %v4float %float_1 %float_1 %float_0 %float_1
33%_ptr_Output_v4float = OpTypePointer Output %v4float
34%_entryPointOutput = OpVariable %_ptr_Output_v4float Output
35%_ptr_Function_v4float = OpTypePointer Function %v4float
36      %false = OpConstantFalse %bool
37%fragmentProgram = OpFunction %void None %3
38          %5 = OpLabel
39         %35 = OpVariable %_ptr_Function_v2float Function
40         %37 = OpVariable %_ptr_Function_v4float Function
41               OpBranch %38
42         %38 = OpLabel
43               OpLoopMerge %39 %40 None
44               OpBranch %41
45         %41 = OpLabel
46               OpStore %35 %15
47         %42 = OpAccessChain %_ptr_Function_float %35 %uint_0
48         %43 = OpLoad %float %42
49         %44 = OpFOrdNotEqual %bool %43 %float_0
50               OpSelectionMerge %45 None
51               OpBranchConditional %44 %46 %47
52         %46 = OpLabel
53               OpStore %37 %26
54               OpBranch %39
55         %47 = OpLabel
56               OpStore %37 %29
57               OpBranch %39
58         %45 = OpLabel
59         %48 = OpUndef %v4float
60               OpStore %37 %48
61               OpBranch %39
62         %40 = OpLabel
63               OpBranchConditional %false %38 %39
64         %39 = OpLabel
65         %34 = OpLoad %v4float %37
66               OpStore %_entryPointOutput %34
67               OpReturn
68               OpFunctionEnd
69%_fragmentProgram_ = OpFunction %v4float None %8
70         %10 = OpLabel
71         %uv = OpVariable %_ptr_Function_v2float Function
72               OpStore %uv %15
73         %19 = OpAccessChain %_ptr_Function_float %uv %uint_0
74         %20 = OpLoad %float %19
75         %22 = OpFOrdNotEqual %bool %20 %float_0
76               OpSelectionMerge %24 None
77               OpBranchConditional %22 %23 %28
78         %23 = OpLabel
79               OpReturnValue %26
80         %28 = OpLabel
81               OpReturnValue %29
82         %24 = OpLabel
83         %31 = OpUndef %v4float
84               OpReturnValue %31
85               OpFunctionEnd
86