Conozco dos "InterlockedExchange"
Una de ellas esta definida en la unidad Windows.Winapi, y es una funcion que depende de una biblioteca externa; si vemos la declaracion:
Código Delphi
[-]
function InterlockedExchange; external kernel32 name 'InterlockedExchange';
Por otro lado, la RTL de Delphi incluye una unidad, la
System.SyncObjs en donde se define una clase
estatica que implementa la misma funcionalidad pero usando codigo Delphi; es decir, sin dependencias. De hecho, alguna de las funciones son implementadas "dentro del compilador", en lo que comunmente se le llama "magia" o en ingles "compiler magic", o el termino mas tecnico
Intrinsic Routines
La clase en cuestion es la
TInerlocked
La misma dispone de la funcion estatica Exchange que me imagino que servira para cualquiera de las plataformas que soporta Delphi
Saludos