spv.always-discard2.frag

Linked fragment stage:


// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 40

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 21 38
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 140
                              Name 4  "main"
                              Name 9  "white"
                              Name 12  "black"
                              Name 15  "color"
                              Name 18  "x"
                              Name 21  "tex_coord"
                              Name 30  "y"
                              Name 38  "gl_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
              22:             TypeInt 32 0
              23:     22(int) Constant 0
              24:             TypePointer Input 6(float)
              27:    6(float) Constant 1073741824
              31:     22(int) Constant 1
              37:             TypePointer Output 7(fvec4)
38(gl_FragColor):     37(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
           30(y):     17(ptr) Variable Function
                              Store 9(white) 11
                              Store 12(black) 14
              16:    7(fvec4) Load 9(white)
                              Store 15(color) 16
              25:     24(ptr) AccessChain 21(tex_coord) 23
              26:    6(float) Load 25
              28:    6(float) FMul 26 27
              29:    6(float) FSub 28 10
                              Store 18(x) 29
              32:     24(ptr) AccessChain 21(tex_coord) 31
              33:    6(float) Load 32
              34:    6(float) FMul 33 27
              35:    6(float) FSub 34 10
                              Store 30(y) 35
                              Kill
                              FunctionEnd
