1spv.nontemporalbuffer.frag 2// Module Version 10300 3// Generated by (magic number): 8000b 4// Id's are bound by 48 5 6 Capability Shader 7 Capability VulkanMemoryModelKHR 8 Extension "SPV_KHR_vulkan_memory_model" 9 1: ExtInstImport "GLSL.std.450" 10 MemoryModel Logical VulkanKHR 11 EntryPoint Fragment 4 "main" 47 12 ExecutionMode 4 OriginUpperLeft 13 Source GLSL 460 14 SourceExtension "GL_EXT_nontemporal_keyword" 15 Name 4 "main" 16 Name 7 "NONTEMPORAL_BUFFER" 17 MemberName 7(NONTEMPORAL_BUFFER) 0 "b_i" 18 MemberName 7(NONTEMPORAL_BUFFER) 1 "b_o" 19 Name 9 "" 20 Name 16 "BUFFER_NONTEMPORAL" 21 MemberName 16(BUFFER_NONTEMPORAL) 0 "bntemp_i" 22 MemberName 16(BUFFER_NONTEMPORAL) 1 "bntemp_o" 23 Name 18 "" 24 Name 22 "NONTEMPORAL_ATOMIC" 25 MemberName 22(NONTEMPORAL_ATOMIC) 0 "bn_atom" 26 Name 24 "" 27 Name 30 "ATOMIC_NONTEMPORAL" 28 MemberName 30(ATOMIC_NONTEMPORAL) 0 "b_natom" 29 MemberName 30(ATOMIC_NONTEMPORAL) 1 "b_atom" 30 Name 32 "" 31 Name 38 "NONTEMPORAL_UNIFORMS" 32 MemberName 38(NONTEMPORAL_UNIFORMS) 0 "u_uv" 33 Name 40 "" 34 Name 44 "u_image" 35 Name 47 "out_color" 36 Decorate 7(NONTEMPORAL_BUFFER) Block 37 MemberDecorate 7(NONTEMPORAL_BUFFER) 0 Offset 0 38 MemberDecorate 7(NONTEMPORAL_BUFFER) 1 Offset 4 39 Decorate 9 Binding 0 40 Decorate 9 DescriptorSet 0 41 Decorate 16(BUFFER_NONTEMPORAL) Block 42 MemberDecorate 16(BUFFER_NONTEMPORAL) 0 Offset 0 43 MemberDecorate 16(BUFFER_NONTEMPORAL) 1 Offset 4 44 Decorate 18 Binding 1 45 Decorate 18 DescriptorSet 0 46 Decorate 22(NONTEMPORAL_ATOMIC) Block 47 MemberDecorate 22(NONTEMPORAL_ATOMIC) 0 Offset 0 48 Decorate 24 Binding 3 49 Decorate 24 DescriptorSet 0 50 Decorate 30(ATOMIC_NONTEMPORAL) Block 51 MemberDecorate 30(ATOMIC_NONTEMPORAL) 0 Offset 0 52 MemberDecorate 30(ATOMIC_NONTEMPORAL) 1 Offset 4 53 Decorate 32 Binding 4 54 Decorate 32 DescriptorSet 0 55 Decorate 38(NONTEMPORAL_UNIFORMS) Block 56 MemberDecorate 38(NONTEMPORAL_UNIFORMS) 0 Offset 0 57 Decorate 40 Binding 2 58 Decorate 40 DescriptorSet 0 59 Decorate 44(u_image) NonWritable 60 Decorate 44(u_image) Binding 5 61 Decorate 44(u_image) DescriptorSet 0 62 Decorate 47(out_color) Location 0 63 2: TypeVoid 64 3: TypeFunction 2 65 6: TypeInt 32 1 667(NONTEMPORAL_BUFFER): TypeStruct 6(int) 6(int) 67 8: TypePointer StorageBuffer 7(NONTEMPORAL_BUFFER) 68 9: 8(ptr) Variable StorageBuffer 69 10: 6(int) Constant 1 70 11: 6(int) Constant 0 71 12: TypePointer StorageBuffer 6(int) 7216(BUFFER_NONTEMPORAL): TypeStruct 6(int) 6(int) 73 17: TypePointer StorageBuffer 16(BUFFER_NONTEMPORAL) 74 18: 17(ptr) Variable StorageBuffer 7522(NONTEMPORAL_ATOMIC): TypeStruct 6(int) 76 23: TypePointer StorageBuffer 22(NONTEMPORAL_ATOMIC) 77 24: 23(ptr) Variable StorageBuffer 78 26: TypeInt 32 0 79 27: 26(int) Constant 5 80 28: 26(int) Constant 0 8130(ATOMIC_NONTEMPORAL): TypeStruct 6(int) 6(int) 82 31: TypePointer StorageBuffer 30(ATOMIC_NONTEMPORAL) 83 32: 31(ptr) Variable StorageBuffer 84 37: TypeVector 6(int) 2 8538(NONTEMPORAL_UNIFORMS): TypeStruct 37(ivec2) 86 39: TypePointer Uniform 38(NONTEMPORAL_UNIFORMS) 87 40: 39(ptr) Variable Uniform 88 41: TypeFloat 32 89 42: TypeImage 41(float) 2D nonsampled format:Rgba8 90 43: TypePointer UniformConstant 42 91 44(u_image): 43(ptr) Variable UniformConstant 92 45: TypeVector 41(float) 4 93 46: TypePointer Output 45(fvec4) 94 47(out_color): 46(ptr) Variable Output 95 4(main): 2 Function None 3 96 5: Label 97 13: 12(ptr) AccessChain 9 11 98 14: 6(int) Load 13 Nontemporal 99 15: 12(ptr) AccessChain 9 10 100 Store 15 14 Nontemporal 101 19: 12(ptr) AccessChain 18 10 102 20: 6(int) Load 19 Nontemporal 103 21: 12(ptr) AccessChain 18 11 104 Store 21 20 Nontemporal 105 25: 12(ptr) AccessChain 24 11 106 29: 6(int) AtomicIAdd 25 27 28 10 107 33: 12(ptr) AccessChain 32 11 108 34: 6(int) AtomicIAdd 33 27 28 10 109 35: 12(ptr) AccessChain 32 10 110 36: 6(int) AtomicIAdd 35 27 28 10 111 Return 112 FunctionEnd 113