spv.fragmentDensity.frag
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 21

                              Capability Shader
                              Capability FragmentDensityEXT
                              Extension  "SPV_EXT_fragment_invocation_density"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 9 13 17 19
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_EXT_fragment_invocation_density"
                              Name 4  "main"
                              Name 9  "FragSize"
                              Name 13  "gl_FragSizeEXT"
                              Name 17  "FragInvocationCount"
                              Name 19  "gl_FragInvocationCountEXT"
                              Decorate 9(FragSize) Location 0
                              Decorate 13(gl_FragSizeEXT) Flat
                              Decorate 13(gl_FragSizeEXT) BuiltIn FragSizeEXT
                              Decorate 17(FragInvocationCount) Location 2
                              Decorate 19(gl_FragInvocationCountEXT) Flat
                              Decorate 19(gl_FragInvocationCountEXT) BuiltIn FragInvocationCountEXT
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 2
               8:             TypePointer Output 7(fvec2)
     9(FragSize):      8(ptr) Variable Output
              10:             TypeInt 32 1
              11:             TypeVector 10(int) 2
              12:             TypePointer Input 11(ivec2)
13(gl_FragSizeEXT):     12(ptr) Variable Input
              16:             TypePointer Output 10(int)
17(FragInvocationCount):     16(ptr) Variable Output
              18:             TypePointer Input 10(int)
19(gl_FragInvocationCountEXT):     18(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
              14:   11(ivec2) Load 13(gl_FragSizeEXT)
              15:    7(fvec2) ConvertSToF 14
                              Store 9(FragSize) 15
              20:     10(int) Load 19(gl_FragInvocationCountEXT)
                              Store 17(FragInvocationCount) 20
                              Return
                              FunctionEnd
