• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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