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