mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-09 12:00:05 +00:00
Revert "GLSL: Fix #1279: refract does not have a double-type eta."
This reverts commit ebec909487
.
Khronos decided glslang was originally correct, and the specifications
are incorrect.
This commit is contained in:
parent
bea08fe02a
commit
2a805d9cea
@ -285,10 +285,10 @@ void doubles()
|
|||||||
dvec3v += reflect(dvec3v, dvec3v);
|
dvec3v += reflect(dvec3v, dvec3v);
|
||||||
dvec4v += reflect(dvec4v, dvec4v);
|
dvec4v += reflect(dvec4v, dvec4v);
|
||||||
|
|
||||||
doublev += refract(doublev, doublev, 1.3);
|
doublev += refract(doublev, doublev, doublev);
|
||||||
dvec2v += refract(dvec2v, dvec2v, 1.3);
|
dvec2v += refract(dvec2v, dvec2v, doublev);
|
||||||
dvec3v += refract(dvec3v, dvec3v, 1.3);
|
dvec3v += refract(dvec3v, dvec3v, doublev);
|
||||||
dvec4v += refract(dvec4v, dvec4v, 1.3);
|
dvec4v += refract(dvec4v, dvec4v, doublev);
|
||||||
|
|
||||||
dmat2 dmat2v = outerProduct(dvec2v, dvec2v);
|
dmat2 dmat2v = outerProduct(dvec2v, dvec2v);
|
||||||
dmat3 dmat3v = outerProduct(dvec3v, dvec3v);
|
dmat3 dmat3v = outerProduct(dvec3v, dvec3v);
|
||||||
@ -300,9 +300,9 @@ void doubles()
|
|||||||
dmat3x4 dmat3x4v = outerProduct(dvec4v, dvec3v);
|
dmat3x4 dmat3x4v = outerProduct(dvec4v, dvec3v);
|
||||||
dmat4x3 dmat4x3v = outerProduct(dvec3v, dvec4v);
|
dmat4x3 dmat4x3v = outerProduct(dvec3v, dvec4v);
|
||||||
|
|
||||||
dmat2v *= matrixCompMult(dmat2v, dmat2v);
|
dmat2v *= matrixCompMult(dmat2v, dmat2v);
|
||||||
dmat3v *= matrixCompMult(dmat3v, dmat3v);
|
dmat3v *= matrixCompMult(dmat3v, dmat3v);
|
||||||
dmat4v *= matrixCompMult(dmat4v, dmat4v);
|
dmat4v *= matrixCompMult(dmat4v, dmat4v);
|
||||||
dmat2x3v = matrixCompMult(dmat2x3v, dmat2x3v);
|
dmat2x3v = matrixCompMult(dmat2x3v, dmat2x3v);
|
||||||
dmat2x4v = matrixCompMult(dmat2x4v, dmat2x4v);
|
dmat2x4v = matrixCompMult(dmat2x4v, dmat2x4v);
|
||||||
dmat3x2v = matrixCompMult(dmat3x2v, dmat3x2v);
|
dmat3x2v = matrixCompMult(dmat3x2v, dmat3x2v);
|
||||||
|
@ -844,29 +844,25 @@ ERROR: node is still EOpNull!
|
|||||||
0:288 refract ( global double)
|
0:288 refract ( global double)
|
||||||
0:288 'doublev' ( temp double)
|
0:288 'doublev' ( temp double)
|
||||||
0:288 'doublev' ( temp double)
|
0:288 'doublev' ( temp double)
|
||||||
0:288 Constant:
|
0:288 'doublev' ( temp double)
|
||||||
0:288 1.300000
|
|
||||||
0:289 add second child into first child ( temp 2-component vector of double)
|
0:289 add second child into first child ( temp 2-component vector of double)
|
||||||
0:289 'dvec2v' ( temp 2-component vector of double)
|
0:289 'dvec2v' ( temp 2-component vector of double)
|
||||||
0:289 refract ( global 2-component vector of double)
|
0:289 refract ( global 2-component vector of double)
|
||||||
0:289 'dvec2v' ( temp 2-component vector of double)
|
0:289 'dvec2v' ( temp 2-component vector of double)
|
||||||
0:289 'dvec2v' ( temp 2-component vector of double)
|
0:289 'dvec2v' ( temp 2-component vector of double)
|
||||||
0:289 Constant:
|
0:289 'doublev' ( temp double)
|
||||||
0:289 1.300000
|
|
||||||
0:290 add second child into first child ( temp 3-component vector of double)
|
0:290 add second child into first child ( temp 3-component vector of double)
|
||||||
0:290 'dvec3v' ( temp 3-component vector of double)
|
0:290 'dvec3v' ( temp 3-component vector of double)
|
||||||
0:290 refract ( global 3-component vector of double)
|
0:290 refract ( global 3-component vector of double)
|
||||||
0:290 'dvec3v' ( temp 3-component vector of double)
|
0:290 'dvec3v' ( temp 3-component vector of double)
|
||||||
0:290 'dvec3v' ( temp 3-component vector of double)
|
0:290 'dvec3v' ( temp 3-component vector of double)
|
||||||
0:290 Constant:
|
0:290 'doublev' ( temp double)
|
||||||
0:290 1.300000
|
|
||||||
0:291 add second child into first child ( temp 4-component vector of double)
|
0:291 add second child into first child ( temp 4-component vector of double)
|
||||||
0:291 'dvec4v' ( temp 4-component vector of double)
|
0:291 'dvec4v' ( temp 4-component vector of double)
|
||||||
0:291 refract ( global 4-component vector of double)
|
0:291 refract ( global 4-component vector of double)
|
||||||
0:291 'dvec4v' ( temp 4-component vector of double)
|
0:291 'dvec4v' ( temp 4-component vector of double)
|
||||||
0:291 'dvec4v' ( temp 4-component vector of double)
|
0:291 'dvec4v' ( temp 4-component vector of double)
|
||||||
0:291 Constant:
|
0:291 'doublev' ( temp double)
|
||||||
0:291 1.300000
|
|
||||||
0:293 Sequence
|
0:293 Sequence
|
||||||
0:293 move second child to first child ( temp 2X2 matrix of double)
|
0:293 move second child to first child ( temp 2X2 matrix of double)
|
||||||
0:293 'dmat2v' ( temp 2X2 matrix of double)
|
0:293 'dmat2v' ( temp 2X2 matrix of double)
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
spv.400.frag
|
spv.400.frag
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 1115
|
// Id's are bound by 1118
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
Capability Geometry
|
Capability Geometry
|
||||||
@ -11,7 +11,7 @@ spv.400.frag
|
|||||||
Capability SampledRect
|
Capability SampledRect
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 13 1024 1030 1035 1047 1073 1094 1096 1102 1104 1113
|
EntryPoint Fragment 4 "main" 13 1027 1033 1038 1050 1076 1097 1099 1105 1107 1116
|
||||||
ExecutionMode 4 OriginUpperLeft
|
ExecutionMode 4 OriginUpperLeft
|
||||||
Source GLSL 400
|
Source GLSL 400
|
||||||
SourceExtension "GL_ARB_separate_shader_objects"
|
SourceExtension "GL_ARB_separate_shader_objects"
|
||||||
@ -28,41 +28,41 @@ spv.400.frag
|
|||||||
Name 439 "bvec2v"
|
Name 439 "bvec2v"
|
||||||
Name 448 "bvec3v"
|
Name 448 "bvec3v"
|
||||||
Name 457 "bvec4v"
|
Name 457 "bvec4v"
|
||||||
Name 736 "dmat2v"
|
Name 739 "dmat2v"
|
||||||
Name 742 "dmat3v"
|
Name 745 "dmat3v"
|
||||||
Name 748 "dmat4v"
|
Name 751 "dmat4v"
|
||||||
Name 754 "dmat2x3v"
|
Name 757 "dmat2x3v"
|
||||||
Name 760 "dmat3x2v"
|
Name 763 "dmat3x2v"
|
||||||
Name 766 "dmat2x4v"
|
Name 769 "dmat2x4v"
|
||||||
Name 772 "dmat4x2v"
|
Name 775 "dmat4x2v"
|
||||||
Name 778 "dmat3x4v"
|
Name 781 "dmat3x4v"
|
||||||
Name 784 "dmat4x3v"
|
Name 787 "dmat4x3v"
|
||||||
Name 1016 "v"
|
Name 1019 "v"
|
||||||
Name 1022 "arrayedSampler"
|
Name 1025 "arrayedSampler"
|
||||||
Name 1024 "i"
|
Name 1027 "i"
|
||||||
Name 1030 "c2D"
|
Name 1033 "c2D"
|
||||||
Name 1035 "gl_ClipDistance"
|
Name 1038 "gl_ClipDistance"
|
||||||
Name 1047 "uoutp"
|
Name 1050 "uoutp"
|
||||||
Name 1051 "samp2dr"
|
Name 1054 "samp2dr"
|
||||||
Name 1073 "ioutp"
|
Name 1076 "ioutp"
|
||||||
Name 1077 "isamp2DA"
|
Name 1080 "isamp2DA"
|
||||||
Name 1094 "gl_FragCoord"
|
Name 1097 "gl_FragCoord"
|
||||||
Name 1096 "vl2"
|
Name 1099 "vl2"
|
||||||
Name 1102 "uo"
|
Name 1105 "uo"
|
||||||
Name 1104 "u"
|
Name 1107 "u"
|
||||||
Name 1112 "id"
|
Name 1115 "id"
|
||||||
Name 1113 "gl_PrimitiveID"
|
Name 1116 "gl_PrimitiveID"
|
||||||
Decorate 17(u2drs) DescriptorSet 0
|
Decorate 17(u2drs) DescriptorSet 0
|
||||||
Decorate 1022(arrayedSampler) DescriptorSet 0
|
Decorate 1025(arrayedSampler) DescriptorSet 0
|
||||||
Decorate 1024(i) Flat
|
Decorate 1027(i) Flat
|
||||||
Decorate 1035(gl_ClipDistance) BuiltIn ClipDistance
|
Decorate 1038(gl_ClipDistance) BuiltIn ClipDistance
|
||||||
Decorate 1051(samp2dr) DescriptorSet 0
|
Decorate 1054(samp2dr) DescriptorSet 0
|
||||||
Decorate 1077(isamp2DA) DescriptorSet 0
|
Decorate 1080(isamp2DA) DescriptorSet 0
|
||||||
Decorate 1094(gl_FragCoord) BuiltIn FragCoord
|
Decorate 1097(gl_FragCoord) BuiltIn FragCoord
|
||||||
Decorate 1096(vl2) Location 6
|
Decorate 1099(vl2) Location 6
|
||||||
Decorate 1104(u) Flat
|
Decorate 1107(u) Flat
|
||||||
Decorate 1113(gl_PrimitiveID) Flat
|
Decorate 1116(gl_PrimitiveID) Flat
|
||||||
Decorate 1113(gl_PrimitiveID) BuiltIn PrimitiveId
|
Decorate 1116(gl_PrimitiveID) BuiltIn PrimitiveId
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
10: TypeFloat 32
|
10: TypeFloat 32
|
||||||
@ -109,144 +109,143 @@ spv.400.frag
|
|||||||
572: 437(bvec2) ConstantComposite 563 563
|
572: 437(bvec2) ConstantComposite 563 563
|
||||||
581: 446(bvec3) ConstantComposite 563 563 563
|
581: 446(bvec3) ConstantComposite 563 563 563
|
||||||
590: 455(bvec4) ConstantComposite 563 563 563 563
|
590: 455(bvec4) ConstantComposite 563 563 563 563
|
||||||
715: 10(float) Constant 1067869798
|
737: TypeMatrix 43(f64vec2) 2
|
||||||
734: TypeMatrix 43(f64vec2) 2
|
738: TypePointer Function 737
|
||||||
735: TypePointer Function 734
|
743: TypeMatrix 48(f64vec3) 3
|
||||||
740: TypeMatrix 48(f64vec3) 3
|
744: TypePointer Function 743
|
||||||
741: TypePointer Function 740
|
749: TypeMatrix 53(f64vec4) 4
|
||||||
746: TypeMatrix 53(f64vec4) 4
|
750: TypePointer Function 749
|
||||||
747: TypePointer Function 746
|
755: TypeMatrix 48(f64vec3) 2
|
||||||
752: TypeMatrix 48(f64vec3) 2
|
756: TypePointer Function 755
|
||||||
753: TypePointer Function 752
|
761: TypeMatrix 43(f64vec2) 3
|
||||||
758: TypeMatrix 43(f64vec2) 3
|
762: TypePointer Function 761
|
||||||
759: TypePointer Function 758
|
767: TypeMatrix 53(f64vec4) 2
|
||||||
764: TypeMatrix 53(f64vec4) 2
|
768: TypePointer Function 767
|
||||||
765: TypePointer Function 764
|
773: TypeMatrix 43(f64vec2) 4
|
||||||
770: TypeMatrix 43(f64vec2) 4
|
774: TypePointer Function 773
|
||||||
771: TypePointer Function 770
|
779: TypeMatrix 53(f64vec4) 3
|
||||||
776: TypeMatrix 53(f64vec4) 3
|
780: TypePointer Function 779
|
||||||
777: TypePointer Function 776
|
785: TypeMatrix 48(f64vec3) 4
|
||||||
782: TypeMatrix 48(f64vec3) 4
|
786: TypePointer Function 785
|
||||||
783: TypePointer Function 782
|
954: 32(int) Constant 1
|
||||||
951: 32(int) Constant 1
|
958: 32(int) Constant 2
|
||||||
955: 32(int) Constant 2
|
962: 32(int) Constant 3
|
||||||
959: 32(int) Constant 3
|
966: 23(int) Constant 1
|
||||||
963: 23(int) Constant 1
|
970: 23(int) Constant 2
|
||||||
967: 23(int) Constant 2
|
996: 10(float) Constant 1065353216
|
||||||
993: 10(float) Constant 1065353216
|
1018: TypePointer Function 11(fvec4)
|
||||||
1015: TypePointer Function 11(fvec4)
|
1020: TypeImage 10(float) 2D sampled format:Unknown
|
||||||
1017: TypeImage 10(float) 2D sampled format:Unknown
|
1021: TypeSampledImage 1020
|
||||||
1018: TypeSampledImage 1017
|
1022: 32(int) Constant 5
|
||||||
1019: 32(int) Constant 5
|
1023: TypeArray 1021 1022
|
||||||
1020: TypeArray 1018 1019
|
1024: TypePointer UniformConstant 1023
|
||||||
1021: TypePointer UniformConstant 1020
|
1025(arrayedSampler): 1024(ptr) Variable UniformConstant
|
||||||
1022(arrayedSampler): 1021(ptr) Variable UniformConstant
|
1026: TypePointer Input 23(int)
|
||||||
1023: TypePointer Input 23(int)
|
1027(i): 1026(ptr) Variable Input
|
||||||
1024(i): 1023(ptr) Variable Input
|
1029: TypePointer UniformConstant 1021
|
||||||
1026: TypePointer UniformConstant 1018
|
1032: TypePointer Input 20(fvec2)
|
||||||
1029: TypePointer Input 20(fvec2)
|
1033(c2D): 1032(ptr) Variable Input
|
||||||
1030(c2D): 1029(ptr) Variable Input
|
1036: TypeArray 10(float) 958
|
||||||
1033: TypeArray 10(float) 955
|
1037: TypePointer Input 1036
|
||||||
1034: TypePointer Input 1033
|
1038(gl_ClipDistance): 1037(ptr) Variable Input
|
||||||
1035(gl_ClipDistance): 1034(ptr) Variable Input
|
1039: TypePointer Input 10(float)
|
||||||
1036: TypePointer Input 10(float)
|
1043: TypeVector 10(float) 3
|
||||||
1040: TypeVector 10(float) 3
|
1048: TypeVector 32(int) 4
|
||||||
1045: TypeVector 32(int) 4
|
1049: TypePointer Output 1048(ivec4)
|
||||||
1046: TypePointer Output 1045(ivec4)
|
1050(uoutp): 1049(ptr) Variable Output
|
||||||
1047(uoutp): 1046(ptr) Variable Output
|
1051: TypeImage 32(int) Rect sampled format:Unknown
|
||||||
1048: TypeImage 32(int) Rect sampled format:Unknown
|
1052: TypeSampledImage 1051
|
||||||
1049: TypeSampledImage 1048
|
1053: TypePointer UniformConstant 1052
|
||||||
1050: TypePointer UniformConstant 1049
|
1054(samp2dr): 1053(ptr) Variable UniformConstant
|
||||||
1051(samp2dr): 1050(ptr) Variable UniformConstant
|
1057: 32(int) Constant 4
|
||||||
1054: 32(int) Constant 4
|
1058: TypeArray 24(ivec2) 1057
|
||||||
1055: TypeArray 24(ivec2) 1054
|
1059: 24(ivec2) ConstantComposite 966 970
|
||||||
1056: 24(ivec2) ConstantComposite 963 967
|
1060: 23(int) Constant 15
|
||||||
1057: 23(int) Constant 15
|
1061: 23(int) Constant 16
|
||||||
1058: 23(int) Constant 16
|
|
||||||
1059: 24(ivec2) ConstantComposite 1057 1058
|
|
||||||
1060: 23(int) Constant 4294967294
|
|
||||||
1061: 23(int) Constant 0
|
|
||||||
1062: 24(ivec2) ConstantComposite 1060 1061
|
1062: 24(ivec2) ConstantComposite 1060 1061
|
||||||
1063: 1055 ConstantComposite 1056 27 1059 1062
|
1063: 23(int) Constant 4294967294
|
||||||
1071: TypeVector 23(int) 4
|
1064: 23(int) Constant 0
|
||||||
1072: TypePointer Output 1071(ivec4)
|
1065: 24(ivec2) ConstantComposite 1063 1064
|
||||||
1073(ioutp): 1072(ptr) Variable Output
|
1066: 1058 ConstantComposite 1059 27 1062 1065
|
||||||
1074: TypeImage 23(int) 2D array sampled format:Unknown
|
1074: TypeVector 23(int) 4
|
||||||
1075: TypeSampledImage 1074
|
1075: TypePointer Output 1074(ivec4)
|
||||||
1076: TypePointer UniformConstant 1075
|
1076(ioutp): 1075(ptr) Variable Output
|
||||||
1077(isamp2DA): 1076(ptr) Variable UniformConstant
|
1077: TypeImage 23(int) 2D array sampled format:Unknown
|
||||||
1079: 10(float) Constant 1036831949
|
1078: TypeSampledImage 1077
|
||||||
1080: 1040(fvec3) ConstantComposite 1079 1079 1079
|
1079: TypePointer UniformConstant 1078
|
||||||
1081: 24(ivec2) ConstantComposite 963 963
|
1080(isamp2DA): 1079(ptr) Variable UniformConstant
|
||||||
1093: TypePointer Input 11(fvec4)
|
1082: 10(float) Constant 1036831949
|
||||||
1094(gl_FragCoord): 1093(ptr) Variable Input
|
1083: 1043(fvec3) ConstantComposite 1082 1082 1082
|
||||||
1096(vl2): 1093(ptr) Variable Input
|
1084: 24(ivec2) ConstantComposite 966 966
|
||||||
1101: TypePointer Output 32(int)
|
1096: TypePointer Input 11(fvec4)
|
||||||
1102(uo): 1101(ptr) Variable Output
|
1097(gl_FragCoord): 1096(ptr) Variable Input
|
||||||
1103: TypePointer Input 32(int)
|
1099(vl2): 1096(ptr) Variable Input
|
||||||
1104(u): 1103(ptr) Variable Input
|
1104: TypePointer Output 32(int)
|
||||||
1111: TypePointer Function 23(int)
|
1105(uo): 1104(ptr) Variable Output
|
||||||
1113(gl_PrimitiveID): 1023(ptr) Variable Input
|
1106: TypePointer Input 32(int)
|
||||||
|
1107(u): 1106(ptr) Variable Input
|
||||||
|
1114: TypePointer Function 23(int)
|
||||||
|
1116(gl_PrimitiveID): 1026(ptr) Variable Input
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
1016(v): 1015(ptr) Variable Function
|
1019(v): 1018(ptr) Variable Function
|
||||||
1112(id): 1111(ptr) Variable Function
|
1115(id): 1114(ptr) Variable Function
|
||||||
1025: 23(int) Load 1024(i)
|
1028: 23(int) Load 1027(i)
|
||||||
1027: 1026(ptr) AccessChain 1022(arrayedSampler) 1025
|
1030: 1029(ptr) AccessChain 1025(arrayedSampler) 1028
|
||||||
1028: 1018 Load 1027
|
1031: 1021 Load 1030
|
||||||
1031: 20(fvec2) Load 1030(c2D)
|
1034: 20(fvec2) Load 1033(c2D)
|
||||||
1032: 11(fvec4) ImageSampleImplicitLod 1028 1031
|
1035: 11(fvec4) ImageSampleImplicitLod 1031 1034
|
||||||
Store 1016(v) 1032
|
Store 1019(v) 1035
|
||||||
1037: 1036(ptr) AccessChain 1035(gl_ClipDistance) 963
|
1040: 1039(ptr) AccessChain 1038(gl_ClipDistance) 966
|
||||||
1038: 10(float) Load 1037
|
1041: 10(float) Load 1040
|
||||||
1039: 34(ptr) AccessChain 13(outp) 33
|
1042: 34(ptr) AccessChain 13(outp) 33
|
||||||
Store 1039 1038
|
Store 1042 1041
|
||||||
1041: 11(fvec4) Load 1016(v)
|
1044: 11(fvec4) Load 1019(v)
|
||||||
1042: 1040(fvec3) VectorShuffle 1041 1041 1 2 3
|
1045: 1043(fvec3) VectorShuffle 1044 1044 1 2 3
|
||||||
1043: 11(fvec4) Load 13(outp)
|
1046: 11(fvec4) Load 13(outp)
|
||||||
1044: 11(fvec4) VectorShuffle 1043 1042 0 4 5 6
|
1047: 11(fvec4) VectorShuffle 1046 1045 0 4 5 6
|
||||||
Store 13(outp) 1044
|
Store 13(outp) 1047
|
||||||
1052: 1049 Load 1051(samp2dr)
|
1055: 1052 Load 1054(samp2dr)
|
||||||
1053: 20(fvec2) Load 1030(c2D)
|
1056: 20(fvec2) Load 1033(c2D)
|
||||||
1064: 1045(ivec4) ImageGather 1052 1053 967 ConstOffsets 1063
|
1067: 1048(ivec4) ImageGather 1055 1056 970 ConstOffsets 1066
|
||||||
Store 1047(uoutp) 1064
|
Store 1050(uoutp) 1067
|
||||||
1065: 1026(ptr) AccessChain 1022(arrayedSampler) 1061
|
1068: 1029(ptr) AccessChain 1025(arrayedSampler) 1064
|
||||||
1066: 1018 Load 1065
|
1069: 1021 Load 1068
|
||||||
1067: 20(fvec2) Load 1030(c2D)
|
1070: 20(fvec2) Load 1033(c2D)
|
||||||
1068: 11(fvec4) ImageGather 1066 1067 1061
|
1071: 11(fvec4) ImageGather 1069 1070 1064
|
||||||
1069: 11(fvec4) Load 13(outp)
|
1072: 11(fvec4) Load 13(outp)
|
||||||
1070: 11(fvec4) FAdd 1069 1068
|
1073: 11(fvec4) FAdd 1072 1071
|
||||||
Store 13(outp) 1070
|
Store 13(outp) 1073
|
||||||
1078: 1075 Load 1077(isamp2DA)
|
1081: 1078 Load 1080(isamp2DA)
|
||||||
1082: 1071(ivec4) ImageGather 1078 1080 25 ConstOffset 1081
|
1085: 1074(ivec4) ImageGather 1081 1083 25 ConstOffset 1084
|
||||||
Store 1073(ioutp) 1082
|
Store 1076(ioutp) 1085
|
||||||
1083: 1075 Load 1077(isamp2DA)
|
1086: 1078 Load 1080(isamp2DA)
|
||||||
1084: 1071(ivec4) ImageGather 1083 1080 25 ConstOffset 1081
|
1087: 1074(ivec4) ImageGather 1086 1083 25 ConstOffset 1084
|
||||||
1085: 1071(ivec4) Load 1073(ioutp)
|
1088: 1074(ivec4) Load 1076(ioutp)
|
||||||
1086: 1071(ivec4) IAdd 1085 1084
|
1089: 1074(ivec4) IAdd 1088 1087
|
||||||
Store 1073(ioutp) 1086
|
Store 1076(ioutp) 1089
|
||||||
1087: 1075 Load 1077(isamp2DA)
|
1090: 1078 Load 1080(isamp2DA)
|
||||||
1088: 23(int) Load 1024(i)
|
1091: 23(int) Load 1027(i)
|
||||||
1089: 24(ivec2) CompositeConstruct 1088 1088
|
1092: 24(ivec2) CompositeConstruct 1091 1091
|
||||||
1090: 1071(ivec4) ImageGather 1087 1080 1061 Offset 1089
|
1093: 1074(ivec4) ImageGather 1090 1083 1064 Offset 1092
|
||||||
1091: 1071(ivec4) Load 1073(ioutp)
|
1094: 1074(ivec4) Load 1076(ioutp)
|
||||||
1092: 1071(ivec4) IAdd 1091 1090
|
1095: 1074(ivec4) IAdd 1094 1093
|
||||||
Store 1073(ioutp) 1092
|
Store 1076(ioutp) 1095
|
||||||
1095: 11(fvec4) Load 1094(gl_FragCoord)
|
1098: 11(fvec4) Load 1097(gl_FragCoord)
|
||||||
1097: 11(fvec4) Load 1096(vl2)
|
1100: 11(fvec4) Load 1099(vl2)
|
||||||
1098: 11(fvec4) FAdd 1095 1097
|
1101: 11(fvec4) FAdd 1098 1100
|
||||||
1099: 11(fvec4) Load 13(outp)
|
1102: 11(fvec4) Load 13(outp)
|
||||||
1100: 11(fvec4) FAdd 1099 1098
|
1103: 11(fvec4) FAdd 1102 1101
|
||||||
Store 13(outp) 1100
|
Store 13(outp) 1103
|
||||||
1105: 32(int) Load 1104(u)
|
1108: 32(int) Load 1107(u)
|
||||||
1106: 23(int) Load 1024(i)
|
1109: 23(int) Load 1027(i)
|
||||||
1107: 32(int) Bitcast 1106
|
1110: 32(int) Bitcast 1109
|
||||||
1108: 32(int) UMod 1105 1107
|
1111: 32(int) UMod 1108 1110
|
||||||
Store 1102(uo) 1108
|
Store 1105(uo) 1111
|
||||||
1109: 2 FunctionCall 6(foo23()
|
1112: 2 FunctionCall 6(foo23()
|
||||||
1110: 2 FunctionCall 8(doubles()
|
1113: 2 FunctionCall 8(doubles()
|
||||||
1114: 23(int) Load 1113(gl_PrimitiveID)
|
1117: 23(int) Load 1116(gl_PrimitiveID)
|
||||||
Store 1112(id) 1114
|
Store 1115(id) 1117
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
6(foo23(): 2 Function None 3
|
6(foo23(): 2 Function None 3
|
||||||
@ -278,15 +277,15 @@ spv.400.frag
|
|||||||
566: 438(ptr) Variable Function
|
566: 438(ptr) Variable Function
|
||||||
575: 447(ptr) Variable Function
|
575: 447(ptr) Variable Function
|
||||||
584: 456(ptr) Variable Function
|
584: 456(ptr) Variable Function
|
||||||
736(dmat2v): 735(ptr) Variable Function
|
739(dmat2v): 738(ptr) Variable Function
|
||||||
742(dmat3v): 741(ptr) Variable Function
|
745(dmat3v): 744(ptr) Variable Function
|
||||||
748(dmat4v): 747(ptr) Variable Function
|
751(dmat4v): 750(ptr) Variable Function
|
||||||
754(dmat2x3v): 753(ptr) Variable Function
|
757(dmat2x3v): 756(ptr) Variable Function
|
||||||
760(dmat3x2v): 759(ptr) Variable Function
|
763(dmat3x2v): 762(ptr) Variable Function
|
||||||
766(dmat2x4v): 765(ptr) Variable Function
|
769(dmat2x4v): 768(ptr) Variable Function
|
||||||
772(dmat4x2v): 771(ptr) Variable Function
|
775(dmat4x2v): 774(ptr) Variable Function
|
||||||
778(dmat3x4v): 777(ptr) Variable Function
|
781(dmat3x4v): 780(ptr) Variable Function
|
||||||
784(dmat4x3v): 783(ptr) Variable Function
|
787(dmat4x3v): 786(ptr) Variable Function
|
||||||
Store 41(doublev) 42
|
Store 41(doublev) 42
|
||||||
Store 45(dvec2v) 47
|
Store 45(dvec2v) 47
|
||||||
Store 50(dvec3v) 52
|
Store 50(dvec3v) 52
|
||||||
@ -1080,309 +1079,313 @@ spv.400.frag
|
|||||||
Store 55(dvec4v) 712
|
Store 55(dvec4v) 712
|
||||||
713:39(float64_t) Load 41(doublev)
|
713:39(float64_t) Load 41(doublev)
|
||||||
714:39(float64_t) Load 41(doublev)
|
714:39(float64_t) Load 41(doublev)
|
||||||
|
715:39(float64_t) Load 41(doublev)
|
||||||
716:39(float64_t) ExtInst 1(GLSL.std.450) 72(Refract) 713 714 715
|
716:39(float64_t) ExtInst 1(GLSL.std.450) 72(Refract) 713 714 715
|
||||||
717:39(float64_t) Load 41(doublev)
|
717:39(float64_t) Load 41(doublev)
|
||||||
718:39(float64_t) FAdd 717 716
|
718:39(float64_t) FAdd 717 716
|
||||||
Store 41(doublev) 718
|
Store 41(doublev) 718
|
||||||
719: 43(f64vec2) Load 45(dvec2v)
|
719: 43(f64vec2) Load 45(dvec2v)
|
||||||
720: 43(f64vec2) Load 45(dvec2v)
|
720: 43(f64vec2) Load 45(dvec2v)
|
||||||
721: 43(f64vec2) ExtInst 1(GLSL.std.450) 72(Refract) 719 720 715
|
721:39(float64_t) Load 41(doublev)
|
||||||
722: 43(f64vec2) Load 45(dvec2v)
|
722: 43(f64vec2) ExtInst 1(GLSL.std.450) 72(Refract) 719 720 721
|
||||||
723: 43(f64vec2) FAdd 722 721
|
723: 43(f64vec2) Load 45(dvec2v)
|
||||||
Store 45(dvec2v) 723
|
724: 43(f64vec2) FAdd 723 722
|
||||||
724: 48(f64vec3) Load 50(dvec3v)
|
Store 45(dvec2v) 724
|
||||||
725: 48(f64vec3) Load 50(dvec3v)
|
725: 48(f64vec3) Load 50(dvec3v)
|
||||||
726: 48(f64vec3) ExtInst 1(GLSL.std.450) 72(Refract) 724 725 715
|
726: 48(f64vec3) Load 50(dvec3v)
|
||||||
727: 48(f64vec3) Load 50(dvec3v)
|
727:39(float64_t) Load 41(doublev)
|
||||||
728: 48(f64vec3) FAdd 727 726
|
728: 48(f64vec3) ExtInst 1(GLSL.std.450) 72(Refract) 725 726 727
|
||||||
Store 50(dvec3v) 728
|
729: 48(f64vec3) Load 50(dvec3v)
|
||||||
729: 53(f64vec4) Load 55(dvec4v)
|
730: 48(f64vec3) FAdd 729 728
|
||||||
730: 53(f64vec4) Load 55(dvec4v)
|
Store 50(dvec3v) 730
|
||||||
731: 53(f64vec4) ExtInst 1(GLSL.std.450) 72(Refract) 729 730 715
|
731: 53(f64vec4) Load 55(dvec4v)
|
||||||
732: 53(f64vec4) Load 55(dvec4v)
|
732: 53(f64vec4) Load 55(dvec4v)
|
||||||
733: 53(f64vec4) FAdd 732 731
|
733:39(float64_t) Load 41(doublev)
|
||||||
Store 55(dvec4v) 733
|
734: 53(f64vec4) ExtInst 1(GLSL.std.450) 72(Refract) 731 732 733
|
||||||
737: 43(f64vec2) Load 45(dvec2v)
|
735: 53(f64vec4) Load 55(dvec4v)
|
||||||
738: 43(f64vec2) Load 45(dvec2v)
|
736: 53(f64vec4) FAdd 735 734
|
||||||
739: 734 OuterProduct 737 738
|
Store 55(dvec4v) 736
|
||||||
Store 736(dmat2v) 739
|
740: 43(f64vec2) Load 45(dvec2v)
|
||||||
743: 48(f64vec3) Load 50(dvec3v)
|
741: 43(f64vec2) Load 45(dvec2v)
|
||||||
744: 48(f64vec3) Load 50(dvec3v)
|
742: 737 OuterProduct 740 741
|
||||||
745: 740 OuterProduct 743 744
|
Store 739(dmat2v) 742
|
||||||
Store 742(dmat3v) 745
|
746: 48(f64vec3) Load 50(dvec3v)
|
||||||
749: 53(f64vec4) Load 55(dvec4v)
|
747: 48(f64vec3) Load 50(dvec3v)
|
||||||
750: 53(f64vec4) Load 55(dvec4v)
|
748: 743 OuterProduct 746 747
|
||||||
751: 746 OuterProduct 749 750
|
Store 745(dmat3v) 748
|
||||||
Store 748(dmat4v) 751
|
752: 53(f64vec4) Load 55(dvec4v)
|
||||||
755: 48(f64vec3) Load 50(dvec3v)
|
753: 53(f64vec4) Load 55(dvec4v)
|
||||||
756: 43(f64vec2) Load 45(dvec2v)
|
754: 749 OuterProduct 752 753
|
||||||
757: 752 OuterProduct 755 756
|
Store 751(dmat4v) 754
|
||||||
Store 754(dmat2x3v) 757
|
758: 48(f64vec3) Load 50(dvec3v)
|
||||||
761: 43(f64vec2) Load 45(dvec2v)
|
759: 43(f64vec2) Load 45(dvec2v)
|
||||||
762: 48(f64vec3) Load 50(dvec3v)
|
760: 755 OuterProduct 758 759
|
||||||
763: 758 OuterProduct 761 762
|
Store 757(dmat2x3v) 760
|
||||||
Store 760(dmat3x2v) 763
|
764: 43(f64vec2) Load 45(dvec2v)
|
||||||
767: 53(f64vec4) Load 55(dvec4v)
|
765: 48(f64vec3) Load 50(dvec3v)
|
||||||
768: 43(f64vec2) Load 45(dvec2v)
|
766: 761 OuterProduct 764 765
|
||||||
769: 764 OuterProduct 767 768
|
Store 763(dmat3x2v) 766
|
||||||
Store 766(dmat2x4v) 769
|
770: 53(f64vec4) Load 55(dvec4v)
|
||||||
773: 43(f64vec2) Load 45(dvec2v)
|
771: 43(f64vec2) Load 45(dvec2v)
|
||||||
774: 53(f64vec4) Load 55(dvec4v)
|
772: 767 OuterProduct 770 771
|
||||||
775: 770 OuterProduct 773 774
|
Store 769(dmat2x4v) 772
|
||||||
Store 772(dmat4x2v) 775
|
776: 43(f64vec2) Load 45(dvec2v)
|
||||||
779: 53(f64vec4) Load 55(dvec4v)
|
777: 53(f64vec4) Load 55(dvec4v)
|
||||||
780: 48(f64vec3) Load 50(dvec3v)
|
778: 773 OuterProduct 776 777
|
||||||
781: 776 OuterProduct 779 780
|
Store 775(dmat4x2v) 778
|
||||||
Store 778(dmat3x4v) 781
|
782: 53(f64vec4) Load 55(dvec4v)
|
||||||
785: 48(f64vec3) Load 50(dvec3v)
|
783: 48(f64vec3) Load 50(dvec3v)
|
||||||
786: 53(f64vec4) Load 55(dvec4v)
|
784: 779 OuterProduct 782 783
|
||||||
787: 782 OuterProduct 785 786
|
Store 781(dmat3x4v) 784
|
||||||
Store 784(dmat4x3v) 787
|
788: 48(f64vec3) Load 50(dvec3v)
|
||||||
788: 734 Load 736(dmat2v)
|
789: 53(f64vec4) Load 55(dvec4v)
|
||||||
789: 734 Load 736(dmat2v)
|
790: 785 OuterProduct 788 789
|
||||||
790: 43(f64vec2) CompositeExtract 788 0
|
Store 787(dmat4x3v) 790
|
||||||
791: 43(f64vec2) CompositeExtract 789 0
|
791: 737 Load 739(dmat2v)
|
||||||
792: 43(f64vec2) FMul 790 791
|
792: 737 Load 739(dmat2v)
|
||||||
793: 43(f64vec2) CompositeExtract 788 1
|
793: 43(f64vec2) CompositeExtract 791 0
|
||||||
794: 43(f64vec2) CompositeExtract 789 1
|
794: 43(f64vec2) CompositeExtract 792 0
|
||||||
795: 43(f64vec2) FMul 793 794
|
795: 43(f64vec2) FMul 793 794
|
||||||
796: 734 CompositeConstruct 792 795
|
796: 43(f64vec2) CompositeExtract 791 1
|
||||||
797: 734 Load 736(dmat2v)
|
797: 43(f64vec2) CompositeExtract 792 1
|
||||||
798: 734 MatrixTimesMatrix 797 796
|
798: 43(f64vec2) FMul 796 797
|
||||||
Store 736(dmat2v) 798
|
799: 737 CompositeConstruct 795 798
|
||||||
799: 740 Load 742(dmat3v)
|
800: 737 Load 739(dmat2v)
|
||||||
800: 740 Load 742(dmat3v)
|
801: 737 MatrixTimesMatrix 800 799
|
||||||
801: 48(f64vec3) CompositeExtract 799 0
|
Store 739(dmat2v) 801
|
||||||
802: 48(f64vec3) CompositeExtract 800 0
|
802: 743 Load 745(dmat3v)
|
||||||
803: 48(f64vec3) FMul 801 802
|
803: 743 Load 745(dmat3v)
|
||||||
804: 48(f64vec3) CompositeExtract 799 1
|
804: 48(f64vec3) CompositeExtract 802 0
|
||||||
805: 48(f64vec3) CompositeExtract 800 1
|
805: 48(f64vec3) CompositeExtract 803 0
|
||||||
806: 48(f64vec3) FMul 804 805
|
806: 48(f64vec3) FMul 804 805
|
||||||
807: 48(f64vec3) CompositeExtract 799 2
|
807: 48(f64vec3) CompositeExtract 802 1
|
||||||
808: 48(f64vec3) CompositeExtract 800 2
|
808: 48(f64vec3) CompositeExtract 803 1
|
||||||
809: 48(f64vec3) FMul 807 808
|
809: 48(f64vec3) FMul 807 808
|
||||||
810: 740 CompositeConstruct 803 806 809
|
810: 48(f64vec3) CompositeExtract 802 2
|
||||||
811: 740 Load 742(dmat3v)
|
811: 48(f64vec3) CompositeExtract 803 2
|
||||||
812: 740 MatrixTimesMatrix 811 810
|
812: 48(f64vec3) FMul 810 811
|
||||||
Store 742(dmat3v) 812
|
813: 743 CompositeConstruct 806 809 812
|
||||||
813: 746 Load 748(dmat4v)
|
814: 743 Load 745(dmat3v)
|
||||||
814: 746 Load 748(dmat4v)
|
815: 743 MatrixTimesMatrix 814 813
|
||||||
815: 53(f64vec4) CompositeExtract 813 0
|
Store 745(dmat3v) 815
|
||||||
816: 53(f64vec4) CompositeExtract 814 0
|
816: 749 Load 751(dmat4v)
|
||||||
817: 53(f64vec4) FMul 815 816
|
817: 749 Load 751(dmat4v)
|
||||||
818: 53(f64vec4) CompositeExtract 813 1
|
818: 53(f64vec4) CompositeExtract 816 0
|
||||||
819: 53(f64vec4) CompositeExtract 814 1
|
819: 53(f64vec4) CompositeExtract 817 0
|
||||||
820: 53(f64vec4) FMul 818 819
|
820: 53(f64vec4) FMul 818 819
|
||||||
821: 53(f64vec4) CompositeExtract 813 2
|
821: 53(f64vec4) CompositeExtract 816 1
|
||||||
822: 53(f64vec4) CompositeExtract 814 2
|
822: 53(f64vec4) CompositeExtract 817 1
|
||||||
823: 53(f64vec4) FMul 821 822
|
823: 53(f64vec4) FMul 821 822
|
||||||
824: 53(f64vec4) CompositeExtract 813 3
|
824: 53(f64vec4) CompositeExtract 816 2
|
||||||
825: 53(f64vec4) CompositeExtract 814 3
|
825: 53(f64vec4) CompositeExtract 817 2
|
||||||
826: 53(f64vec4) FMul 824 825
|
826: 53(f64vec4) FMul 824 825
|
||||||
827: 746 CompositeConstruct 817 820 823 826
|
827: 53(f64vec4) CompositeExtract 816 3
|
||||||
828: 746 Load 748(dmat4v)
|
828: 53(f64vec4) CompositeExtract 817 3
|
||||||
829: 746 MatrixTimesMatrix 828 827
|
829: 53(f64vec4) FMul 827 828
|
||||||
Store 748(dmat4v) 829
|
830: 749 CompositeConstruct 820 823 826 829
|
||||||
830: 752 Load 754(dmat2x3v)
|
831: 749 Load 751(dmat4v)
|
||||||
831: 752 Load 754(dmat2x3v)
|
832: 749 MatrixTimesMatrix 831 830
|
||||||
832: 48(f64vec3) CompositeExtract 830 0
|
Store 751(dmat4v) 832
|
||||||
833: 48(f64vec3) CompositeExtract 831 0
|
833: 755 Load 757(dmat2x3v)
|
||||||
834: 48(f64vec3) FMul 832 833
|
834: 755 Load 757(dmat2x3v)
|
||||||
835: 48(f64vec3) CompositeExtract 830 1
|
835: 48(f64vec3) CompositeExtract 833 0
|
||||||
836: 48(f64vec3) CompositeExtract 831 1
|
836: 48(f64vec3) CompositeExtract 834 0
|
||||||
837: 48(f64vec3) FMul 835 836
|
837: 48(f64vec3) FMul 835 836
|
||||||
838: 752 CompositeConstruct 834 837
|
838: 48(f64vec3) CompositeExtract 833 1
|
||||||
Store 754(dmat2x3v) 838
|
839: 48(f64vec3) CompositeExtract 834 1
|
||||||
839: 764 Load 766(dmat2x4v)
|
840: 48(f64vec3) FMul 838 839
|
||||||
840: 764 Load 766(dmat2x4v)
|
841: 755 CompositeConstruct 837 840
|
||||||
841: 53(f64vec4) CompositeExtract 839 0
|
Store 757(dmat2x3v) 841
|
||||||
842: 53(f64vec4) CompositeExtract 840 0
|
842: 767 Load 769(dmat2x4v)
|
||||||
843: 53(f64vec4) FMul 841 842
|
843: 767 Load 769(dmat2x4v)
|
||||||
844: 53(f64vec4) CompositeExtract 839 1
|
844: 53(f64vec4) CompositeExtract 842 0
|
||||||
845: 53(f64vec4) CompositeExtract 840 1
|
845: 53(f64vec4) CompositeExtract 843 0
|
||||||
846: 53(f64vec4) FMul 844 845
|
846: 53(f64vec4) FMul 844 845
|
||||||
847: 764 CompositeConstruct 843 846
|
847: 53(f64vec4) CompositeExtract 842 1
|
||||||
Store 766(dmat2x4v) 847
|
848: 53(f64vec4) CompositeExtract 843 1
|
||||||
848: 758 Load 760(dmat3x2v)
|
849: 53(f64vec4) FMul 847 848
|
||||||
849: 758 Load 760(dmat3x2v)
|
850: 767 CompositeConstruct 846 849
|
||||||
850: 43(f64vec2) CompositeExtract 848 0
|
Store 769(dmat2x4v) 850
|
||||||
851: 43(f64vec2) CompositeExtract 849 0
|
851: 761 Load 763(dmat3x2v)
|
||||||
852: 43(f64vec2) FMul 850 851
|
852: 761 Load 763(dmat3x2v)
|
||||||
853: 43(f64vec2) CompositeExtract 848 1
|
853: 43(f64vec2) CompositeExtract 851 0
|
||||||
854: 43(f64vec2) CompositeExtract 849 1
|
854: 43(f64vec2) CompositeExtract 852 0
|
||||||
855: 43(f64vec2) FMul 853 854
|
855: 43(f64vec2) FMul 853 854
|
||||||
856: 43(f64vec2) CompositeExtract 848 2
|
856: 43(f64vec2) CompositeExtract 851 1
|
||||||
857: 43(f64vec2) CompositeExtract 849 2
|
857: 43(f64vec2) CompositeExtract 852 1
|
||||||
858: 43(f64vec2) FMul 856 857
|
858: 43(f64vec2) FMul 856 857
|
||||||
859: 758 CompositeConstruct 852 855 858
|
859: 43(f64vec2) CompositeExtract 851 2
|
||||||
Store 760(dmat3x2v) 859
|
860: 43(f64vec2) CompositeExtract 852 2
|
||||||
860: 776 Load 778(dmat3x4v)
|
861: 43(f64vec2) FMul 859 860
|
||||||
861: 776 Load 778(dmat3x4v)
|
862: 761 CompositeConstruct 855 858 861
|
||||||
862: 53(f64vec4) CompositeExtract 860 0
|
Store 763(dmat3x2v) 862
|
||||||
863: 53(f64vec4) CompositeExtract 861 0
|
863: 779 Load 781(dmat3x4v)
|
||||||
864: 53(f64vec4) FMul 862 863
|
864: 779 Load 781(dmat3x4v)
|
||||||
865: 53(f64vec4) CompositeExtract 860 1
|
865: 53(f64vec4) CompositeExtract 863 0
|
||||||
866: 53(f64vec4) CompositeExtract 861 1
|
866: 53(f64vec4) CompositeExtract 864 0
|
||||||
867: 53(f64vec4) FMul 865 866
|
867: 53(f64vec4) FMul 865 866
|
||||||
868: 53(f64vec4) CompositeExtract 860 2
|
868: 53(f64vec4) CompositeExtract 863 1
|
||||||
869: 53(f64vec4) CompositeExtract 861 2
|
869: 53(f64vec4) CompositeExtract 864 1
|
||||||
870: 53(f64vec4) FMul 868 869
|
870: 53(f64vec4) FMul 868 869
|
||||||
871: 776 CompositeConstruct 864 867 870
|
871: 53(f64vec4) CompositeExtract 863 2
|
||||||
Store 778(dmat3x4v) 871
|
872: 53(f64vec4) CompositeExtract 864 2
|
||||||
872: 770 Load 772(dmat4x2v)
|
873: 53(f64vec4) FMul 871 872
|
||||||
873: 770 Load 772(dmat4x2v)
|
874: 779 CompositeConstruct 867 870 873
|
||||||
874: 43(f64vec2) CompositeExtract 872 0
|
Store 781(dmat3x4v) 874
|
||||||
875: 43(f64vec2) CompositeExtract 873 0
|
875: 773 Load 775(dmat4x2v)
|
||||||
876: 43(f64vec2) FMul 874 875
|
876: 773 Load 775(dmat4x2v)
|
||||||
877: 43(f64vec2) CompositeExtract 872 1
|
877: 43(f64vec2) CompositeExtract 875 0
|
||||||
878: 43(f64vec2) CompositeExtract 873 1
|
878: 43(f64vec2) CompositeExtract 876 0
|
||||||
879: 43(f64vec2) FMul 877 878
|
879: 43(f64vec2) FMul 877 878
|
||||||
880: 43(f64vec2) CompositeExtract 872 2
|
880: 43(f64vec2) CompositeExtract 875 1
|
||||||
881: 43(f64vec2) CompositeExtract 873 2
|
881: 43(f64vec2) CompositeExtract 876 1
|
||||||
882: 43(f64vec2) FMul 880 881
|
882: 43(f64vec2) FMul 880 881
|
||||||
883: 43(f64vec2) CompositeExtract 872 3
|
883: 43(f64vec2) CompositeExtract 875 2
|
||||||
884: 43(f64vec2) CompositeExtract 873 3
|
884: 43(f64vec2) CompositeExtract 876 2
|
||||||
885: 43(f64vec2) FMul 883 884
|
885: 43(f64vec2) FMul 883 884
|
||||||
886: 770 CompositeConstruct 876 879 882 885
|
886: 43(f64vec2) CompositeExtract 875 3
|
||||||
Store 772(dmat4x2v) 886
|
887: 43(f64vec2) CompositeExtract 876 3
|
||||||
887: 782 Load 784(dmat4x3v)
|
888: 43(f64vec2) FMul 886 887
|
||||||
888: 782 Load 784(dmat4x3v)
|
889: 773 CompositeConstruct 879 882 885 888
|
||||||
889: 48(f64vec3) CompositeExtract 887 0
|
Store 775(dmat4x2v) 889
|
||||||
890: 48(f64vec3) CompositeExtract 888 0
|
890: 785 Load 787(dmat4x3v)
|
||||||
891: 48(f64vec3) FMul 889 890
|
891: 785 Load 787(dmat4x3v)
|
||||||
892: 48(f64vec3) CompositeExtract 887 1
|
892: 48(f64vec3) CompositeExtract 890 0
|
||||||
893: 48(f64vec3) CompositeExtract 888 1
|
893: 48(f64vec3) CompositeExtract 891 0
|
||||||
894: 48(f64vec3) FMul 892 893
|
894: 48(f64vec3) FMul 892 893
|
||||||
895: 48(f64vec3) CompositeExtract 887 2
|
895: 48(f64vec3) CompositeExtract 890 1
|
||||||
896: 48(f64vec3) CompositeExtract 888 2
|
896: 48(f64vec3) CompositeExtract 891 1
|
||||||
897: 48(f64vec3) FMul 895 896
|
897: 48(f64vec3) FMul 895 896
|
||||||
898: 48(f64vec3) CompositeExtract 887 3
|
898: 48(f64vec3) CompositeExtract 890 2
|
||||||
899: 48(f64vec3) CompositeExtract 888 3
|
899: 48(f64vec3) CompositeExtract 891 2
|
||||||
900: 48(f64vec3) FMul 898 899
|
900: 48(f64vec3) FMul 898 899
|
||||||
901: 782 CompositeConstruct 891 894 897 900
|
901: 48(f64vec3) CompositeExtract 890 3
|
||||||
Store 784(dmat4x3v) 901
|
902: 48(f64vec3) CompositeExtract 891 3
|
||||||
902: 734 Load 736(dmat2v)
|
903: 48(f64vec3) FMul 901 902
|
||||||
903: 734 Transpose 902
|
904: 785 CompositeConstruct 894 897 900 903
|
||||||
904: 734 Load 736(dmat2v)
|
Store 787(dmat4x3v) 904
|
||||||
905: 734 MatrixTimesMatrix 904 903
|
905: 737 Load 739(dmat2v)
|
||||||
Store 736(dmat2v) 905
|
906: 737 Transpose 905
|
||||||
906: 740 Load 742(dmat3v)
|
907: 737 Load 739(dmat2v)
|
||||||
907: 740 Transpose 906
|
908: 737 MatrixTimesMatrix 907 906
|
||||||
908: 740 Load 742(dmat3v)
|
Store 739(dmat2v) 908
|
||||||
909: 740 MatrixTimesMatrix 908 907
|
909: 743 Load 745(dmat3v)
|
||||||
Store 742(dmat3v) 909
|
910: 743 Transpose 909
|
||||||
910: 746 Load 748(dmat4v)
|
911: 743 Load 745(dmat3v)
|
||||||
911: 746 Transpose 910
|
912: 743 MatrixTimesMatrix 911 910
|
||||||
912: 746 Load 748(dmat4v)
|
Store 745(dmat3v) 912
|
||||||
913: 746 MatrixTimesMatrix 912 911
|
913: 749 Load 751(dmat4v)
|
||||||
Store 748(dmat4v) 913
|
914: 749 Transpose 913
|
||||||
914: 758 Load 760(dmat3x2v)
|
915: 749 Load 751(dmat4v)
|
||||||
915: 752 Transpose 914
|
916: 749 MatrixTimesMatrix 915 914
|
||||||
Store 754(dmat2x3v) 915
|
Store 751(dmat4v) 916
|
||||||
916: 752 Load 754(dmat2x3v)
|
917: 761 Load 763(dmat3x2v)
|
||||||
917: 758 Transpose 916
|
918: 755 Transpose 917
|
||||||
Store 760(dmat3x2v) 917
|
Store 757(dmat2x3v) 918
|
||||||
918: 770 Load 772(dmat4x2v)
|
919: 755 Load 757(dmat2x3v)
|
||||||
919: 764 Transpose 918
|
920: 761 Transpose 919
|
||||||
Store 766(dmat2x4v) 919
|
Store 763(dmat3x2v) 920
|
||||||
920: 764 Load 766(dmat2x4v)
|
921: 773 Load 775(dmat4x2v)
|
||||||
921: 770 Transpose 920
|
922: 767 Transpose 921
|
||||||
Store 772(dmat4x2v) 921
|
Store 769(dmat2x4v) 922
|
||||||
922: 782 Load 784(dmat4x3v)
|
923: 767 Load 769(dmat2x4v)
|
||||||
923: 776 Transpose 922
|
924: 773 Transpose 923
|
||||||
Store 778(dmat3x4v) 923
|
Store 775(dmat4x2v) 924
|
||||||
924: 776 Load 778(dmat3x4v)
|
925: 785 Load 787(dmat4x3v)
|
||||||
925: 782 Transpose 924
|
926: 779 Transpose 925
|
||||||
Store 784(dmat4x3v) 925
|
Store 781(dmat3x4v) 926
|
||||||
926: 734 Load 736(dmat2v)
|
927: 779 Load 781(dmat3x4v)
|
||||||
927:39(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 926
|
928: 785 Transpose 927
|
||||||
928:39(float64_t) Load 41(doublev)
|
Store 787(dmat4x3v) 928
|
||||||
929:39(float64_t) FAdd 928 927
|
929: 737 Load 739(dmat2v)
|
||||||
Store 41(doublev) 929
|
930:39(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 929
|
||||||
930: 740 Load 742(dmat3v)
|
931:39(float64_t) Load 41(doublev)
|
||||||
931:39(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 930
|
932:39(float64_t) FAdd 931 930
|
||||||
932:39(float64_t) Load 41(doublev)
|
Store 41(doublev) 932
|
||||||
933:39(float64_t) FAdd 932 931
|
933: 743 Load 745(dmat3v)
|
||||||
Store 41(doublev) 933
|
934:39(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 933
|
||||||
934: 746 Load 748(dmat4v)
|
935:39(float64_t) Load 41(doublev)
|
||||||
935:39(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 934
|
936:39(float64_t) FAdd 935 934
|
||||||
936:39(float64_t) Load 41(doublev)
|
Store 41(doublev) 936
|
||||||
937:39(float64_t) FAdd 936 935
|
937: 749 Load 751(dmat4v)
|
||||||
Store 41(doublev) 937
|
938:39(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 937
|
||||||
938: 734 Load 736(dmat2v)
|
939:39(float64_t) Load 41(doublev)
|
||||||
939: 734 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 938
|
940:39(float64_t) FAdd 939 938
|
||||||
940: 734 Load 736(dmat2v)
|
Store 41(doublev) 940
|
||||||
941: 734 MatrixTimesMatrix 940 939
|
941: 737 Load 739(dmat2v)
|
||||||
Store 736(dmat2v) 941
|
942: 737 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 941
|
||||||
942: 740 Load 742(dmat3v)
|
943: 737 Load 739(dmat2v)
|
||||||
943: 740 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 942
|
944: 737 MatrixTimesMatrix 943 942
|
||||||
944: 740 Load 742(dmat3v)
|
Store 739(dmat2v) 944
|
||||||
945: 740 MatrixTimesMatrix 944 943
|
945: 743 Load 745(dmat3v)
|
||||||
Store 742(dmat3v) 945
|
946: 743 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 945
|
||||||
946: 746 Load 748(dmat4v)
|
947: 743 Load 745(dmat3v)
|
||||||
947: 746 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 946
|
948: 743 MatrixTimesMatrix 947 946
|
||||||
948: 746 Load 748(dmat4v)
|
Store 745(dmat3v) 948
|
||||||
949: 746 MatrixTimesMatrix 948 947
|
949: 749 Load 751(dmat4v)
|
||||||
Store 748(dmat4v) 949
|
950: 749 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 949
|
||||||
950:39(float64_t) Load 41(doublev)
|
951: 749 Load 751(dmat4v)
|
||||||
952: 40(ptr) AccessChain 45(dvec2v) 951
|
952: 749 MatrixTimesMatrix 951 950
|
||||||
953:39(float64_t) Load 952
|
Store 751(dmat4v) 952
|
||||||
954:39(float64_t) FAdd 950 953
|
953:39(float64_t) Load 41(doublev)
|
||||||
956: 40(ptr) AccessChain 50(dvec3v) 955
|
955: 40(ptr) AccessChain 45(dvec2v) 954
|
||||||
957:39(float64_t) Load 956
|
956:39(float64_t) Load 955
|
||||||
958:39(float64_t) FAdd 954 957
|
957:39(float64_t) FAdd 953 956
|
||||||
960: 40(ptr) AccessChain 55(dvec4v) 959
|
959: 40(ptr) AccessChain 50(dvec3v) 958
|
||||||
961:39(float64_t) Load 960
|
960:39(float64_t) Load 959
|
||||||
962:39(float64_t) FAdd 958 961
|
961:39(float64_t) FAdd 957 960
|
||||||
964: 40(ptr) AccessChain 736(dmat2v) 963 951
|
963: 40(ptr) AccessChain 55(dvec4v) 962
|
||||||
965:39(float64_t) Load 964
|
964:39(float64_t) Load 963
|
||||||
966:39(float64_t) FAdd 962 965
|
965:39(float64_t) FAdd 961 964
|
||||||
968: 40(ptr) AccessChain 742(dmat3v) 967 955
|
967: 40(ptr) AccessChain 739(dmat2v) 966 954
|
||||||
969:39(float64_t) Load 968
|
968:39(float64_t) Load 967
|
||||||
970:39(float64_t) FAdd 966 969
|
969:39(float64_t) FAdd 965 968
|
||||||
971: 40(ptr) AccessChain 748(dmat4v) 25 959
|
971: 40(ptr) AccessChain 745(dmat3v) 970 958
|
||||||
972:39(float64_t) Load 971
|
972:39(float64_t) Load 971
|
||||||
973:39(float64_t) FAdd 970 972
|
973:39(float64_t) FAdd 969 972
|
||||||
974: 40(ptr) AccessChain 754(dmat2x3v) 963 951
|
974: 40(ptr) AccessChain 751(dmat4v) 25 962
|
||||||
975:39(float64_t) Load 974
|
975:39(float64_t) Load 974
|
||||||
976:39(float64_t) FAdd 973 975
|
976:39(float64_t) FAdd 973 975
|
||||||
977: 40(ptr) AccessChain 760(dmat3x2v) 963 951
|
977: 40(ptr) AccessChain 757(dmat2x3v) 966 954
|
||||||
978:39(float64_t) Load 977
|
978:39(float64_t) Load 977
|
||||||
979:39(float64_t) FAdd 976 978
|
979:39(float64_t) FAdd 976 978
|
||||||
980: 40(ptr) AccessChain 778(dmat3x4v) 967 955
|
980: 40(ptr) AccessChain 763(dmat3x2v) 966 954
|
||||||
981:39(float64_t) Load 980
|
981:39(float64_t) Load 980
|
||||||
982:39(float64_t) FAdd 979 981
|
982:39(float64_t) FAdd 979 981
|
||||||
983: 40(ptr) AccessChain 784(dmat4x3v) 967 955
|
983: 40(ptr) AccessChain 781(dmat3x4v) 970 958
|
||||||
984:39(float64_t) Load 983
|
984:39(float64_t) Load 983
|
||||||
985:39(float64_t) FAdd 982 984
|
985:39(float64_t) FAdd 982 984
|
||||||
986: 40(ptr) AccessChain 766(dmat2x4v) 963 951
|
986: 40(ptr) AccessChain 787(dmat4x3v) 970 958
|
||||||
987:39(float64_t) Load 986
|
987:39(float64_t) Load 986
|
||||||
988:39(float64_t) FAdd 985 987
|
988:39(float64_t) FAdd 985 987
|
||||||
989: 40(ptr) AccessChain 772(dmat4x2v) 963 951
|
989: 40(ptr) AccessChain 769(dmat2x4v) 966 954
|
||||||
990:39(float64_t) Load 989
|
990:39(float64_t) Load 989
|
||||||
991:39(float64_t) FAdd 988 990
|
991:39(float64_t) FAdd 988 990
|
||||||
992: 428(bool) Load 430(boolv)
|
992: 40(ptr) AccessChain 775(dmat4x2v) 966 954
|
||||||
994: 10(float) Select 992 993 21
|
993:39(float64_t) Load 992
|
||||||
995:39(float64_t) FConvert 994
|
994:39(float64_t) FAdd 991 993
|
||||||
996:39(float64_t) FAdd 991 995
|
995: 428(bool) Load 430(boolv)
|
||||||
997: 429(ptr) AccessChain 439(bvec2v) 33
|
997: 10(float) Select 995 996 21
|
||||||
998: 428(bool) Load 997
|
998:39(float64_t) FConvert 997
|
||||||
999: 10(float) Select 998 993 21
|
999:39(float64_t) FAdd 994 998
|
||||||
1000:39(float64_t) FConvert 999
|
1000: 429(ptr) AccessChain 439(bvec2v) 33
|
||||||
1001:39(float64_t) FAdd 996 1000
|
1001: 428(bool) Load 1000
|
||||||
1002: 429(ptr) AccessChain 448(bvec3v) 33
|
1002: 10(float) Select 1001 996 21
|
||||||
1003: 428(bool) Load 1002
|
1003:39(float64_t) FConvert 1002
|
||||||
1004: 10(float) Select 1003 993 21
|
1004:39(float64_t) FAdd 999 1003
|
||||||
1005:39(float64_t) FConvert 1004
|
1005: 429(ptr) AccessChain 448(bvec3v) 33
|
||||||
1006:39(float64_t) FAdd 1001 1005
|
1006: 428(bool) Load 1005
|
||||||
1007: 429(ptr) AccessChain 457(bvec4v) 33
|
1007: 10(float) Select 1006 996 21
|
||||||
1008: 428(bool) Load 1007
|
1008:39(float64_t) FConvert 1007
|
||||||
1009: 10(float) Select 1008 993 21
|
1009:39(float64_t) FAdd 1004 1008
|
||||||
1010:39(float64_t) FConvert 1009
|
1010: 429(ptr) AccessChain 457(bvec4v) 33
|
||||||
1011:39(float64_t) FAdd 1006 1010
|
1011: 428(bool) Load 1010
|
||||||
1012: 10(float) FConvert 1011
|
1012: 10(float) Select 1011 996 21
|
||||||
1013: 11(fvec4) Load 13(outp)
|
1013:39(float64_t) FConvert 1012
|
||||||
1014: 11(fvec4) VectorTimesScalar 1013 1012
|
1014:39(float64_t) FAdd 1009 1013
|
||||||
Store 13(outp) 1014
|
1015: 10(float) FConvert 1014
|
||||||
|
1016: 11(fvec4) Load 13(outp)
|
||||||
|
1017: 11(fvec4) VectorTimesScalar 1016 1015
|
||||||
|
Store 13(outp) 1017
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
spv.float64.frag
|
spv.float64.frag
|
||||||
// Module Version 10300
|
// Module Version 10300
|
||||||
// Generated by (magic number): 80007
|
// Generated by (magic number): 80007
|
||||||
// Id's are bound by 523
|
// Id's are bound by 521
|
||||||
|
|
||||||
Capability Shader
|
Capability Shader
|
||||||
Capability Float16
|
Capability Float16
|
||||||
@ -13,7 +13,7 @@ spv.float64.frag
|
|||||||
Capability InterpolationFunction
|
Capability InterpolationFunction
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint Fragment 4 "main" 461
|
EntryPoint Fragment 4 "main" 458
|
||||||
ExecutionMode 4 OriginUpperLeft
|
ExecutionMode 4 OriginUpperLeft
|
||||||
Source GLSL 450
|
Source GLSL 450
|
||||||
SourceExtension "GL_KHX_shader_explicit_arithmetic_types"
|
SourceExtension "GL_KHX_shader_explicit_arithmetic_types"
|
||||||
@ -67,63 +67,62 @@ spv.float64.frag
|
|||||||
Name 372 "f64v1"
|
Name 372 "f64v1"
|
||||||
Name 376 "f64v2"
|
Name 376 "f64v2"
|
||||||
Name 382 "f64v3"
|
Name 382 "f64v3"
|
||||||
Name 399 "f"
|
Name 401 "f64m3"
|
||||||
Name 404 "f64m3"
|
Name 402 "f64m1"
|
||||||
Name 405 "f64m1"
|
Name 404 "f64m2"
|
||||||
Name 407 "f64m2"
|
Name 413 "f64v1"
|
||||||
Name 416 "f64v1"
|
Name 415 "f64v2"
|
||||||
Name 418 "f64v2"
|
Name 420 "f64m4"
|
||||||
Name 423 "f64m4"
|
Name 423 "f64"
|
||||||
Name 426 "f64"
|
Name 426 "f64m5"
|
||||||
Name 429 "f64m5"
|
Name 431 "f64m6"
|
||||||
Name 434 "f64m6"
|
Name 432 "f64m7"
|
||||||
Name 435 "f64m7"
|
Name 435 "bv"
|
||||||
Name 438 "bv"
|
Name 436 "f64v1"
|
||||||
Name 439 "f64v1"
|
Name 438 "f64v2"
|
||||||
Name 441 "f64v2"
|
Name 456 "f64v"
|
||||||
Name 459 "f64v"
|
Name 458 "if64v"
|
||||||
Name 461 "if64v"
|
Name 507 "S"
|
||||||
Name 510 "S"
|
MemberName 507(S) 0 "x"
|
||||||
MemberName 510(S) 0 "x"
|
MemberName 507(S) 1 "y"
|
||||||
MemberName 510(S) 1 "y"
|
MemberName 507(S) 2 "z"
|
||||||
MemberName 510(S) 2 "z"
|
Name 509 "B1"
|
||||||
Name 512 "B1"
|
MemberName 509(B1) 0 "a"
|
||||||
MemberName 512(B1) 0 "a"
|
MemberName 509(B1) 1 "b"
|
||||||
MemberName 512(B1) 1 "b"
|
MemberName 509(B1) 2 "c"
|
||||||
MemberName 512(B1) 2 "c"
|
MemberName 509(B1) 3 "d"
|
||||||
MemberName 512(B1) 3 "d"
|
MemberName 509(B1) 4 "e"
|
||||||
MemberName 512(B1) 4 "e"
|
MemberName 509(B1) 5 "f"
|
||||||
MemberName 512(B1) 5 "f"
|
MemberName 509(B1) 6 "g"
|
||||||
MemberName 512(B1) 6 "g"
|
MemberName 509(B1) 7 "h"
|
||||||
MemberName 512(B1) 7 "h"
|
Name 511 ""
|
||||||
Name 514 ""
|
Name 512 "sf16"
|
||||||
Name 515 "sf16"
|
Name 514 "sf"
|
||||||
Name 516 "sf"
|
Name 515 "sd"
|
||||||
Name 517 "sd"
|
Decorate 458(if64v) Flat
|
||||||
Decorate 461(if64v) Flat
|
Decorate 505 ArrayStride 16
|
||||||
Decorate 508 ArrayStride 16
|
Decorate 506 ArrayStride 64
|
||||||
Decorate 509 ArrayStride 64
|
MemberDecorate 507(S) 0 Offset 0
|
||||||
MemberDecorate 510(S) 0 Offset 0
|
MemberDecorate 507(S) 1 Offset 16
|
||||||
MemberDecorate 510(S) 1 Offset 16
|
MemberDecorate 507(S) 2 Offset 32
|
||||||
MemberDecorate 510(S) 2 Offset 32
|
Decorate 508 ArrayStride 64
|
||||||
Decorate 511 ArrayStride 64
|
MemberDecorate 509(B1) 0 Offset 0
|
||||||
MemberDecorate 512(B1) 0 Offset 0
|
MemberDecorate 509(B1) 1 Offset 16
|
||||||
MemberDecorate 512(B1) 1 Offset 16
|
MemberDecorate 509(B1) 2 Offset 32
|
||||||
MemberDecorate 512(B1) 2 Offset 32
|
MemberDecorate 509(B1) 3 Offset 64
|
||||||
MemberDecorate 512(B1) 3 Offset 64
|
MemberDecorate 509(B1) 4 ColMajor
|
||||||
MemberDecorate 512(B1) 4 ColMajor
|
MemberDecorate 509(B1) 4 Offset 96
|
||||||
MemberDecorate 512(B1) 4 Offset 96
|
MemberDecorate 509(B1) 4 MatrixStride 32
|
||||||
MemberDecorate 512(B1) 4 MatrixStride 32
|
MemberDecorate 509(B1) 5 ColMajor
|
||||||
MemberDecorate 512(B1) 5 ColMajor
|
MemberDecorate 509(B1) 5 Offset 160
|
||||||
MemberDecorate 512(B1) 5 Offset 160
|
MemberDecorate 509(B1) 5 MatrixStride 32
|
||||||
MemberDecorate 512(B1) 5 MatrixStride 32
|
MemberDecorate 509(B1) 6 Offset 288
|
||||||
MemberDecorate 512(B1) 6 Offset 288
|
MemberDecorate 509(B1) 7 Offset 352
|
||||||
MemberDecorate 512(B1) 7 Offset 352
|
Decorate 509(B1) Block
|
||||||
Decorate 512(B1) Block
|
Decorate 511 DescriptorSet 0
|
||||||
Decorate 514 DescriptorSet 0
|
Decorate 512(sf16) SpecId 100
|
||||||
Decorate 515(sf16) SpecId 100
|
Decorate 514(sf) SpecId 101
|
||||||
Decorate 516(sf) SpecId 101
|
Decorate 515(sd) SpecId 102
|
||||||
Decorate 517(sd) SpecId 102
|
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
26: TypeFloat 64
|
26: TypeFloat 64
|
||||||
@ -175,38 +174,37 @@ spv.float64.frag
|
|||||||
214: TypeVector 26(float64_t) 4
|
214: TypeVector 26(float64_t) 4
|
||||||
215: TypePointer Function 214(f64vec4)
|
215: TypePointer Function 214(f64vec4)
|
||||||
364(ResType): TypeStruct 149(f64vec3) 183(ivec3)
|
364(ResType): TypeStruct 149(f64vec3) 183(ivec3)
|
||||||
397: TypeFloat 32
|
399: TypeMatrix 149(f64vec3) 2
|
||||||
398: TypePointer Function 397(float)
|
400: TypePointer Function 399
|
||||||
402: TypeMatrix 149(f64vec3) 2
|
418: TypeMatrix 27(f64vec2) 3
|
||||||
403: TypePointer Function 402
|
419: TypePointer Function 418
|
||||||
421: TypeMatrix 27(f64vec2) 3
|
424: TypeMatrix 149(f64vec3) 3
|
||||||
422: TypePointer Function 421
|
425: TypePointer Function 424
|
||||||
427: TypeMatrix 149(f64vec3) 3
|
429: TypeMatrix 214(f64vec4) 4
|
||||||
428: TypePointer Function 427
|
430: TypePointer Function 429
|
||||||
432: TypeMatrix 214(f64vec4) 4
|
457: TypePointer Input 149(f64vec3)
|
||||||
433: TypePointer Function 432
|
458(if64v): 457(ptr) Variable Input
|
||||||
460: TypePointer Input 149(f64vec3)
|
459: TypePointer Input 26(float64_t)
|
||||||
461(if64v): 460(ptr) Variable Input
|
496: 182(int) Constant 1
|
||||||
462: TypePointer Input 26(float64_t)
|
501:26(float64_t) Constant 0 1071644672
|
||||||
499: 182(int) Constant 1
|
502: 27(f64vec2) ConstantComposite 501 501
|
||||||
504:26(float64_t) Constant 0 1071644672
|
504: 31(int) Constant 2
|
||||||
505: 27(f64vec2) ConstantComposite 504 504
|
505: TypeArray 26(float64_t) 504
|
||||||
507: 31(int) Constant 2
|
506: TypeArray 399 504
|
||||||
508: TypeArray 26(float64_t) 507
|
507(S): TypeStruct 26(float64_t) 27(f64vec2) 149(f64vec3)
|
||||||
509: TypeArray 402 507
|
508: TypeArray 507(S) 504
|
||||||
510(S): TypeStruct 26(float64_t) 27(f64vec2) 149(f64vec3)
|
509(B1): TypeStruct 26(float64_t) 27(f64vec2) 149(f64vec3) 505 399 506 507(S) 508
|
||||||
511: TypeArray 510(S) 507
|
510: TypePointer Uniform 509(B1)
|
||||||
512(B1): TypeStruct 26(float64_t) 27(f64vec2) 149(f64vec3) 508 402 509 510(S) 511
|
511: 510(ptr) Variable Uniform
|
||||||
513: TypePointer Uniform 512(B1)
|
512(sf16):162(float16_t) SpecConstant 12288
|
||||||
514: 513(ptr) Variable Uniform
|
513: TypeFloat 32
|
||||||
515(sf16):162(float16_t) SpecConstant 12288
|
514(sf): 513(float) SpecConstant 1048576000
|
||||||
516(sf): 397(float) SpecConstant 1048576000
|
515(sd):26(float64_t) SpecConstant 0 1071644672
|
||||||
517(sd):26(float64_t) SpecConstant 0 1071644672
|
516: 513(float) SpecConstantOp 115 512(sf16)
|
||||||
518: 397(float) SpecConstantOp 115 515(sf16)
|
517: 513(float) SpecConstantOp 115 512(sf16)
|
||||||
519: 397(float) SpecConstantOp 115 515(sf16)
|
518:26(float64_t) SpecConstantOp 115 517
|
||||||
520:26(float64_t) SpecConstantOp 115 519
|
519:162(float16_t) SpecConstantOp 115 514(sf)
|
||||||
521:162(float16_t) SpecConstantOp 115 516(sf)
|
520:162(float16_t) SpecConstantOp 115 515(sd)
|
||||||
522:162(float16_t) SpecConstantOp 115 517(sd)
|
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
Return
|
Return
|
||||||
@ -628,7 +626,6 @@ spv.float64.frag
|
|||||||
372(f64v1): 150(ptr) Variable Function
|
372(f64v1): 150(ptr) Variable Function
|
||||||
376(f64v2): 150(ptr) Variable Function
|
376(f64v2): 150(ptr) Variable Function
|
||||||
382(f64v3): 150(ptr) Variable Function
|
382(f64v3): 150(ptr) Variable Function
|
||||||
399(f): 398(ptr) Variable Function
|
|
||||||
373:149(f64vec3) Load 372(f64v1)
|
373:149(f64vec3) Load 372(f64v1)
|
||||||
374:26(float64_t) ExtInst 1(GLSL.std.450) 66(Length) 373
|
374:26(float64_t) ExtInst 1(GLSL.std.450) 66(Length) 373
|
||||||
Store 371(f64) 374
|
Store 371(f64) 374
|
||||||
@ -658,134 +655,134 @@ spv.float64.frag
|
|||||||
Store 382(f64v3) 394
|
Store 382(f64v3) 394
|
||||||
395:149(f64vec3) Load 372(f64v1)
|
395:149(f64vec3) Load 372(f64v1)
|
||||||
396:149(f64vec3) Load 376(f64v2)
|
396:149(f64vec3) Load 376(f64v2)
|
||||||
400: 397(float) Load 399(f)
|
397:26(float64_t) Load 371(f64)
|
||||||
401:149(f64vec3) ExtInst 1(GLSL.std.450) 72(Refract) 395 396 400
|
398:149(f64vec3) ExtInst 1(GLSL.std.450) 72(Refract) 395 396 397
|
||||||
Store 382(f64v3) 401
|
Store 382(f64v3) 398
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
20(builtinMatrixFuncs(): 2 Function None 3
|
20(builtinMatrixFuncs(): 2 Function None 3
|
||||||
21: Label
|
21: Label
|
||||||
404(f64m3): 403(ptr) Variable Function
|
401(f64m3): 400(ptr) Variable Function
|
||||||
405(f64m1): 403(ptr) Variable Function
|
402(f64m1): 400(ptr) Variable Function
|
||||||
407(f64m2): 403(ptr) Variable Function
|
404(f64m2): 400(ptr) Variable Function
|
||||||
416(f64v1): 150(ptr) Variable Function
|
413(f64v1): 150(ptr) Variable Function
|
||||||
418(f64v2): 28(ptr) Variable Function
|
415(f64v2): 28(ptr) Variable Function
|
||||||
423(f64m4): 422(ptr) Variable Function
|
420(f64m4): 419(ptr) Variable Function
|
||||||
426(f64): 33(ptr) Variable Function
|
423(f64): 33(ptr) Variable Function
|
||||||
429(f64m5): 428(ptr) Variable Function
|
426(f64m5): 425(ptr) Variable Function
|
||||||
434(f64m6): 433(ptr) Variable Function
|
431(f64m6): 430(ptr) Variable Function
|
||||||
435(f64m7): 433(ptr) Variable Function
|
432(f64m7): 430(ptr) Variable Function
|
||||||
406: 402 Load 405(f64m1)
|
403: 399 Load 402(f64m1)
|
||||||
408: 402 Load 407(f64m2)
|
405: 399 Load 404(f64m2)
|
||||||
409:149(f64vec3) CompositeExtract 406 0
|
406:149(f64vec3) CompositeExtract 403 0
|
||||||
410:149(f64vec3) CompositeExtract 408 0
|
407:149(f64vec3) CompositeExtract 405 0
|
||||||
|
408:149(f64vec3) FMul 406 407
|
||||||
|
409:149(f64vec3) CompositeExtract 403 1
|
||||||
|
410:149(f64vec3) CompositeExtract 405 1
|
||||||
411:149(f64vec3) FMul 409 410
|
411:149(f64vec3) FMul 409 410
|
||||||
412:149(f64vec3) CompositeExtract 406 1
|
412: 399 CompositeConstruct 408 411
|
||||||
413:149(f64vec3) CompositeExtract 408 1
|
Store 401(f64m3) 412
|
||||||
414:149(f64vec3) FMul 412 413
|
414:149(f64vec3) Load 413(f64v1)
|
||||||
415: 402 CompositeConstruct 411 414
|
416: 27(f64vec2) Load 415(f64v2)
|
||||||
Store 404(f64m3) 415
|
417: 399 OuterProduct 414 416
|
||||||
417:149(f64vec3) Load 416(f64v1)
|
Store 402(f64m1) 417
|
||||||
419: 27(f64vec2) Load 418(f64v2)
|
421: 399 Load 402(f64m1)
|
||||||
420: 402 OuterProduct 417 419
|
422: 418 Transpose 421
|
||||||
Store 405(f64m1) 420
|
Store 420(f64m4) 422
|
||||||
424: 402 Load 405(f64m1)
|
427: 424 Load 426(f64m5)
|
||||||
425: 421 Transpose 424
|
428:26(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 427
|
||||||
Store 423(f64m4) 425
|
Store 423(f64) 428
|
||||||
430: 427 Load 429(f64m5)
|
433: 429 Load 432(f64m7)
|
||||||
431:26(float64_t) ExtInst 1(GLSL.std.450) 33(Determinant) 430
|
434: 429 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 433
|
||||||
Store 426(f64) 431
|
Store 431(f64m6) 434
|
||||||
436: 432 Load 435(f64m7)
|
|
||||||
437: 432 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 436
|
|
||||||
Store 434(f64m6) 437
|
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
22(builtinVecRelFuncs(): 2 Function None 3
|
22(builtinVecRelFuncs(): 2 Function None 3
|
||||||
23: Label
|
23: Label
|
||||||
438(bv): 153(ptr) Variable Function
|
435(bv): 153(ptr) Variable Function
|
||||||
439(f64v1): 150(ptr) Variable Function
|
436(f64v1): 150(ptr) Variable Function
|
||||||
441(f64v2): 150(ptr) Variable Function
|
438(f64v2): 150(ptr) Variable Function
|
||||||
440:149(f64vec3) Load 439(f64v1)
|
437:149(f64vec3) Load 436(f64v1)
|
||||||
442:149(f64vec3) Load 441(f64v2)
|
439:149(f64vec3) Load 438(f64v2)
|
||||||
443: 152(bvec3) FOrdLessThan 440 442
|
440: 152(bvec3) FOrdLessThan 437 439
|
||||||
Store 438(bv) 443
|
Store 435(bv) 440
|
||||||
444:149(f64vec3) Load 439(f64v1)
|
441:149(f64vec3) Load 436(f64v1)
|
||||||
445:149(f64vec3) Load 441(f64v2)
|
442:149(f64vec3) Load 438(f64v2)
|
||||||
446: 152(bvec3) FOrdLessThanEqual 444 445
|
443: 152(bvec3) FOrdLessThanEqual 441 442
|
||||||
Store 438(bv) 446
|
Store 435(bv) 443
|
||||||
447:149(f64vec3) Load 439(f64v1)
|
444:149(f64vec3) Load 436(f64v1)
|
||||||
448:149(f64vec3) Load 441(f64v2)
|
445:149(f64vec3) Load 438(f64v2)
|
||||||
449: 152(bvec3) FOrdGreaterThan 447 448
|
446: 152(bvec3) FOrdGreaterThan 444 445
|
||||||
Store 438(bv) 449
|
Store 435(bv) 446
|
||||||
450:149(f64vec3) Load 439(f64v1)
|
447:149(f64vec3) Load 436(f64v1)
|
||||||
451:149(f64vec3) Load 441(f64v2)
|
448:149(f64vec3) Load 438(f64v2)
|
||||||
452: 152(bvec3) FOrdGreaterThanEqual 450 451
|
449: 152(bvec3) FOrdGreaterThanEqual 447 448
|
||||||
Store 438(bv) 452
|
Store 435(bv) 449
|
||||||
453:149(f64vec3) Load 439(f64v1)
|
450:149(f64vec3) Load 436(f64v1)
|
||||||
454:149(f64vec3) Load 441(f64v2)
|
451:149(f64vec3) Load 438(f64v2)
|
||||||
455: 152(bvec3) FOrdEqual 453 454
|
452: 152(bvec3) FOrdEqual 450 451
|
||||||
Store 438(bv) 455
|
Store 435(bv) 452
|
||||||
456:149(f64vec3) Load 439(f64v1)
|
453:149(f64vec3) Load 436(f64v1)
|
||||||
457:149(f64vec3) Load 441(f64v2)
|
454:149(f64vec3) Load 438(f64v2)
|
||||||
458: 152(bvec3) FOrdNotEqual 456 457
|
455: 152(bvec3) FOrdNotEqual 453 454
|
||||||
Store 438(bv) 458
|
Store 435(bv) 455
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
24(builtinFragProcFuncs(): 2 Function None 3
|
24(builtinFragProcFuncs(): 2 Function None 3
|
||||||
25: Label
|
25: Label
|
||||||
459(f64v): 150(ptr) Variable Function
|
456(f64v): 150(ptr) Variable Function
|
||||||
463: 462(ptr) AccessChain 461(if64v) 32
|
460: 459(ptr) AccessChain 458(if64v) 32
|
||||||
464:26(float64_t) Load 463
|
461:26(float64_t) Load 460
|
||||||
465:26(float64_t) DPdx 464
|
462:26(float64_t) DPdx 461
|
||||||
466: 33(ptr) AccessChain 459(f64v) 32
|
463: 33(ptr) AccessChain 456(f64v) 32
|
||||||
Store 466 465
|
Store 463 462
|
||||||
467: 462(ptr) AccessChain 461(if64v) 88
|
464: 459(ptr) AccessChain 458(if64v) 88
|
||||||
468:26(float64_t) Load 467
|
465:26(float64_t) Load 464
|
||||||
469:26(float64_t) DPdy 468
|
466:26(float64_t) DPdy 465
|
||||||
470: 33(ptr) AccessChain 459(f64v) 88
|
467: 33(ptr) AccessChain 456(f64v) 88
|
||||||
Store 470 469
|
Store 467 466
|
||||||
471:149(f64vec3) Load 461(if64v)
|
468:149(f64vec3) Load 458(if64v)
|
||||||
472: 27(f64vec2) VectorShuffle 471 471 0 1
|
469: 27(f64vec2) VectorShuffle 468 468 0 1
|
||||||
473: 27(f64vec2) DPdxFine 472
|
470: 27(f64vec2) DPdxFine 469
|
||||||
474:149(f64vec3) Load 459(f64v)
|
471:149(f64vec3) Load 456(f64v)
|
||||||
475:149(f64vec3) VectorShuffle 474 473 3 4 2
|
472:149(f64vec3) VectorShuffle 471 470 3 4 2
|
||||||
Store 459(f64v) 475
|
Store 456(f64v) 472
|
||||||
476:149(f64vec3) Load 461(if64v)
|
473:149(f64vec3) Load 458(if64v)
|
||||||
477: 27(f64vec2) VectorShuffle 476 476 0 1
|
474: 27(f64vec2) VectorShuffle 473 473 0 1
|
||||||
478: 27(f64vec2) DPdyFine 477
|
475: 27(f64vec2) DPdyFine 474
|
||||||
479:149(f64vec3) Load 459(f64v)
|
476:149(f64vec3) Load 456(f64v)
|
||||||
480:149(f64vec3) VectorShuffle 479 478 3 4 2
|
477:149(f64vec3) VectorShuffle 476 475 3 4 2
|
||||||
Store 459(f64v) 480
|
Store 456(f64v) 477
|
||||||
481:149(f64vec3) Load 461(if64v)
|
478:149(f64vec3) Load 458(if64v)
|
||||||
482:149(f64vec3) DPdxCoarse 481
|
479:149(f64vec3) DPdxCoarse 478
|
||||||
Store 459(f64v) 482
|
Store 456(f64v) 479
|
||||||
483:149(f64vec3) Load 461(if64v)
|
480:149(f64vec3) Load 458(if64v)
|
||||||
484:149(f64vec3) DPdxCoarse 483
|
481:149(f64vec3) DPdxCoarse 480
|
||||||
Store 459(f64v) 484
|
Store 456(f64v) 481
|
||||||
485: 462(ptr) AccessChain 461(if64v) 32
|
482: 459(ptr) AccessChain 458(if64v) 32
|
||||||
486:26(float64_t) Load 485
|
483:26(float64_t) Load 482
|
||||||
487:26(float64_t) Fwidth 486
|
484:26(float64_t) Fwidth 483
|
||||||
488: 33(ptr) AccessChain 459(f64v) 32
|
485: 33(ptr) AccessChain 456(f64v) 32
|
||||||
Store 488 487
|
Store 485 484
|
||||||
489:149(f64vec3) Load 461(if64v)
|
486:149(f64vec3) Load 458(if64v)
|
||||||
490: 27(f64vec2) VectorShuffle 489 489 0 1
|
487: 27(f64vec2) VectorShuffle 486 486 0 1
|
||||||
491: 27(f64vec2) FwidthFine 490
|
488: 27(f64vec2) FwidthFine 487
|
||||||
492:149(f64vec3) Load 459(f64v)
|
489:149(f64vec3) Load 456(f64v)
|
||||||
493:149(f64vec3) VectorShuffle 492 491 3 4 2
|
490:149(f64vec3) VectorShuffle 489 488 3 4 2
|
||||||
Store 459(f64v) 493
|
Store 456(f64v) 490
|
||||||
494:149(f64vec3) Load 461(if64v)
|
491:149(f64vec3) Load 458(if64v)
|
||||||
495:149(f64vec3) FwidthCoarse 494
|
492:149(f64vec3) FwidthCoarse 491
|
||||||
Store 459(f64v) 495
|
Store 456(f64v) 492
|
||||||
496: 462(ptr) AccessChain 461(if64v) 32
|
493: 459(ptr) AccessChain 458(if64v) 32
|
||||||
497:26(float64_t) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 496
|
494:26(float64_t) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 493
|
||||||
498: 33(ptr) AccessChain 459(f64v) 32
|
495: 33(ptr) AccessChain 456(f64v) 32
|
||||||
Store 498 497
|
Store 495 494
|
||||||
500:149(f64vec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 461(if64v) 499
|
497:149(f64vec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 458(if64v) 496
|
||||||
501: 27(f64vec2) VectorShuffle 500 500 0 1
|
498: 27(f64vec2) VectorShuffle 497 497 0 1
|
||||||
502:149(f64vec3) Load 459(f64v)
|
499:149(f64vec3) Load 456(f64v)
|
||||||
503:149(f64vec3) VectorShuffle 502 501 3 4 2
|
500:149(f64vec3) VectorShuffle 499 498 3 4 2
|
||||||
Store 459(f64v) 503
|
Store 456(f64v) 500
|
||||||
506:149(f64vec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 461(if64v) 505
|
503:149(f64vec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 458(if64v) 502
|
||||||
Store 459(f64v) 506
|
Store 456(f64v) 503
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
8
Test/spv.400.frag
Executable file → Normal file
8
Test/spv.400.frag
Executable file → Normal file
@ -192,10 +192,10 @@ void doubles()
|
|||||||
dvec3v += reflect(dvec3v, dvec3v);
|
dvec3v += reflect(dvec3v, dvec3v);
|
||||||
dvec4v += reflect(dvec4v, dvec4v);
|
dvec4v += reflect(dvec4v, dvec4v);
|
||||||
|
|
||||||
doublev += refract(doublev, doublev, 1.3);
|
doublev += refract(doublev, doublev, doublev);
|
||||||
dvec2v += refract(dvec2v, dvec2v, 1.3);
|
dvec2v += refract(dvec2v, dvec2v, doublev);
|
||||||
dvec3v += refract(dvec3v, dvec3v, 1.3);
|
dvec3v += refract(dvec3v, dvec3v, doublev);
|
||||||
dvec4v += refract(dvec4v, dvec4v, 1.3);
|
dvec4v += refract(dvec4v, dvec4v, doublev);
|
||||||
|
|
||||||
dmat2 dmat2v = outerProduct(dvec2v, dvec2v);
|
dmat2 dmat2v = outerProduct(dvec2v, dvec2v);
|
||||||
dmat3 dmat3v = outerProduct(dvec3v, dvec3v);
|
dmat3 dmat3v = outerProduct(dvec3v, dvec3v);
|
||||||
|
4
Test/spv.float64.frag
Executable file → Normal file
4
Test/spv.float64.frag
Executable file → Normal file
@ -204,7 +204,7 @@ void builtinGeometryFuncs()
|
|||||||
{
|
{
|
||||||
float64_t f64;
|
float64_t f64;
|
||||||
f64vec3 f64v1, f64v2, f64v3;
|
f64vec3 f64v1, f64v2, f64v3;
|
||||||
float f;
|
|
||||||
f64 = length(f64v1);
|
f64 = length(f64v1);
|
||||||
f64 = distance(f64v1, f64v2);
|
f64 = distance(f64v1, f64v2);
|
||||||
f64 = dot(f64v1, f64v2);
|
f64 = dot(f64v1, f64v2);
|
||||||
@ -212,7 +212,7 @@ void builtinGeometryFuncs()
|
|||||||
f64v2 = normalize(f64v1);
|
f64v2 = normalize(f64v1);
|
||||||
f64v3 = faceforward(f64v1, f64v2, f64v3);
|
f64v3 = faceforward(f64v1, f64v2, f64v3);
|
||||||
f64v3 = reflect(f64v1, f64v2);
|
f64v3 = reflect(f64v1, f64v2);
|
||||||
f64v3 = refract(f64v1, f64v2, f);
|
f64v3 = refract(f64v1, f64v2, f64);
|
||||||
}
|
}
|
||||||
|
|
||||||
void builtinMatrixFuncs()
|
void builtinMatrixFuncs()
|
||||||
|
@ -603,10 +603,10 @@ void TBuiltIns::initialize(int version, EProfile profile, const SpvVersion& spvV
|
|||||||
"dvec3 reflect(dvec3 , dvec3 );"
|
"dvec3 reflect(dvec3 , dvec3 );"
|
||||||
"dvec4 reflect(dvec4 , dvec4 );"
|
"dvec4 reflect(dvec4 , dvec4 );"
|
||||||
|
|
||||||
"double refract(double, double, float);"
|
"double refract(double, double, double);"
|
||||||
"dvec2 refract(dvec2 , dvec2 , float);"
|
"dvec2 refract(dvec2 , dvec2 , double);"
|
||||||
"dvec3 refract(dvec3 , dvec3 , float);"
|
"dvec3 refract(dvec3 , dvec3 , double);"
|
||||||
"dvec4 refract(dvec4 , dvec4 , float);"
|
"dvec4 refract(dvec4 , dvec4 , double);"
|
||||||
|
|
||||||
"dmat2 matrixCompMult(dmat2, dmat2);"
|
"dmat2 matrixCompMult(dmat2, dmat2);"
|
||||||
"dmat3 matrixCompMult(dmat3, dmat3);"
|
"dmat3 matrixCompMult(dmat3, dmat3);"
|
||||||
|
Loading…
Reference in New Issue
Block a user