Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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
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.
Seleccione la página de propiedades Propiedades de configuración>C/C++>Línea de comandos.
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 AdditionalOptions.
Consulte también
Arm64 Intrínsecos
Opciones del compilador de MSVC
Sintaxis de línea de comandos del compilador de MSVC