Home | History | Annotate | Download | only in baseResults
      1 hlsl.structbuffer.rw.frag
      2 Shader version: 500
      3 gl_FragCoord origin is upper left
      4 0:? Sequence
      5 0:12  Function Definition: @main(u1; ( temp 4-component vector of float)
      6 0:12    Function Parameters: 
      7 0:12      'pos' ( in uint)
      8 0:?     Sequence
      9 0:13      move second child to first child ( temp float)
     10 0:13        indirect index (layout( row_major std430) buffer float)
     11 0:13          @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of float)
     12 0:13            'sbuf2' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of float @data})
     13 0:13            Constant:
     14 0:13              0 (const uint)
     15 0:13          add ( temp uint)
     16 0:13            'pos' ( in uint)
     17 0:13            Constant:
     18 0:13              1 (const uint)
     19 0:13        Constant:
     20 0:13          42.000000
     21 0:17      Sequence
     22 0:17        move second child to first child ( temp uint)
     23 0:17          'size' ( temp uint)
     24 0:17          array length ( temp uint)
     25 0:17            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test})
     26 0:17              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
     27 0:17              Constant:
     28 0:17                0 (const uint)
     29 0:17        move second child to first child ( temp uint)
     30 0:17          'stride' ( temp uint)
     31 0:17          Constant:
     32 0:17            16 (const uint)
     33 0:19      Test condition and select ( temp void)
     34 0:19        Condition
     35 0:19        test: direct index for structure ( temp bool)
     36 0:19          indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color,  temp bool test})
     37 0:19            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test})
     38 0:19              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
     39 0:19              Constant:
     40 0:19                0 (const uint)
     41 0:19            'pos' ( in uint)
     42 0:19          Constant:
     43 0:19            1 (const int)
     44 0:19        true case
     45 0:20        Branch: Return with expression
     46 0:?           Construct vec4 ( temp 4-component vector of float)
     47 0:20            add ( temp 3-component vector of float)
     48 0:20              color: direct index for structure ( temp 3-component vector of float)
     49 0:20                indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color,  temp bool test})
     50 0:20                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test})
     51 0:20                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
     52 0:20                    Constant:
     53 0:20                      0 (const uint)
     54 0:20                  'pos' ( in uint)
     55 0:20                Constant:
     56 0:20                  0 (const int)
     57 0:20              indirect index (layout( row_major std430) buffer float)
     58 0:20                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of float)
     59 0:20                  'sbuf2' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of float @data})
     60 0:20                  Constant:
     61 0:20                    0 (const uint)
     62 0:20                'pos' ( in uint)
     63 0:20            Constant:
     64 0:20              0.000000
     65 0:19        false case
     66 0:22        Branch: Return with expression
     67 0:22          Construct vec4 ( temp 4-component vector of float)
     68 0:22            Convert uint to float ( temp float)
     69 0:22              add ( temp uint)
     70 0:22                'size' ( temp uint)
     71 0:22                'stride' ( temp uint)
     72 0:12  Function Definition: main( ( temp void)
     73 0:12    Function Parameters: 
     74 0:?     Sequence
     75 0:12      move second child to first child ( temp uint)
     76 0:?         'pos' ( temp uint)
     77 0:?         'pos' (layout( location=0) flat in uint)
     78 0:12      move second child to first child ( temp 4-component vector of float)
     79 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
     80 0:12        Function Call: @main(u1; ( temp 4-component vector of float)
     81 0:?           'pos' ( temp uint)
     82 0:?   Linker Objects
     83 0:?     'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
     84 0:?     'sbuf2' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of float @data})
     85 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
     86 0:?     'pos' (layout( location=0) flat in uint)
     87 
     88 
     89 Linked fragment stage:
     90 
     91 
     92 Shader version: 500
     93 gl_FragCoord origin is upper left
     94 0:? Sequence
     95 0:12  Function Definition: @main(u1; ( temp 4-component vector of float)
     96 0:12    Function Parameters: 
     97 0:12      'pos' ( in uint)
     98 0:?     Sequence
     99 0:13      move second child to first child ( temp float)
    100 0:13        indirect index (layout( row_major std430) buffer float)
    101 0:13          @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of float)
    102 0:13            'sbuf2' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of float @data})
    103 0:13            Constant:
    104 0:13              0 (const uint)
    105 0:13          add ( temp uint)
    106 0:13            'pos' ( in uint)
    107 0:13            Constant:
    108 0:13              1 (const uint)
    109 0:13        Constant:
    110 0:13          42.000000
    111 0:17      Sequence
    112 0:17        move second child to first child ( temp uint)
    113 0:17          'size' ( temp uint)
    114 0:17          array length ( temp uint)
    115 0:17            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test})
    116 0:17              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
    117 0:17              Constant:
    118 0:17                0 (const uint)
    119 0:17        move second child to first child ( temp uint)
    120 0:17          'stride' ( temp uint)
    121 0:17          Constant:
    122 0:17            16 (const uint)
    123 0:19      Test condition and select ( temp void)
    124 0:19        Condition
    125 0:19        test: direct index for structure ( temp bool)
    126 0:19          indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color,  temp bool test})
    127 0:19            @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test})
    128 0:19              'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
    129 0:19              Constant:
    130 0:19                0 (const uint)
    131 0:19            'pos' ( in uint)
    132 0:19          Constant:
    133 0:19            1 (const int)
    134 0:19        true case
    135 0:20        Branch: Return with expression
    136 0:?           Construct vec4 ( temp 4-component vector of float)
    137 0:20            add ( temp 3-component vector of float)
    138 0:20              color: direct index for structure ( temp 3-component vector of float)
    139 0:20                indirect index (layout( row_major std430) buffer structure{ temp 3-component vector of float color,  temp bool test})
    140 0:20                  @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test})
    141 0:20                    'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
    142 0:20                    Constant:
    143 0:20                      0 (const uint)
    144 0:20                  'pos' ( in uint)
    145 0:20                Constant:
    146 0:20                  0 (const int)
    147 0:20              indirect index (layout( row_major std430) buffer float)
    148 0:20                @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of float)
    149 0:20                  'sbuf2' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of float @data})
    150 0:20                  Constant:
    151 0:20                    0 (const uint)
    152 0:20                'pos' ( in uint)
    153 0:20            Constant:
    154 0:20              0.000000
    155 0:19        false case
    156 0:22        Branch: Return with expression
    157 0:22          Construct vec4 ( temp 4-component vector of float)
    158 0:22            Convert uint to float ( temp float)
    159 0:22              add ( temp uint)
    160 0:22                'size' ( temp uint)
    161 0:22                'stride' ( temp uint)
    162 0:12  Function Definition: main( ( temp void)
    163 0:12    Function Parameters: 
    164 0:?     Sequence
    165 0:12      move second child to first child ( temp uint)
    166 0:?         'pos' ( temp uint)
    167 0:?         'pos' (layout( location=0) flat in uint)
    168 0:12      move second child to first child ( temp 4-component vector of float)
    169 0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
    170 0:12        Function Call: @main(u1; ( temp 4-component vector of float)
    171 0:?           'pos' ( temp uint)
    172 0:?   Linker Objects
    173 0:?     'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of structure{ temp 3-component vector of float color,  temp bool test} @data})
    174 0:?     'sbuf2' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of float @data})
    175 0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
    176 0:?     'pos' (layout( location=0) flat in uint)
    177 
    178 // Module Version 10000
    179 // Generated by (magic number): 80007
    180 // Id's are bound by 78
    181 
    182                               Capability Shader
    183                1:             ExtInstImport  "GLSL.std.450"
    184                               MemoryModel Logical GLSL450
    185                               EntryPoint Fragment 4  "main" 71 74
    186                               ExecutionMode 4 OriginUpperLeft
    187                               Source HLSL 500
    188                               Name 4  "main"
    189                               Name 12  "@main(u1;"
    190                               Name 11  "pos"
    191                               Name 15  "sbuf2"
    192                               MemberName 15(sbuf2) 0  "@data"
    193                               Name 17  "sbuf2"
    194                               Name 26  "size"
    195                               Name 28  "sb_t"
    196                               MemberName 28(sb_t) 0  "color"
    197                               MemberName 28(sb_t) 1  "test"
    198                               Name 30  "sbuf"
    199                               MemberName 30(sbuf) 0  "@data"
    200                               Name 32  "sbuf"
    201                               Name 34  "stride"
    202                               Name 69  "pos"
    203                               Name 71  "pos"
    204                               Name 74  "@entryPointOutput"
    205                               Name 75  "param"
    206                               Decorate 14 ArrayStride 4
    207                               MemberDecorate 15(sbuf2) 0 Offset 0
    208                               Decorate 15(sbuf2) BufferBlock
    209                               Decorate 17(sbuf2) DescriptorSet 0
    210                               Decorate 17(sbuf2) Binding 0
    211                               MemberDecorate 28(sb_t) 0 Offset 0
    212                               MemberDecorate 28(sb_t) 1 Offset 12
    213                               Decorate 29 ArrayStride 16
    214                               MemberDecorate 30(sbuf) 0 Offset 0
    215                               Decorate 30(sbuf) BufferBlock
    216                               Decorate 32(sbuf) DescriptorSet 0
    217                               Decorate 32(sbuf) Binding 0
    218                               Decorate 71(pos) Flat
    219                               Decorate 71(pos) Location 0
    220                               Decorate 74(@entryPointOutput) Location 0
    221                2:             TypeVoid
    222                3:             TypeFunction 2
    223                6:             TypeInt 32 0
    224                7:             TypePointer Function 6(int)
    225                8:             TypeFloat 32
    226                9:             TypeVector 8(float) 4
    227               10:             TypeFunction 9(fvec4) 7(ptr)
    228               14:             TypeRuntimeArray 8(float)
    229        15(sbuf2):             TypeStruct 14
    230               16:             TypePointer Uniform 15(sbuf2)
    231        17(sbuf2):     16(ptr) Variable Uniform
    232               18:             TypeInt 32 1
    233               19:     18(int) Constant 0
    234               21:      6(int) Constant 1
    235               23:    8(float) Constant 1109917696
    236               24:             TypePointer Uniform 8(float)
    237               27:             TypeVector 8(float) 3
    238         28(sb_t):             TypeStruct 27(fvec3) 6(int)
    239               29:             TypeRuntimeArray 28(sb_t)
    240         30(sbuf):             TypeStruct 29
    241               31:             TypePointer Uniform 30(sbuf)
    242         32(sbuf):     31(ptr) Variable Uniform
    243               35:      6(int) Constant 16
    244               37:     18(int) Constant 1
    245               38:             TypePointer Uniform 6(int)
    246               41:             TypeBool
    247               42:      6(int) Constant 0
    248               47:             TypePointer Uniform 27(fvec3)
    249               55:    8(float) Constant 0
    250               70:             TypePointer Input 6(int)
    251          71(pos):     70(ptr) Variable Input
    252               73:             TypePointer Output 9(fvec4)
    253 74(@entryPointOutput):     73(ptr) Variable Output
    254          4(main):           2 Function None 3
    255                5:             Label
    256          69(pos):      7(ptr) Variable Function
    257        75(param):      7(ptr) Variable Function
    258               72:      6(int) Load 71(pos)
    259                               Store 69(pos) 72
    260               76:      6(int) Load 69(pos)
    261                               Store 75(param) 76
    262               77:    9(fvec4) FunctionCall 12(@main(u1;) 75(param)
    263                               Store 74(@entryPointOutput) 77
    264                               Return
    265                               FunctionEnd
    266    12(@main(u1;):    9(fvec4) Function None 10
    267          11(pos):      7(ptr) FunctionParameter
    268               13:             Label
    269         26(size):      7(ptr) Variable Function
    270       34(stride):      7(ptr) Variable Function
    271               20:      6(int) Load 11(pos)
    272               22:      6(int) IAdd 20 21
    273               25:     24(ptr) AccessChain 17(sbuf2) 19 22
    274                               Store 25 23
    275               33:      6(int) ArrayLength 32(sbuf) 0
    276                               Store 26(size) 33
    277                               Store 34(stride) 35
    278               36:      6(int) Load 11(pos)
    279               39:     38(ptr) AccessChain 32(sbuf) 19 36 37
    280               40:      6(int) Load 39
    281               43:    41(bool) INotEqual 40 42
    282                               SelectionMerge 45 None
    283                               BranchConditional 43 44 61
    284               44:               Label
    285               46:      6(int)   Load 11(pos)
    286               48:     47(ptr)   AccessChain 32(sbuf) 19 46 19
    287               49:   27(fvec3)   Load 48
    288               50:      6(int)   Load 11(pos)
    289               51:     24(ptr)   AccessChain 17(sbuf2) 19 50
    290               52:    8(float)   Load 51
    291               53:   27(fvec3)   CompositeConstruct 52 52 52
    292               54:   27(fvec3)   FAdd 49 53
    293               56:    8(float)   CompositeExtract 54 0
    294               57:    8(float)   CompositeExtract 54 1
    295               58:    8(float)   CompositeExtract 54 2
    296               59:    9(fvec4)   CompositeConstruct 56 57 58 55
    297                                 ReturnValue 59
    298               61:               Label
    299               62:      6(int)   Load 26(size)
    300               63:      6(int)   Load 34(stride)
    301               64:      6(int)   IAdd 62 63
    302               65:    8(float)   ConvertUToF 64
    303               66:    9(fvec4)   CompositeConstruct 65 65 65 65
    304                                 ReturnValue 66
    305               45:             Label
    306               68:    9(fvec4) Undef
    307                               ReturnValue 68
    308                               FunctionEnd
    309