summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/spirv-cross/shaders/asm/frag/line-directive.line.asm.frag
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-cross/shaders/asm/frag/line-directive.line.asm.frag')
-rw-r--r--3rdparty/bgfx/3rdparty/spirv-cross/shaders/asm/frag/line-directive.line.asm.frag221
1 files changed, 221 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-cross/shaders/asm/frag/line-directive.line.asm.frag b/3rdparty/bgfx/3rdparty/spirv-cross/shaders/asm/frag/line-directive.line.asm.frag
new file mode 100644
index 00000000000..9e08e9a8911
--- /dev/null
+++ b/3rdparty/bgfx/3rdparty/spirv-cross/shaders/asm/frag/line-directive.line.asm.frag
@@ -0,0 +1,221 @@
+; SPIR-V
+; Version: 1.0
+; Generator: Google Shaderc over Glslang; 7
+; Bound: 83
+; Schema: 0
+ OpCapability Shader
+ %2 = OpExtInstImport "GLSL.std.450"
+ OpMemoryModel Logical GLSL450
+ OpEntryPoint Fragment %main "main" %FragColor %vColor
+ OpExecutionMode %main OriginUpperLeft
+ %1 = OpString "test.frag"
+ OpSource GLSL 450 %1 "// OpModuleProcessed entry-point main
+// OpModuleProcessed client vulkan100
+// OpModuleProcessed target-env vulkan1.0
+// OpModuleProcessed entry-point main
+#line 1
+#version 450
+
+layout(location = 0) in float vColor;
+layout(location = 0) out float FragColor;
+
+void func()
+{
+ FragColor = 1.0;
+ FragColor = 2.0;
+ if (vColor < 0.0)
+ {
+ FragColor = 3.0;
+ }
+ else
+ {
+ FragColor = 4.0;
+ }
+
+ for (int i = 0; i < 40 + vColor; i += int(vColor) + 5)
+ {
+ FragColor += 0.2;
+ FragColor += 0.3;
+ }
+
+ switch (int(vColor))
+ {
+ case 0:
+ FragColor += 0.2;
+ break;
+
+ case 1:
+ FragColor += 0.4;
+ break;
+
+ default:
+ FragColor += 0.8;
+ break;
+ }
+
+ do
+ {
+ FragColor += 10.0 + vColor;
+ } while(FragColor < 100.0);
+}
+
+void main()
+{
+ func();
+}
+"
+ OpSourceExtension "GL_GOOGLE_cpp_style_line_directive"
+ OpSourceExtension "GL_GOOGLE_include_directive"
+ OpName %main "main"
+ OpName %func_ "func("
+ OpName %FragColor "FragColor"
+ OpName %vColor "vColor"
+ OpName %i "i"
+ OpDecorate %FragColor Location 0
+ OpDecorate %vColor Location 0
+ %void = OpTypeVoid
+ %4 = OpTypeFunction %void
+ %float = OpTypeFloat 32
+%_ptr_Output_float = OpTypePointer Output %float
+ %FragColor = OpVariable %_ptr_Output_float Output
+ %float_1 = OpConstant %float 1
+ %float_2 = OpConstant %float 2
+%_ptr_Input_float = OpTypePointer Input %float
+ %vColor = OpVariable %_ptr_Input_float Input
+ %float_0 = OpConstant %float 0
+ %bool = OpTypeBool
+ %float_3 = OpConstant %float 3
+ %float_4 = OpConstant %float 4
+ %int = OpTypeInt 32 1
+
+ ; Should be ignored
+ OpLine %1 5 0
+
+%_ptr_Function_int = OpTypePointer Function %int
+ %int_0 = OpConstant %int 0
+ %float_40 = OpConstant %float 40
+%float_0_200000003 = OpConstant %float 0.200000003
+%float_0_300000012 = OpConstant %float 0.300000012
+ %int_5 = OpConstant %int 5
+
+ ; Should be ignored
+ OpLine %1 5 0
+
+%float_0_400000006 = OpConstant %float 0.400000006
+%float_0_800000012 = OpConstant %float 0.800000012
+ %float_10 = OpConstant %float 10
+ %float_100 = OpConstant %float 100
+ %main = OpFunction %void None %4
+ OpLine %1 46 0
+ %6 = OpLabel
+ OpLine %1 48 0
+ %82 = OpFunctionCall %void %func_
+ OpReturn
+ OpFunctionEnd
+
+ ; Should be ignored
+ OpLine %1 5 0
+
+ %func_ = OpFunction %void None %4
+ OpLine %1 6 0
+ %8 = OpLabel
+ %i = OpVariable %_ptr_Function_int Function
+ OpLine %1 8 0
+ OpStore %FragColor %float_1
+ OpLine %1 9 0
+ OpStore %FragColor %float_2
+ OpLine %1 10 0
+ %16 = OpLoad %float %vColor
+ %19 = OpFOrdLessThan %bool %16 %float_0
+ OpSelectionMerge %21 None
+ OpBranchConditional %19 %20 %23
+ %20 = OpLabel
+ OpLine %1 12 0
+ OpStore %FragColor %float_3
+ OpBranch %21
+ %23 = OpLabel
+ OpLine %1 16 0
+ OpStore %FragColor %float_4
+ OpBranch %21
+ %21 = OpLabel
+ OpLine %1 19 0
+ OpStore %i %int_0
+ OpBranch %29
+ %29 = OpLabel
+ OpLoopMerge %31 %32 None
+ OpBranch %33
+ %33 = OpLabel
+ %34 = OpLoad %int %i
+ %35 = OpConvertSToF %float %34
+ %37 = OpLoad %float %vColor
+ %38 = OpFAdd %float %float_40 %37
+ %39 = OpFOrdLessThan %bool %35 %38
+ OpBranchConditional %39 %30 %31
+ %30 = OpLabel
+ OpLine %1 21 0
+ %41 = OpLoad %float %FragColor
+ %42 = OpFAdd %float %41 %float_0_200000003
+ OpStore %FragColor %42
+ OpLine %1 22 0
+ %44 = OpLoad %float %FragColor
+ %45 = OpFAdd %float %44 %float_0_300000012
+ OpStore %FragColor %45
+ OpBranch %32
+ %32 = OpLabel
+ OpLine %1 19 0
+ %46 = OpLoad %float %vColor
+ %47 = OpConvertFToS %int %46
+ %49 = OpIAdd %int %47 %int_5
+ %50 = OpLoad %int %i
+ %51 = OpIAdd %int %50 %49
+ OpStore %i %51
+ OpBranch %29
+ %31 = OpLabel
+ OpLine %1 25 0
+ %52 = OpLoad %float %vColor
+ %53 = OpConvertFToS %int %52
+ OpSelectionMerge %57 None
+ OpSwitch %53 %56 0 %54 1 %55
+ %56 = OpLabel
+ OpLine %1 36 0
+ %66 = OpLoad %float %FragColor
+ %67 = OpFAdd %float %66 %float_0_800000012
+ OpStore %FragColor %67
+ OpLine %1 37 0
+ OpBranch %57
+ %54 = OpLabel
+ OpLine %1 28 0
+ %58 = OpLoad %float %FragColor
+ %59 = OpFAdd %float %58 %float_0_200000003
+ OpStore %FragColor %59
+ OpLine %1 29 0
+ OpBranch %57
+ %55 = OpLabel
+ OpLine %1 32 0
+ %62 = OpLoad %float %FragColor
+ %63 = OpFAdd %float %62 %float_0_400000006
+ OpStore %FragColor %63
+ OpLine %1 33 0
+ OpBranch %57
+ %57 = OpLabel
+ OpBranch %70
+ OpLine %1 43 0
+ %70 = OpLabel
+ OpLoopMerge %72 %73 None
+ OpBranch %71
+ %71 = OpLabel
+ OpLine %1 42 0
+ %75 = OpLoad %float %vColor
+ %76 = OpFAdd %float %float_10 %75
+ %77 = OpLoad %float %FragColor
+ %78 = OpFAdd %float %77 %76
+ OpStore %FragColor %78
+ OpBranch %73
+ %73 = OpLabel
+ OpLine %1 43 0
+ %79 = OpLoad %float %FragColor
+ %81 = OpFOrdLessThan %bool %79 %float_100
+ OpBranchConditional %81 %70 %72
+ %72 = OpLabel
+ OpReturn
+ OpFunctionEnd