mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-08 11:30:06 +00:00
33c7e30860
It is invalid if the same decoration is applied to the same id multiple times. This adds a check before adding a decoration that the decoration is not already in the list. If it is, then the duplicate is not added. Fixes #3627
127 lines
6.8 KiB
Plaintext
127 lines
6.8 KiB
Plaintext
spv.nv.dmm-allops.rchit
|
|
// Module Version 10400
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 77
|
|
|
|
Capability RayTracingKHR
|
|
Capability CapabilityRayTracingDisplacementMicromapNV
|
|
Extension "SPV_KHR_ray_tracing"
|
|
Extension "SPV_NV_displacement_micromap"
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint ClosestHitKHR 4 "main" 12 18 40 59 64 67 76
|
|
Source GLSL 460
|
|
SourceExtension "GL_EXT_ray_query"
|
|
SourceExtension "GL_EXT_ray_tracing"
|
|
SourceExtension "GL_NV_displacement_micromap"
|
|
Name 4 "main"
|
|
Name 10 "block"
|
|
MemberName 10(block) 0 "op_pos"
|
|
MemberName 10(block) 1 "op_bary"
|
|
MemberName 10(block) 2 "op_hit"
|
|
Name 12 ""
|
|
Name 18 "gl_HitMicroTriangleVertexPositionsNV"
|
|
Name 40 "gl_HitMicroTriangleVertexBarycentricsNV"
|
|
Name 59 "gl_HitKindEXT"
|
|
Name 64 "gl_HitKindFrontFacingMicroTriangleNV"
|
|
Name 67 "gl_HitKindBackFacingMicroTriangleNV"
|
|
Name 76 "as"
|
|
Decorate 10(block) Block
|
|
MemberDecorate 10(block) 0 Offset 0
|
|
MemberDecorate 10(block) 1 Offset 16
|
|
MemberDecorate 10(block) 2 Offset 24
|
|
Decorate 12 Binding 0
|
|
Decorate 12 DescriptorSet 0
|
|
Decorate 18(gl_HitMicroTriangleVertexPositionsNV) BuiltIn HitMicroTriangleVertexPositionsNV
|
|
Decorate 40(gl_HitMicroTriangleVertexBarycentricsNV) BuiltIn HitMicroTriangleVertexBarycentricsNV
|
|
Decorate 59(gl_HitKindEXT) BuiltIn HitKindKHR
|
|
Decorate 64(gl_HitKindFrontFacingMicroTriangleNV) BuiltIn HitKindFrontFacingMicroTriangleNV
|
|
Decorate 67(gl_HitKindBackFacingMicroTriangleNV) BuiltIn HitKindBackFacingMicroTriangleNV
|
|
Decorate 76(as) Binding 1
|
|
Decorate 76(as) DescriptorSet 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 32
|
|
7: TypeVector 6(float) 3
|
|
8: TypeVector 6(float) 2
|
|
9: TypeInt 32 0
|
|
10(block): TypeStruct 7(fvec3) 8(fvec2) 9(int)
|
|
11: TypePointer StorageBuffer 10(block)
|
|
12: 11(ptr) Variable StorageBuffer
|
|
13: TypeInt 32 1
|
|
14: 13(int) Constant 0
|
|
15: 9(int) Constant 3
|
|
16: TypeArray 7(fvec3) 15
|
|
17: TypePointer Input 16
|
|
18(gl_HitMicroTriangleVertexPositionsNV): 17(ptr) Variable Input
|
|
19: TypePointer Input 7(fvec3)
|
|
22: TypePointer StorageBuffer 7(fvec3)
|
|
24: 13(int) Constant 1
|
|
31: 13(int) Constant 2
|
|
38: TypeArray 8(fvec2) 15
|
|
39: TypePointer Input 38
|
|
40(gl_HitMicroTriangleVertexBarycentricsNV): 39(ptr) Variable Input
|
|
41: TypePointer Input 8(fvec2)
|
|
44: TypePointer StorageBuffer 8(fvec2)
|
|
58: TypePointer Input 9(int)
|
|
59(gl_HitKindEXT): 58(ptr) Variable Input
|
|
61: TypePointer StorageBuffer 9(int)
|
|
63: 9(int) Constant 255
|
|
64(gl_HitKindFrontFacingMicroTriangleNV): 58(ptr) Variable Input
|
|
67(gl_HitKindBackFacingMicroTriangleNV): 58(ptr) Variable Input
|
|
74: TypeAccelerationStructureKHR
|
|
75: TypePointer UniformConstant 74
|
|
76(as): 75(ptr) Variable UniformConstant
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
20: 19(ptr) AccessChain 18(gl_HitMicroTriangleVertexPositionsNV) 14
|
|
21: 7(fvec3) Load 20
|
|
23: 22(ptr) AccessChain 12 14
|
|
Store 23 21
|
|
25: 19(ptr) AccessChain 18(gl_HitMicroTriangleVertexPositionsNV) 24
|
|
26: 7(fvec3) Load 25
|
|
27: 22(ptr) AccessChain 12 14
|
|
28: 7(fvec3) Load 27
|
|
29: 7(fvec3) FAdd 28 26
|
|
30: 22(ptr) AccessChain 12 14
|
|
Store 30 29
|
|
32: 19(ptr) AccessChain 18(gl_HitMicroTriangleVertexPositionsNV) 31
|
|
33: 7(fvec3) Load 32
|
|
34: 22(ptr) AccessChain 12 14
|
|
35: 7(fvec3) Load 34
|
|
36: 7(fvec3) FAdd 35 33
|
|
37: 22(ptr) AccessChain 12 14
|
|
Store 37 36
|
|
42: 41(ptr) AccessChain 40(gl_HitMicroTriangleVertexBarycentricsNV) 14
|
|
43: 8(fvec2) Load 42
|
|
45: 44(ptr) AccessChain 12 24
|
|
Store 45 43
|
|
46: 41(ptr) AccessChain 40(gl_HitMicroTriangleVertexBarycentricsNV) 24
|
|
47: 8(fvec2) Load 46
|
|
48: 44(ptr) AccessChain 12 24
|
|
49: 8(fvec2) Load 48
|
|
50: 8(fvec2) FAdd 49 47
|
|
51: 44(ptr) AccessChain 12 24
|
|
Store 51 50
|
|
52: 41(ptr) AccessChain 40(gl_HitMicroTriangleVertexBarycentricsNV) 31
|
|
53: 8(fvec2) Load 52
|
|
54: 44(ptr) AccessChain 12 24
|
|
55: 8(fvec2) Load 54
|
|
56: 8(fvec2) FAdd 55 53
|
|
57: 44(ptr) AccessChain 12 24
|
|
Store 57 56
|
|
60: 9(int) Load 59(gl_HitKindEXT)
|
|
62: 61(ptr) AccessChain 12 31
|
|
Store 62 60
|
|
65: 9(int) Load 64(gl_HitKindFrontFacingMicroTriangleNV)
|
|
66: 9(int) BitwiseOr 63 65
|
|
68: 9(int) Load 67(gl_HitKindBackFacingMicroTriangleNV)
|
|
69: 9(int) BitwiseOr 66 68
|
|
70: 61(ptr) AccessChain 12 31
|
|
71: 9(int) Load 70
|
|
72: 9(int) BitwiseAnd 71 69
|
|
73: 61(ptr) AccessChain 12 31
|
|
Store 73 72
|
|
Return
|
|
FunctionEnd
|