Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Seleciona dinamicamente entre carga Armv8.0, armazene instruções exclusivas ou instruções atômicas Armv8.1 Large System Extension (LSE) com base na capacidade da CPU em tempo de execução.
Sintaxe
/forceInterlockedFunctions[-]
Observações
Quando possível, esse sinalizador evita o uso de instruções exclusivas de carregamento e armazenamento do Armv8.0, pois essas instruções podem resultar em livelocks. Esse sinalizador força os seguintes intrínsecos interligados a serem gerados como funções fora de linha:
| Operação | oito | 16 | 32 | 64 | 128 | Ponteiro |
|---|---|---|---|---|---|---|
| Adicionar | Nenhum | Nenhum | Completo | Completo | Nenhum | Nenhum |
| e | Completo | Completo | Completo | Completo | Nenhum | Nenhum |
| CompareTroca | Completo | Completo | Completo | Completo | Completo | Completo |
| Decremento | Nenhum | Completo | Completo | Completo | Nenhum | Nenhum |
| Troca | Completo | Completo | Completo | Completo | Nenhum | Completo |
| TrocaAdicionar | Completo | Completo | Completo | Completo | Nenhum | Nenhum |
| Incremento | Nenhum | Completo | Completo | Completo | Nenhum | Nenhum |
| Ou | Completo | Completo | Completo | Completo | Nenhum | Nenhum |
| Xor | Completo | Completo | Completo | Completo | Nenhum | Nenhum |
| BitTestAndReset | Nenhum | Nenhum | Completo | Completo | Nenhum | Nenhum |
| bittestandset | Nenhum | Nenhum | Completo | Completo | Nenhum | Nenhum |
Chave:
Completo: suporta simples,
_acq,_rel, e_nfformulários.Nenhum: sem suporte
Para obter mais informações sobre intrínsecos intertravados, consulte a seção "Intrínsecos intertravados" em Intrínsecos do Arm64.
Para definir a opção /forceInterlockedFunctions do compilador no Visual Studio
Abra a caixa de diálogo Páginas de Propriedades do projeto. Para obter mais informações, confira Definir as propriedades de build e do compilador do C++ no Visual Studio.
Selecione a página de propriedades Propriedades de Configuração>C/C++>Linha de Comando.
Na caixa Opções adicionais , adicione
/forceInterlockedFunctionspara habilitar. Escolha OK para salvar suas alterações.
Para definir essa opção do compilador via programação
- Consulte AdditionalOptions.
Consulte também
Intrínsecos do Arm64
Opções do compilador MSVC
Sintaxe da linha de comando do compilador MSVC