[#BloombergLP-bsls-AtomicOperations_DefaultPointer64-061-testAndSwapPtrAcqRel] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsls.adoc[bsls]::xref:BloombergLP/bsls/AtomicOperations_DefaultPointer64-061.adoc[AtomicOperations_DefaultPointer64]::testAndSwapPtrAcqRel :relfileprefix: ../../../ :mrdocs: Conditionally set the value of the specified `atomicPtr` to the specified `swapValue` if and only if the value of `atomicPtr` equals the value of the specified `compareValue`, and return the initial value of `atomicPtr`, providing the acquire/release memory ordering guarantee. The whole operation is performed atomically. == Synopsis Declared in `<bsls_atomicoperations_default.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- static void* testAndSwapPtrAcqRel( AtomicTypes::Pointer* atomicPtr, void* compareValue, void* swapValue); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#