1 hlsl.intrinsics.promote.down.frag 2 Shader version: 500 3 gl_FragCoord origin is upper left 4 0:? Sequence 5 0:15 Function Definition: @main( ( temp structure{ temp 4-component vector of float color}) 6 0:15 Function Parameters: 7 0:? Sequence 8 0:16 Sequence 9 0:16 move second child to first child ( temp uint) 10 0:16 'r00' ( temp uint) 11 0:16 bitCount ( temp uint) 12 0:16 Convert float to uint ( temp uint) 13 0:16 f: direct index for structure ( uniform float) 14 0:16 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2}) 15 0:16 Constant: 16 0:16 2 (const uint) 17 0:17 Sequence 18 0:17 move second child to first child ( temp 2-component vector of uint) 19 0:17 'r01' ( temp 2-component vector of uint) 20 0:17 bitFieldReverse ( temp 2-component vector of uint) 21 0:17 Convert float to uint ( temp 2-component vector of uint) 22 0:17 f2: direct index for structure ( uniform 2-component vector of float) 23 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2}) 24 0:17 Constant: 25 0:17 6 (const uint) 26 0:20 move second child to first child ( temp 4-component vector of float) 27 0:20 color: direct index for structure ( temp 4-component vector of float) 28 0:20 'ps_output' ( temp structure{ temp 4-component vector of float color}) 29 0:20 Constant: 30 0:20 0 (const int) 31 0:? Constant: 32 0:? 0.000000 33 0:? 0.000000 34 0:? 0.000000 35 0:? 0.000000 36 0:21 Branch: Return with expression 37 0:21 'ps_output' ( temp structure{ temp 4-component vector of float color}) 38 0:15 Function Definition: main( ( temp void) 39 0:15 Function Parameters: 40 0:? Sequence 41 0:15 Sequence 42 0:15 move second child to first child ( temp 4-component vector of float) 43 0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 44 0:15 color: direct index for structure ( temp 4-component vector of float) 45 0:15 Function Call: @main( ( temp structure{ temp 4-component vector of float color}) 46 0:15 Constant: 47 0:15 0 (const int) 48 0:? Linker Objects 49 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2}) 50 0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 51 52 53 Linked fragment stage: 54 55 56 Shader version: 500 57 gl_FragCoord origin is upper left 58 0:? Sequence 59 0:15 Function Definition: @main( ( temp structure{ temp 4-component vector of float color}) 60 0:15 Function Parameters: 61 0:? Sequence 62 0:16 Sequence 63 0:16 move second child to first child ( temp uint) 64 0:16 'r00' ( temp uint) 65 0:16 bitCount ( temp uint) 66 0:16 Convert float to uint ( temp uint) 67 0:16 f: direct index for structure ( uniform float) 68 0:16 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2}) 69 0:16 Constant: 70 0:16 2 (const uint) 71 0:17 Sequence 72 0:17 move second child to first child ( temp 2-component vector of uint) 73 0:17 'r01' ( temp 2-component vector of uint) 74 0:17 bitFieldReverse ( temp 2-component vector of uint) 75 0:17 Convert float to uint ( temp 2-component vector of uint) 76 0:17 f2: direct index for structure ( uniform 2-component vector of float) 77 0:17 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2}) 78 0:17 Constant: 79 0:17 6 (const uint) 80 0:20 move second child to first child ( temp 4-component vector of float) 81 0:20 color: direct index for structure ( temp 4-component vector of float) 82 0:20 'ps_output' ( temp structure{ temp 4-component vector of float color}) 83 0:20 Constant: 84 0:20 0 (const int) 85 0:? Constant: 86 0:? 0.000000 87 0:? 0.000000 88 0:? 0.000000 89 0:? 0.000000 90 0:21 Branch: Return with expression 91 0:21 'ps_output' ( temp structure{ temp 4-component vector of float color}) 92 0:15 Function Definition: main( ( temp void) 93 0:15 Function Parameters: 94 0:? Sequence 95 0:15 Sequence 96 0:15 move second child to first child ( temp 4-component vector of float) 97 0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 98 0:15 color: direct index for structure ( temp 4-component vector of float) 99 0:15 Function Call: @main( ( temp structure{ temp 4-component vector of float color}) 100 0:15 Constant: 101 0:15 0 (const int) 102 0:? Linker Objects 103 0:? 'anon@0' (layout( row_major std140) uniform block{ uniform int i, uniform uint u, uniform float f, uniform bool b, uniform 2-component vector of int i2, uniform 2-component vector of uint u2, uniform 2-component vector of float f2, uniform 2-component vector of bool b2}) 104 0:? '@entryPointOutput.color' (layout( location=0) out 4-component vector of float) 105 106 // Module Version 10000 107 // Generated by (magic number): 80007 108 // Id's are bound by 50 109 110 Capability Shader 111 1: ExtInstImport "GLSL.std.450" 112 MemoryModel Logical GLSL450 113 EntryPoint Fragment 4 "main" 47 114 ExecutionMode 4 OriginUpperLeft 115 Source HLSL 500 116 Name 4 "main" 117 Name 8 "PS_OUTPUT" 118 MemberName 8(PS_OUTPUT) 0 "color" 119 Name 10 "@main(" 120 Name 14 "r00" 121 Name 19 "$Global" 122 MemberName 19($Global) 0 "i" 123 MemberName 19($Global) 1 "u" 124 MemberName 19($Global) 2 "f" 125 MemberName 19($Global) 3 "b" 126 MemberName 19($Global) 4 "i2" 127 MemberName 19($Global) 5 "u2" 128 MemberName 19($Global) 6 "f2" 129 MemberName 19($Global) 7 "b2" 130 Name 21 "" 131 Name 29 "r01" 132 Name 37 "ps_output" 133 Name 47 "@entryPointOutput.color" 134 MemberDecorate 19($Global) 0 Offset 0 135 MemberDecorate 19($Global) 1 Offset 4 136 MemberDecorate 19($Global) 2 Offset 8 137 MemberDecorate 19($Global) 3 Offset 12 138 MemberDecorate 19($Global) 4 Offset 16 139 MemberDecorate 19($Global) 5 Offset 24 140 MemberDecorate 19($Global) 6 Offset 32 141 MemberDecorate 19($Global) 7 Offset 40 142 Decorate 19($Global) Block 143 Decorate 21 DescriptorSet 0 144 Decorate 21 Binding 0 145 Decorate 47(@entryPointOutput.color) Location 0 146 2: TypeVoid 147 3: TypeFunction 2 148 6: TypeFloat 32 149 7: TypeVector 6(float) 4 150 8(PS_OUTPUT): TypeStruct 7(fvec4) 151 9: TypeFunction 8(PS_OUTPUT) 152 12: TypeInt 32 0 153 13: TypePointer Function 12(int) 154 15: TypeInt 32 1 155 16: TypeVector 15(int) 2 156 17: TypeVector 12(int) 2 157 18: TypeVector 6(float) 2 158 19($Global): TypeStruct 15(int) 12(int) 6(float) 12(int) 16(ivec2) 17(ivec2) 18(fvec2) 17(ivec2) 159 20: TypePointer Uniform 19($Global) 160 21: 20(ptr) Variable Uniform 161 22: 15(int) Constant 2 162 23: TypePointer Uniform 6(float) 163 28: TypePointer Function 17(ivec2) 164 30: 15(int) Constant 6 165 31: TypePointer Uniform 18(fvec2) 166 36: TypePointer Function 8(PS_OUTPUT) 167 38: 15(int) Constant 0 168 39: 6(float) Constant 0 169 40: 7(fvec4) ConstantComposite 39 39 39 39 170 41: TypePointer Function 7(fvec4) 171 46: TypePointer Output 7(fvec4) 172 47(@entryPointOutput.color): 46(ptr) Variable Output 173 4(main): 2 Function None 3 174 5: Label 175 48:8(PS_OUTPUT) FunctionCall 10(@main() 176 49: 7(fvec4) CompositeExtract 48 0 177 Store 47(@entryPointOutput.color) 49 178 Return 179 FunctionEnd 180 10(@main():8(PS_OUTPUT) Function None 9 181 11: Label 182 14(r00): 13(ptr) Variable Function 183 29(r01): 28(ptr) Variable Function 184 37(ps_output): 36(ptr) Variable Function 185 24: 23(ptr) AccessChain 21 22 186 25: 6(float) Load 24 187 26: 12(int) ConvertFToU 25 188 27: 12(int) BitCount 26 189 Store 14(r00) 27 190 32: 31(ptr) AccessChain 21 30 191 33: 18(fvec2) Load 32 192 34: 17(ivec2) ConvertFToU 33 193 35: 17(ivec2) BitReverse 34 194 Store 29(r01) 35 195 42: 41(ptr) AccessChain 37(ps_output) 38 196 Store 42 40 197 43:8(PS_OUTPUT) Load 37(ps_output) 198 ReturnValue 43 199 FunctionEnd 200