• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1spv.ext.ClosestHitShader_Subgroup.rchit
2// Module Version 10400
3// Generated by (magic number): 8000a
4// Id's are bound by 67
5
6                              Capability Int64
7                              Capability GroupNonUniform
8                              Capability GroupNonUniformBallot
9                              Capability SubgroupBallotKHR
10                              Capability RayTracingKHR
11                              Capability VulkanMemoryModelKHR
12                              Capability ShaderSMBuiltinsNV
13                              Extension  "SPV_KHR_ray_tracing"
14                              Extension  "SPV_KHR_shader_ballot"
15                              Extension  "SPV_KHR_vulkan_memory_model"
16                              Extension  "SPV_NV_shader_sm_builtins"
17               1:             ExtInstImport  "GLSL.std.450"
18                              MemoryModel Logical VulkanKHR
19                              EntryPoint ClosestHitKHR 4  "main" 8 26 28 34 43 48 53 61
20                              Source GLSL 460
21                              SourceExtension  "GL_ARB_shader_ballot"
22                              SourceExtension  "GL_EXT_ray_tracing"
23                              SourceExtension  "GL_KHR_shader_subgroup_ballot"
24                              SourceExtension  "GL_KHR_shader_subgroup_basic"
25                              SourceExtension  "GL_NV_shader_sm_builtins"
26                              Name 4  "main"
27                              Name 8  "accEXT"
28                              Name 26  "incomingPayload"
29                              Name 28  "gl_SubgroupInvocationID"
30                              Name 34  "gl_SubGroupGeMaskARB"
31                              Name 43  "gl_SubgroupGtMask"
32                              Name 48  "gl_SubgroupLeMask"
33                              Name 53  "gl_SubGroupLtMaskARB"
34                              Name 61  "gl_SMIDNV"
35                              Decorate 8(accEXT) DescriptorSet 0
36                              Decorate 8(accEXT) Binding 0
37                              Decorate 26(incomingPayload) Location 1
38                              Decorate 28(gl_SubgroupInvocationID) RelaxedPrecision
39                              Decorate 28(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
40                              Decorate 29 RelaxedPrecision
41                              Decorate 34(gl_SubGroupGeMaskARB) BuiltIn SubgroupGeMaskKHR
42                              Decorate 43(gl_SubgroupGtMask) BuiltIn SubgroupGtMaskKHR
43                              Decorate 48(gl_SubgroupLeMask) BuiltIn SubgroupLeMaskKHR
44                              Decorate 53(gl_SubGroupLtMaskARB) BuiltIn SubgroupLtMaskKHR
45                              Decorate 61(gl_SMIDNV) BuiltIn SMIDNV
46               2:             TypeVoid
47               3:             TypeFunction 2
48               6:             TypeAccelerationStructureKHR
49               7:             TypePointer UniformConstant 6
50       8(accEXT):      7(ptr) Variable UniformConstant
51              10:             TypeInt 32 0
52              11:     10(int) Constant 0
53              12:     10(int) Constant 1
54              13:     10(int) Constant 2
55              14:     10(int) Constant 3
56              15:             TypeFloat 32
57              16:             TypeVector 15(float) 3
58              17:   15(float) Constant 1056964608
59              18:   16(fvec3) ConstantComposite 17 17 17
60              19:   15(float) Constant 1065353216
61              20:   16(fvec3) ConstantComposite 19 19 19
62              21:   15(float) Constant 1061158912
63              22:             TypeInt 32 1
64              23:     22(int) Constant 1
65              24:             TypeVector 15(float) 4
66              25:             TypePointer IncomingRayPayloadKHR 24(fvec4)
6726(incomingPayload):     25(ptr) Variable IncomingRayPayloadKHR
68              27:             TypePointer Input 10(int)
6928(gl_SubgroupInvocationID):     27(ptr) Variable Input
70              31:             TypeVector 10(int) 4
71              32:             TypeInt 64 0
72              33:             TypePointer Input 31(ivec4)
7334(gl_SubGroupGeMaskARB):     33(ptr) Variable Input
74              38:             TypeVector 10(int) 2
7543(gl_SubgroupGtMask):     33(ptr) Variable Input
7648(gl_SubgroupLeMask):     33(ptr) Variable Input
7753(gl_SubGroupLtMaskARB):     33(ptr) Variable Input
78   61(gl_SMIDNV):     27(ptr) Variable Input
79              65:             TypePointer IncomingRayPayloadKHR 15(float)
80         4(main):           2 Function None 3
81               5:             Label
82               9:           6 Load 8(accEXT)
83                              TraceRayKHR 9 11 12 13 14 11 18 17 20 21 26(incomingPayload)
84              29:     10(int) Load 28(gl_SubgroupInvocationID) Volatile
85              30:   15(float) ConvertUToF 29
86              35:   31(ivec4) Load 34(gl_SubGroupGeMaskARB)
87              36:     10(int) CompositeExtract 35 0
88              37:     10(int) CompositeExtract 35 1
89              39:   38(ivec2) CompositeConstruct 36 37
90              40: 32(int64_t) Bitcast 39
91              41:   15(float) ConvertUToF 40
92              42:   15(float) FAdd 30 41
93              44:   31(ivec4) Load 43(gl_SubgroupGtMask) Volatile
94              45:   24(fvec4) ConvertUToF 44
95              46:   15(float) CompositeExtract 45 0
96              47:   15(float) FAdd 42 46
97              49:   31(ivec4) Load 48(gl_SubgroupLeMask) Volatile
98              50:   24(fvec4) ConvertUToF 49
99              51:   15(float) CompositeExtract 50 0
100              52:   15(float) FAdd 47 51
101              54:   31(ivec4) Load 53(gl_SubGroupLtMaskARB)
102              55:     10(int) CompositeExtract 54 0
103              56:     10(int) CompositeExtract 54 1
104              57:   38(ivec2) CompositeConstruct 55 56
105              58: 32(int64_t) Bitcast 57
106              59:   15(float) ConvertUToF 58
107              60:   15(float) FAdd 52 59
108              62:     10(int) Load 61(gl_SMIDNV) Volatile
109              63:   15(float) ConvertUToF 62
110              64:   15(float) FAdd 60 63
111              66:     65(ptr) AccessChain 26(incomingPayload) 11
112                              Store 66 64
113                              Return
114                              FunctionEnd
115