hlsl.cast.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:5  Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
0:2    Function Parameters: 
0:2      'input' (in 4-component vector of float)
0:?     Sequence
0:3      Branch: Return with expression
0:3        add (temp 4-component vector of float)
0:3          add (temp 4-component vector of float)
0:3            Construct vec4 (temp 4-component vector of float)
0:3              'input' (in 4-component vector of float)
0:3            Convert int to float (temp 4-component vector of float)
0:3              Convert float to int (temp 4-component vector of int)
0:3                'input' (in 4-component vector of float)
0:3          Constant:
0:3            1.198000
0:3            1.198000
0:3            1.198000
0:3            1.198000
0:?   Linker Objects


Linked fragment stage:


Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:5  Function Definition: PixelShaderFunction(vf4; (global 4-component vector of float)
0:2    Function Parameters: 
0:2      'input' (in 4-component vector of float)
0:?     Sequence
0:3      Branch: Return with expression
0:3        add (temp 4-component vector of float)
0:3          add (temp 4-component vector of float)
0:3            Construct vec4 (temp 4-component vector of float)
0:3              'input' (in 4-component vector of float)
0:3            Convert int to float (temp 4-component vector of float)
0:3              Convert float to int (temp 4-component vector of int)
0:3                'input' (in 4-component vector of float)
0:3          Constant:
0:3            1.198000
0:3            1.198000
0:3            1.198000
0:3            1.198000
0:?   Linker Objects

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "PixelShaderFunction" 9
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 450
                              Name 4  "PixelShaderFunction"
                              Name 9  "input"
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Input 7(fvec4)
        9(input):      8(ptr) Variable Input
              17:             TypeInt 32 1
              18:             TypeVector 17(int) 4
              22:    6(float) Constant 1067014160
              23:    7(fvec4) ConstantComposite 22 22 22 22
4(PixelShaderFunction):           2 Function None 3
               5:             Label
              10:    7(fvec4) Load 9(input)
              11:    6(float) CompositeExtract 10 0
              12:    6(float) CompositeExtract 10 1
              13:    6(float) CompositeExtract 10 2
              14:    6(float) CompositeExtract 10 3
              15:    7(fvec4) CompositeConstruct 11 12 13 14
              16:    7(fvec4) Load 9(input)
              19:   18(ivec4) ConvertFToS 16
              20:    7(fvec4) ConvertSToF 19
              21:    7(fvec4) FAdd 15 20
              24:    7(fvec4) FAdd 21 23
                              ReturnValue 24
                              FunctionEnd
