/ QIPF_fr32 (não Use flutuante registradores de ponto de 96 de superior)
Informa o compilador para usar somente o ponto flutuante de 32 inferior registra e não o uso de ponto flutuante de 96 superior registra durante a compilação para Itanium.
/QIPF_fr32
Comentários
Observação |
---|
/QIPF_fr32só está disponível no direcionamento de compiladores Itanium. Esta opção de compilador não está disponível nos compiladores direcionamento x64 ou x86. |
Ao escrever um driver de dispositivo é executado no contexto do modo kernel, compilando com /QIPF_fr32 é altamente recomendável. Se um aplicativo alterna do modo de kernel e um dos seus registros de 96 superiores é não intacto, como pode acontecer se uma interrupção ocorreu, o aplicativo falhará quando volta para o modo de usuário. Considere o seguinte cenário:
Um aplicativo é executado no modo de usuário quando uma interrupção ocorre.
Passa o controle para o kernel e os registradores de ponto flutuante de 96 superiores não são salvos.
O kernel chama um driver que foi compilado sem /QIPF_fr32.
O driver destrói um dos registradores de ponto flutuante superiores
Driver retorna ao modo kernel.
Kernel retorna de interrupção e uma de superior registradores de ponto flutuante do aplicativo é destruída.
Além de para a correção que permite que aplicativos que alternar para o modo de usuário do modo kernel, /QIPF_fr32 também melhora o desempenho das alterações de contexto no modo de usuário (registradores de ponto flutuante de 96 superiores não precisa ser salvo ou recarregado).
Para definir esta opção de compilador no ambiente de desenvolvimento Visual Studio
- /QIPF_fr32não está disponível no ambiente de desenvolvimento Visual Studio.
Para definir esta opção de compilador programaticamente
- Consulte AdditionalOptions.