RWByteAddressBuffer.InterlockedExchangeFloat

Description

Perform a floating-point atomic bitwise exchange operation at byteAddress.

Signature

void RWByteAddressBuffer.InterlockedExchangeFloat(
    uint byteAddress,
    float value,
    out float outOriginalValue);

Parameters

byteAddress : uint

The address at which to perform the atomic exchange operation.

value : float

The value to store at byteAddress.

outOriginalValue : float

[out] The original value at byteAddress before the exchange operation.

Remarks

For SPIR-V, this function maps to OpAtomicExchange. For HLSL, this function translates to InterlockedExchangeFloat and requires shader model 6.6. For CUDA, this function maps to atomicExch.

Availability and Requirements

Defined for the following targets:

hlsl

Available in all stages.

glsl

Available in all stages.

cuda

Available in all stages.

spirv

Available in all stages.

Requires capability: spvInt64Atomics.