hlsl.identifier.sample.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:9  Function Definition: sample(i1; (temp int)
0:9    Function Parameters: 
0:9      'x' (in int)
0:?     Sequence
0:9      Branch: Return with expression
0:9        'x' (in int)
0:12  Function Definition: main( (temp 4-component vector of float)
0:12    Function Parameters: 
0:?     Sequence
0:15      Sequence
0:15        move second child to first child (temp int)
0:15          'sample' (temp int)
0:15          Constant:
0:15            3 (const int)
0:17      Sequence
0:17        move second child to first child (temp 4-component vector of float)
0:?           '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:?           Constant:
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:17        Branch: Return
0:?   Linker Objects
0:?     '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)


Linked fragment stage:


Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:9  Function Definition: sample(i1; (temp int)
0:9    Function Parameters: 
0:9      'x' (in int)
0:?     Sequence
0:9      Branch: Return with expression
0:9        'x' (in int)
0:12  Function Definition: main( (temp 4-component vector of float)
0:12    Function Parameters: 
0:?     Sequence
0:15      Sequence
0:15        move second child to first child (temp int)
0:15          'sample' (temp int)
0:15          Constant:
0:15            3 (const int)
0:17      Sequence
0:17        move second child to first child (temp 4-component vector of float)
0:?           '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)
0:?           Constant:
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:17        Branch: Return
0:?   Linker Objects
0:?     '@entryPointOutput' (layout(location=0 ) out 4-component vector of float)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 20
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "main"
                              Name 10  "sample(i1;"
                              Name 9  "x"
                              Name 15  "sample"
                              Name 20  "@entryPointOutput"
                              Decorate 20(@entryPointOutput) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypePointer Function 6(int)
               8:             TypeFunction 6(int) 7(ptr)
              16:      6(int) Constant 3
              17:             TypeFloat 32
              18:             TypeVector 17(float) 4
              19:             TypePointer Output 18(fvec4)
20(@entryPointOutput):     19(ptr) Variable Output
              21:   17(float) Constant 0
              22:   18(fvec4) ConstantComposite 21 21 21 21
         4(main):           2 Function None 3
               5:             Label
      15(sample):      7(ptr) Variable Function
                              Store 15(sample) 16
                              Store 20(@entryPointOutput) 22
                              Return
                              FunctionEnd
  10(sample(i1;):      6(int) Function None 8
            9(x):      7(ptr) FunctionParameter
              11:             Label
              12:      6(int) Load 9(x)
                              ReturnValue 12
                              FunctionEnd
