hlsl.isfinite.frag Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:7 Function Definition: test1(f1; ( temp bool) 0:7 Function Parameters: 0:7 'v' ( in float) 0:? Sequence 0:8 Branch: Return with expression 0:8 logical-and ( temp bool) 0:8 Negate conditional ( temp bool) 0:8 isnan ( temp bool) 0:8 'v' ( in float) 0:8 Sequence 0:8 move second child to first child ( temp float) 0:8 '@finitetmp' ( temp float) 0:8 'v' ( in float) 0:8 logical-and ( temp bool) 0:8 Negate conditional ( temp bool) 0:8 isnan ( temp bool) 0:8 '@finitetmp' ( temp float) 0:8 Negate conditional ( temp bool) 0:8 isinf ( temp bool) 0:8 '@finitetmp' ( temp float) 0:12 Function Definition: @main( ( temp 4-component vector of float) 0:12 Function Parameters: 0:? Sequence 0:13 Sequence 0:13 move second child to first child ( temp float) 0:13 '@finitetmp' ( temp float) 0:13 f: direct index for structure ( uniform float) 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}) 0:13 Constant: 0:13 0 (const uint) 0:13 logical-and ( temp bool) 0:13 Negate conditional ( temp bool) 0:13 isnan ( temp bool) 0:13 '@finitetmp' ( temp float) 0:13 Negate conditional ( temp bool) 0:13 isinf ( temp bool) 0:13 '@finitetmp' ( temp float) 0:14 Sequence 0:14 move second child to first child ( temp 2-component vector of float) 0:14 '@finitetmp' ( temp 2-component vector of float) 0:14 f2: direct index for structure ( uniform 2-component vector of float) 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}) 0:14 Constant: 0:14 1 (const uint) 0:14 logical-and ( temp 2-component vector of bool) 0:14 Negate conditional ( temp 2-component vector of bool) 0:14 isnan ( temp 2-component vector of bool) 0:14 '@finitetmp' ( temp 2-component vector of float) 0:14 Negate conditional ( temp 2-component vector of bool) 0:14 isinf ( temp 2-component vector of bool) 0:14 '@finitetmp' ( temp 2-component vector of float) 0:15 Sequence 0:15 move second child to first child ( temp 3-component vector of float) 0:15 '@finitetmp' ( temp 3-component vector of float) 0:15 f3: direct index for structure ( uniform 3-component vector of float) 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}) 0:15 Constant: 0:15 2 (const uint) 0:15 logical-and ( temp 3-component vector of bool) 0:15 Negate conditional ( temp 3-component vector of bool) 0:15 isnan ( temp 3-component vector of bool) 0:15 '@finitetmp' ( temp 3-component vector of float) 0:15 Negate conditional ( temp 3-component vector of bool) 0:15 isinf ( temp 3-component vector of bool) 0:15 '@finitetmp' ( temp 3-component vector of float) 0:17 Branch: Return with expression 0:17 Constant: 0:17 0.000000 0:17 0.000000 0:17 0.000000 0:17 0.000000 0:12 Function Definition: main( ( temp void) 0:12 Function Parameters: 0:? Sequence 0:12 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:12 Function Call: @main( ( temp 4-component vector of float) 0:? Linker Objects 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}) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) Linked fragment stage: Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:7 Function Definition: test1(f1; ( temp bool) 0:7 Function Parameters: 0:7 'v' ( in float) 0:? Sequence 0:8 Branch: Return with expression 0:8 logical-and ( temp bool) 0:8 Negate conditional ( temp bool) 0:8 isnan ( temp bool) 0:8 'v' ( in float) 0:8 Sequence 0:8 move second child to first child ( temp float) 0:8 '@finitetmp' ( temp float) 0:8 'v' ( in float) 0:8 logical-and ( temp bool) 0:8 Negate conditional ( temp bool) 0:8 isnan ( temp bool) 0:8 '@finitetmp' ( temp float) 0:8 Negate conditional ( temp bool) 0:8 isinf ( temp bool) 0:8 '@finitetmp' ( temp float) 0:12 Function Definition: @main( ( temp 4-component vector of float) 0:12 Function Parameters: 0:? Sequence 0:13 Sequence 0:13 move second child to first child ( temp float) 0:13 '@finitetmp' ( temp float) 0:13 f: direct index for structure ( uniform float) 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}) 0:13 Constant: 0:13 0 (const uint) 0:13 logical-and ( temp bool) 0:13 Negate conditional ( temp bool) 0:13 isnan ( temp bool) 0:13 '@finitetmp' ( temp float) 0:13 Negate conditional ( temp bool) 0:13 isinf ( temp bool) 0:13 '@finitetmp' ( temp float) 0:14 Sequence 0:14 move second child to first child ( temp 2-component vector of float) 0:14 '@finitetmp' ( temp 2-component vector of float) 0:14 f2: direct index for structure ( uniform 2-component vector of float) 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}) 0:14 Constant: 0:14 1 (const uint) 0:14 logical-and ( temp 2-component vector of bool) 0:14 Negate conditional ( temp 2-component vector of bool) 0:14 isnan ( temp 2-component vector of bool) 0:14 '@finitetmp' ( temp 2-component vector of float) 0:14 Negate conditional ( temp 2-component vector of bool) 0:14 isinf ( temp 2-component vector of bool) 0:14 '@finitetmp' ( temp 2-component vector of float) 0:15 Sequence 0:15 move second child to first child ( temp 3-component vector of float) 0:15 '@finitetmp' ( temp 3-component vector of float) 0:15 f3: direct index for structure ( uniform 3-component vector of float) 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}) 0:15 Constant: 0:15 2 (const uint) 0:15 logical-and ( temp 3-component vector of bool) 0:15 Negate conditional ( temp 3-component vector of bool) 0:15 isnan ( temp 3-component vector of bool) 0:15 '@finitetmp' ( temp 3-component vector of float) 0:15 Negate conditional ( temp 3-component vector of bool) 0:15 isinf ( temp 3-component vector of bool) 0:15 '@finitetmp' ( temp 3-component vector of float) 0:17 Branch: Return with expression 0:17 Constant: 0:17 0.000000 0:17 0.000000 0:17 0.000000 0:17 0.000000 0:12 Function Definition: main( ( temp void) 0:12 Function Parameters: 0:? Sequence 0:12 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:12 Function Call: @main( ( temp 4-component vector of float) 0:? Linker Objects 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}) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 95 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 93 ExecutionMode 4 OriginUpperLeft Source HLSL 500 Name 4 "main" Name 11 "test1(f1;" Name 10 "v" Name 15 "@main(" Name 22 "@finitetmp" Name 36 "@finitetmp" Name 39 "$Global" MemberName 39($Global) 0 "f" MemberName 39($Global) 1 "f2" MemberName 39($Global) 2 "f3" Name 41 "" Name 57 "@finitetmp" Name 73 "@finitetmp" Name 93 "@entryPointOutput" MemberDecorate 39($Global) 0 Offset 0 MemberDecorate 39($Global) 1 Offset 8 MemberDecorate 39($Global) 2 Offset 16 Decorate 39($Global) Block Decorate 41 DescriptorSet 0 Decorate 93(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypePointer Function 6(float) 8: TypeBool 9: TypeFunction 8(bool) 7(ptr) 13: TypeVector 6(float) 4 14: TypeFunction 13(fvec4) 37: TypeVector 6(float) 2 38: TypeVector 6(float) 3 39($Global): TypeStruct 6(float) 37(fvec2) 38(fvec3) 40: TypePointer Uniform 39($Global) 41: 40(ptr) Variable Uniform 42: TypeInt 32 1 43: 42(int) Constant 0 44: TypePointer Uniform 6(float) 56: TypePointer Function 37(fvec2) 58: 42(int) Constant 1 59: TypePointer Uniform 37(fvec2) 63: TypeVector 8(bool) 2 72: TypePointer Function 38(fvec3) 74: 42(int) Constant 2 75: TypePointer Uniform 38(fvec3) 79: TypeVector 8(bool) 3 88: 6(float) Constant 0 89: 13(fvec4) ConstantComposite 88 88 88 88 92: TypePointer Output 13(fvec4) 93(@entryPointOutput): 92(ptr) Variable Output 4(main): 2 Function None 3 5: Label 94: 13(fvec4) FunctionCall 15(@main() Store 93(@entryPointOutput) 94 Return FunctionEnd 11(test1(f1;): 8(bool) Function None 9 10(v): 7(ptr) FunctionParameter 12: Label 22(@finitetmp): 7(ptr) Variable Function 17: 6(float) Load 10(v) 18: 8(bool) IsNan 17 19: 8(bool) LogicalNot 18 SelectionMerge 21 None BranchConditional 19 20 21 20: Label 23: 6(float) Load 10(v) Store 22(@finitetmp) 23 24: 6(float) Load 22(@finitetmp) 25: 8(bool) IsNan 24 26: 8(bool) LogicalNot 25 SelectionMerge 28 None BranchConditional 26 27 28 27: Label 29: 6(float) Load 22(@finitetmp) 30: 8(bool) IsInf 29 31: 8(bool) LogicalNot 30 Branch 28 28: Label 32: 8(bool) Phi 26 20 31 27 Branch 21 21: Label 33: 8(bool) Phi 19 12 32 28 ReturnValue 33 FunctionEnd 15(@main(): 13(fvec4) Function None 14 16: Label 36(@finitetmp): 7(ptr) Variable Function 57(@finitetmp): 56(ptr) Variable Function 73(@finitetmp): 72(ptr) Variable Function 45: 44(ptr) AccessChain 41 43 46: 6(float) Load 45 Store 36(@finitetmp) 46 47: 6(float) Load 36(@finitetmp) 48: 8(bool) IsNan 47 49: 8(bool) LogicalNot 48 SelectionMerge 51 None BranchConditional 49 50 51 50: Label 52: 6(float) Load 36(@finitetmp) 53: 8(bool) IsInf 52 54: 8(bool) LogicalNot 53 Branch 51 51: Label 55: 8(bool) Phi 49 16 54 50 60: 59(ptr) AccessChain 41 58 61: 37(fvec2) Load 60 Store 57(@finitetmp) 61 62: 37(fvec2) Load 57(@finitetmp) 64: 63(bvec2) IsNan 62 65: 63(bvec2) LogicalNot 64 SelectionMerge 67 None BranchConditional 65 66 67 66: Label 68: 37(fvec2) Load 57(@finitetmp) 69: 63(bvec2) IsInf 68 70: 63(bvec2) LogicalNot 69 Branch 67 67: Label 71: 8(bool) Phi 65 51 70 66 76: 75(ptr) AccessChain 41 74 77: 38(fvec3) Load 76 Store 73(@finitetmp) 77 78: 38(fvec3) Load 73(@finitetmp) 80: 79(bvec3) IsNan 78 81: 79(bvec3) LogicalNot 80 SelectionMerge 83 None BranchConditional 81 82 83 82: Label 84: 38(fvec3) Load 73(@finitetmp) 85: 79(bvec3) IsInf 84 86: 79(bvec3) LogicalNot 85 Branch 83 83: Label 87: 8(bool) Phi 81 67 86 82 ReturnValue 89 FunctionEnd