1// Copyright 2014-2024 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5include::{generated}/meta/{refprefix}VK_KHR_shader_atomic_int64.adoc[] 6 7=== Other Extension Metadata 8 9*Last Modified Date*:: 10 2018-07-05 11*Interactions and External Dependencies*:: 12 - This extension provides API support for 13 {GLregistry}/ARB/ARB_gpu_shader_int64.txt[`GL_ARB_gpu_shader_int64`] and 14 {GLSLregistry}/ext/GL_EXT_shader_atomic_int64.txt[`GL_EXT_shader_atomic_int64`] 15*Contributors*:: 16 - Aaron Hagan, AMD 17 - Daniel Rakos, AMD 18 - Jeff Bolz, NVIDIA 19 - Neil Henning, Codeplay 20 21=== Description 22 23This extension advertises the SPIR-V *Int64Atomics* capability for Vulkan, 24which allows a shader to contain 64-bit atomic operations on signed and 25unsigned integers. 26The supported operations include OpAtomicMin, OpAtomicMax, OpAtomicAnd, 27OpAtomicOr, OpAtomicXor, OpAtomicAdd, OpAtomicExchange, and 28OpAtomicCompareExchange. 29 30=== Promotion to Vulkan 1.2 31 32All functionality in this extension is included in core Vulkan 1.2, with the 33KHR suffix omitted. 34However, if Vulkan 1.2 is supported and this extension is not, the 35code:shaderBufferInt64Atomics capability is optional. 36The original type, enum and command names are still available as aliases of 37the core functionality. 38 39include::{generated}/interfaces/VK_KHR_shader_atomic_int64.adoc[] 40 41=== New SPIR-V Capabilities 42 43 * <<spirvenv-capabilities-table-Int64Atomics, code:Int64Atomics>> 44 45=== Version History 46 47 * Revision 1, 2018-07-05 (Aaron Hagan) 48 ** Internal revisions 49