| spv.nv.hitobject-allops.rmiss |
| // Module Version 10400 |
| // Generated by (magic number): 8000b |
| // Id's are bound by 116 |
| |
| Capability RayTracingKHR |
| Capability ShaderInvocationReorderNV |
| Extension "SPV_KHR_ray_tracing" |
| Extension "SPV_NV_shader_invocation_reorder" |
| 1: ExtInstImport "GLSL.std.450" |
| MemoryModel Logical GLSL450 |
| EntryPoint MissKHR 4 "main" 9 14 22 25 36 42 48 52 53 64 |
| Source GLSL 460 |
| SourceExtension "GL_EXT_ray_tracing" |
| SourceExtension "GL_NV_ray_tracing_motion_blur" |
| SourceExtension "GL_NV_shader_invocation_reorder" |
| Name 4 "main" |
| Name 9 "attr" |
| Name 12 "hBlock" |
| MemberName 12(hBlock) 0 "attrval" |
| Name 14 "" |
| Name 22 "hObj" |
| Name 25 "as" |
| Name 36 "payload" |
| Name 40 "pBlock" |
| MemberName 40(pBlock) 0 "val1" |
| MemberName 40(pBlock) 1 "val2" |
| Name 42 "" |
| Name 48 "hObjHit" |
| Name 52 "hObjNop" |
| Name 53 "hObjMiss" |
| Name 62 "block" |
| MemberName 62(block) 0 "op" |
| Name 64 "" |
| Name 79 "tmin" |
| Name 81 "tmax" |
| Name 84 "orig" |
| Name 86 "dir" |
| Name 88 "oorig" |
| Name 90 "odir" |
| Name 94 "otw" |
| Name 96 "wto" |
| Name 99 "cid" |
| Name 101 "iid" |
| Name 103 "pid" |
| Name 105 "gid" |
| Name 108 "hkind" |
| Name 112 "handle" |
| Name 114 "rid" |
| Decorate 12(hBlock) Block |
| Decorate 25(as) DescriptorSet 0 |
| Decorate 25(as) Binding 0 |
| Decorate 40(pBlock) Block |
| MemberDecorate 62(block) 0 Offset 0 |
| Decorate 62(block) Block |
| Decorate 64 DescriptorSet 0 |
| Decorate 64 Binding 1 |
| 2: TypeVoid |
| 3: TypeFunction 2 |
| 6: TypeFloat 32 |
| 7: TypeVector 6(float) 2 |
| 8: TypePointer HitObjectAttributeNV 7(fvec2) |
| 9(attr): 8(ptr) Variable HitObjectAttributeNV |
| 10: 6(float) Constant 1065353216 |
| 11: 7(fvec2) ConstantComposite 10 10 |
| 12(hBlock): TypeStruct 6(float) |
| 13: TypePointer HitObjectAttributeNV 12(hBlock) |
| 14: 13(ptr) Variable HitObjectAttributeNV |
| 15: TypeInt 32 1 |
| 16: 15(int) Constant 0 |
| 17: 6(float) Constant 1073741824 |
| 18: TypePointer HitObjectAttributeNV 6(float) |
| 20: TypeHitObjectNV |
| 21: TypePointer Private 20 |
| 22(hObj): 21(ptr) Variable Private |
| 23: TypeAccelerationStructureKHR |
| 24: TypePointer UniformConstant 23 |
| 25(as): 24(ptr) Variable UniformConstant |
| 27: TypeInt 32 0 |
| 28: 27(int) Constant 1 |
| 29: TypeVector 6(float) 3 |
| 30: 6(float) Constant 1056964608 |
| 31: 29(fvec3) ConstantComposite 30 30 30 |
| 32: 29(fvec3) ConstantComposite 10 10 10 |
| 33: 15(int) Constant 1 |
| 34: TypeVector 6(float) 4 |
| 35: TypePointer RayPayloadKHR 34(fvec4) |
| 36(payload): 35(ptr) Variable RayPayloadKHR |
| 38: 6(float) Constant 1092616192 |
| 39: 15(int) Constant 2 |
| 40(pBlock): TypeStruct 7(fvec2) 7(fvec2) |
| 41: TypePointer RayPayloadKHR 40(pBlock) |
| 42: 41(ptr) Variable RayPayloadKHR |
| 44: 27(int) Constant 2 |
| 45: 29(fvec3) ConstantComposite 17 17 17 |
| 47: 6(float) Constant 1082130432 |
| 48(hObjHit): 21(ptr) Variable Private |
| 50: 15(int) Constant 3 |
| 52(hObjNop): 21(ptr) Variable Private |
| 53(hObjMiss): 21(ptr) Variable Private |
| 54: 6(float) Constant 1069547520 |
| 55: 29(fvec3) ConstantComposite 54 54 54 |
| 56: 6(float) Constant 1084227584 |
| 57: 6(float) Constant 1090519040 |
| 58: TypeBool |
| 62(block): TypeStruct 6(float) |
| 63: TypePointer StorageBuffer 62(block) |
| 64: 63(ptr) Variable StorageBuffer |
| 65: TypePointer StorageBuffer 6(float) |
| 76: 6(float) Constant 1077936128 |
| 78: TypePointer Function 6(float) |
| 83: TypePointer Function 29(fvec3) |
| 92: TypeMatrix 29(fvec3) 4 |
| 93: TypePointer Function 92 |
| 98: TypePointer Function 15(int) |
| 107: TypePointer Function 27(int) |
| 110: TypeVector 27(int) 2 |
| 111: TypePointer Function 110(ivec2) |
| 4(main): 2 Function None 3 |
| 5: Label |
| 79(tmin): 78(ptr) Variable Function |
| 81(tmax): 78(ptr) Variable Function |
| 84(orig): 83(ptr) Variable Function |
| 86(dir): 83(ptr) Variable Function |
| 88(oorig): 83(ptr) Variable Function |
| 90(odir): 83(ptr) Variable Function |
| 94(otw): 93(ptr) Variable Function |
| 96(wto): 93(ptr) Variable Function |
| 99(cid): 98(ptr) Variable Function |
| 101(iid): 98(ptr) Variable Function |
| 103(pid): 98(ptr) Variable Function |
| 105(gid): 98(ptr) Variable Function |
| 108(hkind): 107(ptr) Variable Function |
| 112(handle): 111(ptr) Variable Function |
| 114(rid): 107(ptr) Variable Function |
| Store 9(attr) 11 |
| 19: 18(ptr) AccessChain 14 16 |
| Store 19 17 |
| 26: 23 Load 25(as) |
| HitObjectTraceRayNV 22(hObj) 26 28 28 28 28 28 31 30 32 10 36(payload) |
| 37: 23 Load 25(as) |
| HitObjectTraceRayMotionNV 22(hObj) 37 28 28 28 28 28 31 30 32 10 38 42 |
| 43: 23 Load 25(as) |
| HitObjectRecordHitNV 22(hObj) 43 33 33 33 44 44 44 32 10 45 17 9(attr) |
| 46: 23 Load 25(as) |
| HitObjectRecordHitMotionNV 22(hObj) 46 33 33 33 44 44 44 32 10 45 17 47 9(attr) |
| 49: 23 Load 25(as) |
| HitObjectRecordHitWithIndexNV 48(hObjHit) 49 33 33 33 44 44 32 10 45 17 14 |
| 51: 23 Load 25(as) |
| HitObjectRecordHitWithIndexMotionNV 48(hObjHit) 51 33 33 33 44 44 32 10 45 17 47 14 |
| HitObjectRecordEmptyNV 52(hObjNop) |
| HitObjectRecordMissNV 53(hObjMiss) 28 31 17 55 56 |
| HitObjectRecordMissMotionNV 53(hObjMiss) 28 31 17 55 56 57 |
| HitObjectExecuteShaderNV 48(hObjHit) 42 |
| 59: 58(bool) HitObjectIsHitNV 22(hObj) |
| SelectionMerge 61 None |
| BranchConditional 59 60 67 |
| 60: Label |
| 66: 65(ptr) AccessChain 64 16 |
| Store 66 10 |
| Branch 61 |
| 67: Label |
| 68: 58(bool) HitObjectIsMissNV 22(hObj) |
| SelectionMerge 70 None |
| BranchConditional 68 69 72 |
| 69: Label |
| 71: 65(ptr) AccessChain 64 16 |
| Store 71 17 |
| Branch 70 |
| 72: Label |
| 73: 58(bool) HitObjectIsEmptyNV 22(hObj) |
| SelectionMerge 75 None |
| BranchConditional 73 74 75 |
| 74: Label |
| 77: 65(ptr) AccessChain 64 16 |
| Store 77 76 |
| Branch 75 |
| 75: Label |
| Branch 70 |
| 70: Label |
| Branch 61 |
| 61: Label |
| 80: 6(float) HitObjectGetRayTMinNV 48(hObjHit) |
| Store 79(tmin) 80 |
| 82: 6(float) HitObjectGetRayTMaxNV 48(hObjHit) |
| Store 81(tmax) 82 |
| 85: 29(fvec3) HitObjectGetWorldRayOriginNV 48(hObjHit) |
| Store 84(orig) 85 |
| 87: 29(fvec3) HitObjectGetWorldRayDirectionNV 48(hObjHit) |
| Store 86(dir) 87 |
| 89: 29(fvec3) HitObjectGetObjectRayOriginNV 48(hObjHit) |
| Store 88(oorig) 89 |
| 91: 29(fvec3) HitObjectGetObjectRayDirectionNV 48(hObjHit) |
| Store 90(odir) 91 |
| 95: 92 HitObjectGetObjectToWorldNV 48(hObjHit) |
| Store 94(otw) 95 |
| 97: 92 HitObjectGetWorldToObjectNV 48(hObjHit) |
| Store 96(wto) 97 |
| 100: 15(int) HitObjectGetInstanceCustomIndexNV 53(hObjMiss) |
| Store 99(cid) 100 |
| 102: 15(int) HitObjectGetInstanceIdNV 52(hObjNop) |
| Store 101(iid) 102 |
| 104: 15(int) HitObjectGetPrimitiveIndexNV 22(hObj) |
| Store 103(pid) 104 |
| 106: 15(int) HitObjectGetGeometryIndexNV 22(hObj) |
| Store 105(gid) 106 |
| 109: 27(int) HitObjectGetFrontFaceNV 22(hObj) |
| Store 108(hkind) 109 |
| HitObjectGetAttributesNV 22(hObj) 9(attr) |
| 113: 110(ivec2) HitObjectGetShaderRecordBufferHandleNV 22(hObj) |
| Store 112(handle) 113 |
| 115: 27(int) HitObjectGetShaderBindingTableRecordIndexNV 22(hObj) |
| Store 114(rid) 115 |
| Return |
| FunctionEnd |