 ac3707921e
			
		
	
	
		ac3707921e
		
	
	
	
	
		
			
			Now, version 5.* is all connected to making the uint type, which doesn't quite work. Generator versions 4 and 6 do not do this.
		
			
				
	
	
		
			417 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			417 lines
		
	
	
		
			20 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| hlsl.comparison.vec.frag
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:4  Function Definition: Bug1(vf4; ( temp void)
 | |
| 0:4    Function Parameters: 
 | |
| 0:4      'a' ( in 4-component vector of float)
 | |
| 0:?     Sequence
 | |
| 0:5      Sequence
 | |
| 0:5        move second child to first child ( temp 4-component vector of float)
 | |
| 0:5          'v04' ( temp 4-component vector of float)
 | |
| 0:?           Constant:
 | |
| 0:?             0.000000
 | |
| 0:?             0.000000
 | |
| 0:?             0.000000
 | |
| 0:?             0.000000
 | |
| 0:6      Sequence
 | |
| 0:6        move second child to first child ( temp float)
 | |
| 0:6          'v01' ( temp float)
 | |
| 0:6          Constant:
 | |
| 0:6            0.000000
 | |
| 0:8      Sequence
 | |
| 0:8        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:8          'r00' ( temp 4-component vector of bool)
 | |
| 0:8          Equal ( temp 4-component vector of bool)
 | |
| 0:8            'a' ( in 4-component vector of float)
 | |
| 0:8            'v04' ( temp 4-component vector of float)
 | |
| 0:9      Sequence
 | |
| 0:9        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:9          'r01' ( temp 4-component vector of bool)
 | |
| 0:9          NotEqual ( temp 4-component vector of bool)
 | |
| 0:9            'a' ( in 4-component vector of float)
 | |
| 0:9            'v04' ( temp 4-component vector of float)
 | |
| 0:10      Sequence
 | |
| 0:10        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:10          'r02' ( temp 4-component vector of bool)
 | |
| 0:10          Compare Less Than ( temp 4-component vector of bool)
 | |
| 0:10            'a' ( in 4-component vector of float)
 | |
| 0:10            'v04' ( temp 4-component vector of float)
 | |
| 0:11      Sequence
 | |
| 0:11        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:11          'r03' ( temp 4-component vector of bool)
 | |
| 0:11          Compare Greater Than ( temp 4-component vector of bool)
 | |
| 0:11            'a' ( in 4-component vector of float)
 | |
| 0:11            'v04' ( temp 4-component vector of float)
 | |
| 0:13      Sequence
 | |
| 0:13        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:13          'r10' ( temp 4-component vector of bool)
 | |
| 0:13          Equal ( temp 4-component vector of bool)
 | |
| 0:13            'a' ( in 4-component vector of float)
 | |
| 0:13            Construct vec4 ( in 4-component vector of float)
 | |
| 0:13              'v01' ( temp float)
 | |
| 0:14      Sequence
 | |
| 0:14        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:14          'r11' ( temp 4-component vector of bool)
 | |
| 0:14          NotEqual ( temp 4-component vector of bool)
 | |
| 0:14            'a' ( in 4-component vector of float)
 | |
| 0:14            Construct vec4 ( in 4-component vector of float)
 | |
| 0:14              'v01' ( temp float)
 | |
| 0:15      Sequence
 | |
| 0:15        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:15          'r12' ( temp 4-component vector of bool)
 | |
| 0:15          Compare Less Than ( temp 4-component vector of bool)
 | |
| 0:15            'a' ( in 4-component vector of float)
 | |
| 0:15            Construct vec4 ( in 4-component vector of float)
 | |
| 0:15              'v01' ( temp float)
 | |
| 0:16      Sequence
 | |
| 0:16        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:16          'r13' ( temp 4-component vector of bool)
 | |
| 0:16          Compare Greater Than ( temp 4-component vector of bool)
 | |
| 0:16            'a' ( in 4-component vector of float)
 | |
| 0:16            Construct vec4 ( in 4-component vector of float)
 | |
| 0:16              'v01' ( temp float)
 | |
| 0:18      Sequence
 | |
| 0:18        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:18          'r20' ( temp 4-component vector of bool)
 | |
| 0:18          Equal ( temp 4-component vector of bool)
 | |
| 0:18            Construct vec4 ( in 4-component vector of float)
 | |
| 0:18              'v01' ( temp float)
 | |
| 0:18            'a' ( in 4-component vector of float)
 | |
| 0:19      Sequence
 | |
| 0:19        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:19          'r21' ( temp 4-component vector of bool)
 | |
| 0:19          NotEqual ( temp 4-component vector of bool)
 | |
| 0:19            Construct vec4 ( in 4-component vector of float)
 | |
| 0:19              'v01' ( temp float)
 | |
| 0:19            'a' ( in 4-component vector of float)
 | |
| 0:20      Sequence
 | |
| 0:20        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:20          'r22' ( temp 4-component vector of bool)
 | |
| 0:20          Compare Less Than ( temp 4-component vector of bool)
 | |
| 0:20            Construct vec4 ( in 4-component vector of float)
 | |
| 0:20              'v01' ( temp float)
 | |
| 0:20            'a' ( in 4-component vector of float)
 | |
| 0:21      Sequence
 | |
| 0:21        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:21          'r23' ( temp 4-component vector of bool)
 | |
| 0:21          Compare Greater Than ( temp 4-component vector of bool)
 | |
| 0:21            Construct vec4 ( in 4-component vector of float)
 | |
| 0:21              'v01' ( temp float)
 | |
| 0:21            'a' ( in 4-component vector of float)
 | |
| 0:30  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:30    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:32      move second child to first child ( temp 4-component vector of float)
 | |
| 0:32        Color: direct index for structure ( temp 4-component vector of float)
 | |
| 0:32          'psout' ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:32          Constant:
 | |
| 0:32            0 (const int)
 | |
| 0:32        Constant:
 | |
| 0:32          0.000000
 | |
| 0:32          0.000000
 | |
| 0:32          0.000000
 | |
| 0:32          0.000000
 | |
| 0:33      Branch: Return with expression
 | |
| 0:33        'psout' ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:30  Function Definition: main( ( temp void)
 | |
| 0:30    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:30      Sequence
 | |
| 0:30        move second child to first child ( temp 4-component vector of float)
 | |
| 0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
 | |
| 0:30          Color: direct index for structure ( temp 4-component vector of float)
 | |
| 0:30            Function Call: @main( ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:30            Constant:
 | |
| 0:30              0 (const int)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float uf4})
 | |
| 0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
 | |
| 
 | |
| 
 | |
| Linked fragment stage:
 | |
| 
 | |
| 
 | |
| Shader version: 500
 | |
| gl_FragCoord origin is upper left
 | |
| 0:? Sequence
 | |
| 0:4  Function Definition: Bug1(vf4; ( temp void)
 | |
| 0:4    Function Parameters: 
 | |
| 0:4      'a' ( in 4-component vector of float)
 | |
| 0:?     Sequence
 | |
| 0:5      Sequence
 | |
| 0:5        move second child to first child ( temp 4-component vector of float)
 | |
| 0:5          'v04' ( temp 4-component vector of float)
 | |
| 0:?           Constant:
 | |
| 0:?             0.000000
 | |
| 0:?             0.000000
 | |
| 0:?             0.000000
 | |
| 0:?             0.000000
 | |
| 0:6      Sequence
 | |
| 0:6        move second child to first child ( temp float)
 | |
| 0:6          'v01' ( temp float)
 | |
| 0:6          Constant:
 | |
| 0:6            0.000000
 | |
| 0:8      Sequence
 | |
| 0:8        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:8          'r00' ( temp 4-component vector of bool)
 | |
| 0:8          Equal ( temp 4-component vector of bool)
 | |
| 0:8            'a' ( in 4-component vector of float)
 | |
| 0:8            'v04' ( temp 4-component vector of float)
 | |
| 0:9      Sequence
 | |
| 0:9        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:9          'r01' ( temp 4-component vector of bool)
 | |
| 0:9          NotEqual ( temp 4-component vector of bool)
 | |
| 0:9            'a' ( in 4-component vector of float)
 | |
| 0:9            'v04' ( temp 4-component vector of float)
 | |
| 0:10      Sequence
 | |
| 0:10        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:10          'r02' ( temp 4-component vector of bool)
 | |
| 0:10          Compare Less Than ( temp 4-component vector of bool)
 | |
| 0:10            'a' ( in 4-component vector of float)
 | |
| 0:10            'v04' ( temp 4-component vector of float)
 | |
| 0:11      Sequence
 | |
| 0:11        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:11          'r03' ( temp 4-component vector of bool)
 | |
| 0:11          Compare Greater Than ( temp 4-component vector of bool)
 | |
| 0:11            'a' ( in 4-component vector of float)
 | |
| 0:11            'v04' ( temp 4-component vector of float)
 | |
| 0:13      Sequence
 | |
| 0:13        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:13          'r10' ( temp 4-component vector of bool)
 | |
| 0:13          Equal ( temp 4-component vector of bool)
 | |
| 0:13            'a' ( in 4-component vector of float)
 | |
| 0:13            Construct vec4 ( in 4-component vector of float)
 | |
| 0:13              'v01' ( temp float)
 | |
| 0:14      Sequence
 | |
| 0:14        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:14          'r11' ( temp 4-component vector of bool)
 | |
| 0:14          NotEqual ( temp 4-component vector of bool)
 | |
| 0:14            'a' ( in 4-component vector of float)
 | |
| 0:14            Construct vec4 ( in 4-component vector of float)
 | |
| 0:14              'v01' ( temp float)
 | |
| 0:15      Sequence
 | |
| 0:15        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:15          'r12' ( temp 4-component vector of bool)
 | |
| 0:15          Compare Less Than ( temp 4-component vector of bool)
 | |
| 0:15            'a' ( in 4-component vector of float)
 | |
| 0:15            Construct vec4 ( in 4-component vector of float)
 | |
| 0:15              'v01' ( temp float)
 | |
| 0:16      Sequence
 | |
| 0:16        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:16          'r13' ( temp 4-component vector of bool)
 | |
| 0:16          Compare Greater Than ( temp 4-component vector of bool)
 | |
| 0:16            'a' ( in 4-component vector of float)
 | |
| 0:16            Construct vec4 ( in 4-component vector of float)
 | |
| 0:16              'v01' ( temp float)
 | |
| 0:18      Sequence
 | |
| 0:18        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:18          'r20' ( temp 4-component vector of bool)
 | |
| 0:18          Equal ( temp 4-component vector of bool)
 | |
| 0:18            Construct vec4 ( in 4-component vector of float)
 | |
| 0:18              'v01' ( temp float)
 | |
| 0:18            'a' ( in 4-component vector of float)
 | |
| 0:19      Sequence
 | |
| 0:19        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:19          'r21' ( temp 4-component vector of bool)
 | |
| 0:19          NotEqual ( temp 4-component vector of bool)
 | |
| 0:19            Construct vec4 ( in 4-component vector of float)
 | |
| 0:19              'v01' ( temp float)
 | |
| 0:19            'a' ( in 4-component vector of float)
 | |
| 0:20      Sequence
 | |
| 0:20        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:20          'r22' ( temp 4-component vector of bool)
 | |
| 0:20          Compare Less Than ( temp 4-component vector of bool)
 | |
| 0:20            Construct vec4 ( in 4-component vector of float)
 | |
| 0:20              'v01' ( temp float)
 | |
| 0:20            'a' ( in 4-component vector of float)
 | |
| 0:21      Sequence
 | |
| 0:21        move second child to first child ( temp 4-component vector of bool)
 | |
| 0:21          'r23' ( temp 4-component vector of bool)
 | |
| 0:21          Compare Greater Than ( temp 4-component vector of bool)
 | |
| 0:21            Construct vec4 ( in 4-component vector of float)
 | |
| 0:21              'v01' ( temp float)
 | |
| 0:21            'a' ( in 4-component vector of float)
 | |
| 0:30  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:30    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:32      move second child to first child ( temp 4-component vector of float)
 | |
| 0:32        Color: direct index for structure ( temp 4-component vector of float)
 | |
| 0:32          'psout' ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:32          Constant:
 | |
| 0:32            0 (const int)
 | |
| 0:32        Constant:
 | |
| 0:32          0.000000
 | |
| 0:32          0.000000
 | |
| 0:32          0.000000
 | |
| 0:32          0.000000
 | |
| 0:33      Branch: Return with expression
 | |
| 0:33        'psout' ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:30  Function Definition: main( ( temp void)
 | |
| 0:30    Function Parameters: 
 | |
| 0:?     Sequence
 | |
| 0:30      Sequence
 | |
| 0:30        move second child to first child ( temp 4-component vector of float)
 | |
| 0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
 | |
| 0:30          Color: direct index for structure ( temp 4-component vector of float)
 | |
| 0:30            Function Call: @main( ( temp structure{ temp 4-component vector of float Color})
 | |
| 0:30            Constant:
 | |
| 0:30              0 (const int)
 | |
| 0:?   Linker Objects
 | |
| 0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-component vector of float uf4})
 | |
| 0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
 | |
| 
 | |
| // Module Version 10000
 | |
| // Generated by (magic number): 80006
 | |
| // Id's are bound by 96
 | |
| 
 | |
|                               Capability Shader
 | |
|                1:             ExtInstImport  "GLSL.std.450"
 | |
|                               MemoryModel Logical GLSL450
 | |
|                               EntryPoint Fragment 4  "main" 90
 | |
|                               ExecutionMode 4 OriginUpperLeft
 | |
|                               Source HLSL 500
 | |
|                               Name 4  "main"
 | |
|                               Name 11  "Bug1(vf4;"
 | |
|                               Name 10  "a"
 | |
|                               Name 13  "PS_OUTPUT"
 | |
|                               MemberName 13(PS_OUTPUT) 0  "Color"
 | |
|                               Name 15  "@main("
 | |
|                               Name 17  "v04"
 | |
|                               Name 21  "v01"
 | |
|                               Name 25  "r00"
 | |
|                               Name 29  "r01"
 | |
|                               Name 33  "r02"
 | |
|                               Name 37  "r03"
 | |
|                               Name 41  "r10"
 | |
|                               Name 46  "r11"
 | |
|                               Name 51  "r12"
 | |
|                               Name 56  "r13"
 | |
|                               Name 61  "r20"
 | |
|                               Name 66  "r21"
 | |
|                               Name 71  "r22"
 | |
|                               Name 76  "r23"
 | |
|                               Name 82  "psout"
 | |
|                               Name 90  "@entryPointOutput.Color"
 | |
|                               Name 93  "$Global"
 | |
|                               MemberName 93($Global) 0  "uf4"
 | |
|                               Name 95  ""
 | |
|                               Decorate 90(@entryPointOutput.Color) Location 0
 | |
|                               MemberDecorate 93($Global) 0 Offset 0
 | |
|                               Decorate 93($Global) Block
 | |
|                               Decorate 95 DescriptorSet 0
 | |
|                2:             TypeVoid
 | |
|                3:             TypeFunction 2
 | |
|                6:             TypeFloat 32
 | |
|                7:             TypeVector 6(float) 4
 | |
|                8:             TypePointer Function 7(fvec4)
 | |
|                9:             TypeFunction 2 8(ptr)
 | |
|    13(PS_OUTPUT):             TypeStruct 7(fvec4)
 | |
|               14:             TypeFunction 13(PS_OUTPUT)
 | |
|               18:    6(float) Constant 0
 | |
|               19:    7(fvec4) ConstantComposite 18 18 18 18
 | |
|               20:             TypePointer Function 6(float)
 | |
|               22:             TypeBool
 | |
|               23:             TypeVector 22(bool) 4
 | |
|               24:             TypePointer Function 23(bvec4)
 | |
|               81:             TypePointer Function 13(PS_OUTPUT)
 | |
|               83:             TypeInt 32 1
 | |
|               84:     83(int) Constant 0
 | |
|               89:             TypePointer Output 7(fvec4)
 | |
| 90(@entryPointOutput.Color):     89(ptr) Variable Output
 | |
|      93($Global):             TypeStruct 7(fvec4)
 | |
|               94:             TypePointer Uniform 93($Global)
 | |
|               95:     94(ptr) Variable Uniform
 | |
|          4(main):           2 Function None 3
 | |
|                5:             Label
 | |
|               91:13(PS_OUTPUT) FunctionCall 15(@main()
 | |
|               92:    7(fvec4) CompositeExtract 91 0
 | |
|                               Store 90(@entryPointOutput.Color) 92
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|    11(Bug1(vf4;):           2 Function None 9
 | |
|            10(a):      8(ptr) FunctionParameter
 | |
|               12:             Label
 | |
|          17(v04):      8(ptr) Variable Function
 | |
|          21(v01):     20(ptr) Variable Function
 | |
|          25(r00):     24(ptr) Variable Function
 | |
|          29(r01):     24(ptr) Variable Function
 | |
|          33(r02):     24(ptr) Variable Function
 | |
|          37(r03):     24(ptr) Variable Function
 | |
|          41(r10):     24(ptr) Variable Function
 | |
|          46(r11):     24(ptr) Variable Function
 | |
|          51(r12):     24(ptr) Variable Function
 | |
|          56(r13):     24(ptr) Variable Function
 | |
|          61(r20):     24(ptr) Variable Function
 | |
|          66(r21):     24(ptr) Variable Function
 | |
|          71(r22):     24(ptr) Variable Function
 | |
|          76(r23):     24(ptr) Variable Function
 | |
|                               Store 17(v04) 19
 | |
|                               Store 21(v01) 18
 | |
|               26:    7(fvec4) Load 10(a)
 | |
|               27:    7(fvec4) Load 17(v04)
 | |
|               28:   23(bvec4) FOrdEqual 26 27
 | |
|                               Store 25(r00) 28
 | |
|               30:    7(fvec4) Load 10(a)
 | |
|               31:    7(fvec4) Load 17(v04)
 | |
|               32:   23(bvec4) FOrdNotEqual 30 31
 | |
|                               Store 29(r01) 32
 | |
|               34:    7(fvec4) Load 10(a)
 | |
|               35:    7(fvec4) Load 17(v04)
 | |
|               36:   23(bvec4) FOrdLessThan 34 35
 | |
|                               Store 33(r02) 36
 | |
|               38:    7(fvec4) Load 10(a)
 | |
|               39:    7(fvec4) Load 17(v04)
 | |
|               40:   23(bvec4) FOrdGreaterThan 38 39
 | |
|                               Store 37(r03) 40
 | |
|               42:    7(fvec4) Load 10(a)
 | |
|               43:    6(float) Load 21(v01)
 | |
|               44:    7(fvec4) CompositeConstruct 43 43 43 43
 | |
|               45:   23(bvec4) FOrdEqual 42 44
 | |
|                               Store 41(r10) 45
 | |
|               47:    7(fvec4) Load 10(a)
 | |
|               48:    6(float) Load 21(v01)
 | |
|               49:    7(fvec4) CompositeConstruct 48 48 48 48
 | |
|               50:   23(bvec4) FOrdNotEqual 47 49
 | |
|                               Store 46(r11) 50
 | |
|               52:    7(fvec4) Load 10(a)
 | |
|               53:    6(float) Load 21(v01)
 | |
|               54:    7(fvec4) CompositeConstruct 53 53 53 53
 | |
|               55:   23(bvec4) FOrdLessThan 52 54
 | |
|                               Store 51(r12) 55
 | |
|               57:    7(fvec4) Load 10(a)
 | |
|               58:    6(float) Load 21(v01)
 | |
|               59:    7(fvec4) CompositeConstruct 58 58 58 58
 | |
|               60:   23(bvec4) FOrdGreaterThan 57 59
 | |
|                               Store 56(r13) 60
 | |
|               62:    6(float) Load 21(v01)
 | |
|               63:    7(fvec4) CompositeConstruct 62 62 62 62
 | |
|               64:    7(fvec4) Load 10(a)
 | |
|               65:   23(bvec4) FOrdEqual 63 64
 | |
|                               Store 61(r20) 65
 | |
|               67:    6(float) Load 21(v01)
 | |
|               68:    7(fvec4) CompositeConstruct 67 67 67 67
 | |
|               69:    7(fvec4) Load 10(a)
 | |
|               70:   23(bvec4) FOrdNotEqual 68 69
 | |
|                               Store 66(r21) 70
 | |
|               72:    6(float) Load 21(v01)
 | |
|               73:    7(fvec4) CompositeConstruct 72 72 72 72
 | |
|               74:    7(fvec4) Load 10(a)
 | |
|               75:   23(bvec4) FOrdLessThan 73 74
 | |
|                               Store 71(r22) 75
 | |
|               77:    6(float) Load 21(v01)
 | |
|               78:    7(fvec4) CompositeConstruct 77 77 77 77
 | |
|               79:    7(fvec4) Load 10(a)
 | |
|               80:   23(bvec4) FOrdGreaterThan 78 79
 | |
|                               Store 76(r23) 80
 | |
|                               Return
 | |
|                               FunctionEnd
 | |
|       15(@main():13(PS_OUTPUT) Function None 14
 | |
|               16:             Label
 | |
|        82(psout):     81(ptr) Variable Function
 | |
|               85:      8(ptr) AccessChain 82(psout) 84
 | |
|                               Store 85 19
 | |
|               86:13(PS_OUTPUT) Load 82(psout)
 | |
|                               ReturnValue 86
 | |
|                               FunctionEnd
 |