InterlockedCompareExchangeFloatBitwise

Description

Perform an atomic compare and exchange operation on dest.

Signature

void InterlockedCompareExchangeFloatBitwise(
    float dest,
    float compare_value,
    float value);

void InterlockedCompareExchangeFloatBitwise(
    float dest,
    float compare_value,
    float value,
    out float original_value);

Parameters

dest : float

The value to perform the atomic operation on.

compare_value : float

The value to compare dest with.

value : float

The value to store into dest if the compare result is equal.

original_value : float

The value of dest before the operation.

Remarks

When targeting HLSL, a call to this function will translate to a call to InterlockedCompareExchangeFloatBitwise, which means the comparison is done as a bitwise comparison.

On SPIR-V (Vulkan), this function maps to OpAtomicCompareExchange.

On Metal and WGSL, this function is not available.

On CUDA, this function maps to atomicCAS.