Compartir a través de


/forceInterlockedFunctions

Selecciona dinámicamente entre la carga de Armv8.0, las instrucciones exclusivas de almacenamiento o las instrucciones atómicas de Armv8.1 Large System Extension (LSE) en función de la capacidad de la CPU en tiempo de ejecución.

Sintaxis

/forceInterlockedFunctions[-]

Observaciones

Cuando sea posible, esta marca evita el uso de instrucciones exclusivas de carga y almacenamiento de Armv8.0, ya que estas instrucciones pueden dar lugar a bloqueos en vivo. Este indicador obliga a generar los siguientes intrínsecos entrelazados como funciones fuera de línea:

Operación 8 16 32 64 128 Puntero
Agregar Ninguno Ninguno Completo Completo Ninguno Ninguno
y Completo Completo Completo Completo Ninguno Ninguno
CompareExchange Completo Completo Completo Completo Completo Completo
Decremento Ninguno Completo Completo Completo Ninguno Ninguno
Intercambio Completo Completo Completo Completo Ninguno Completo
IntercambioAñadir Completo Completo Completo Completo Ninguno Ninguno
Incremento Ninguno Completo Completo Completo Ninguno Ninguno
O bien, Completo Completo Completo Completo Ninguno Ninguno
Xor Completo Completo Completo Completo Ninguno Ninguno
bittestandreset Ninguno Ninguno Completo Completo Ninguno Ninguno
bittestandset Ninguno Ninguno Completo Completo Ninguno Ninguno

Clave:

  • Completo: admite formas simples, _acq, _rel, y _nf simples.

  • Ninguno: no compatible

Para obtener más información sobre los intrínsecos entrelazados, consulte la sección "Intrínsecos entrelazados" en Intrínsecos de Arm64.

Para establecer la opción del compilador /forceInterlockedFunctions en Visual Studio

  1. Abra el cuadro de diálogo Páginas de propiedades del proyecto. Para más información, vea Establecimiento del compilador de C++ y de propiedades de compilación en Visual Studio.

  2. Seleccione la página de propiedades Propiedades de configuración>C/C++>Línea de comandos.

  3. En el cuadro Opciones adicionales , agregue /forceInterlockedFunctions para habilitar. Elija Aceptar para guardar los cambios.

Para establecer esta opción del compilador mediante programación

Consulte también

Arm64 Intrínsecos
Opciones del compilador de MSVC
Sintaxis de línea de comandos del compilador de MSVC