spv.length.frag

Linked fragment stage:


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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 14 26
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 140
                              Name 4  "main"
                              Name 9  "t"
                              Name 14  "v"
                              Name 26  "gl_FragColor"
                              Name 32  "u"
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 2
               8:             TypePointer Function 7(fvec2)
              10:             TypeInt 32 0
              11:     10(int) Constant 2
              12:             TypeArray 7(fvec2) 11
              13:             TypePointer Input 12
           14(v):     13(ptr) Variable Input
              15:             TypeInt 32 1
              16:     15(int) Constant 0
              17:             TypePointer Input 7(fvec2)
              20:     15(int) Constant 1
              24:             TypeVector 6(float) 4
              25:             TypePointer Output 24(fvec4)
26(gl_FragColor):     25(ptr) Variable Output
              27:    6(float) Constant 1106247680
              28:   24(fvec4) ConstantComposite 27 27 27 27
              29:     10(int) Constant 3
              30:             TypeArray 24(fvec4) 29
              31:             TypePointer Private 30
           32(u):     31(ptr) Variable Private
         4(main):           2 Function None 3
               5:             Label
            9(t):      8(ptr) Variable Function
              18:     17(ptr) AccessChain 14(v) 16
              19:    7(fvec2) Load 18
              21:     17(ptr) AccessChain 14(v) 20
              22:    7(fvec2) Load 21
              23:    7(fvec2) FAdd 19 22
                              Store 9(t) 23
                              Store 26(gl_FragColor) 28
                              Return
                              FunctionEnd
