spv.always-discard2.frag

Linked fragment stage:


// Module Version 99
// Generated by (magic number): 51a00bb
// Id's are bound by 36

                              Source GLSL 110
                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main"
                              ExecutionMode 4 OriginLowerLeft
                              Name 4  "main"
                              Name 9  "white"
                              Name 12  "black"
                              Name 15  "color"
                              Name 18  "x"
                              Name 21  "tex_coord"
                              Name 27  "y"
                              Name 34  "gl_FragColor"
                              Decorate 21(tex_coord) Smooth
                              Decorate 34(gl_FragColor) BuiltIn FragColor
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Function 7(fvec4)
              10:    6(float) Constant 1065353216
              11:    7(fvec4) ConstantComposite 10 10 10 10
              13:    6(float) Constant 1045220557
              14:    7(fvec4) ConstantComposite 13 13 13 13
              17:             TypePointer Function 6(float)
              19:             TypeVector 6(float) 2
              20:             TypePointer Input 19(fvec2)
   21(tex_coord):     20(ptr) Variable Input
              24:    6(float) Constant 1073741824
              33:             TypePointer Output 7(fvec4)
34(gl_FragColor):     33(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
        9(white):      8(ptr) Variable Function
       12(black):      8(ptr) Variable Function
       15(color):      8(ptr) Variable Function
           18(x):     17(ptr) Variable Function
           27(y):     17(ptr) Variable Function
                              Store 9(white) 11
                              Store 12(black) 14
              16:    7(fvec4) Load 9(white)
                              Store 15(color) 16
              22:   19(fvec2) Load 21(tex_coord)
              23:    6(float) CompositeExtract 22 0
              25:    6(float) FMul 23 24
              26:    6(float) FSub 25 10
                              Store 18(x) 26
              28:   19(fvec2) Load 21(tex_coord)
              29:    6(float) CompositeExtract 28 1
              30:    6(float) FMul 29 24
              31:    6(float) FSub 30 10
                              Store 27(y) 31
                              Kill
                              FunctionEnd
