/QIPF_fr32 (Non utilizzare i 96 registri in virgola mobile superiori)

Indica al compilatore che durante la compilazione per la piattaforma Itanium devono essere utilizzati solo i 32 registri a virgola mobile inferiori e non i 96 registri a virgola mobile superiori.

/QIPF_fr32

Note

Nota

L'opzione /QIPF_fr32 è disponibile solo nei compilatori destinati alla piattaforma Itanium. Non è invece disponibile nei compilatori destinati alla piattaforma x64 o x86.

Quando si scrive un driver di periferica eseguito in contesto modalità kernel, si consiglia di eseguire la compilazione con /QIPF_fr32. Se l'applicazione esce dalla modalità kernel e uno dei 96 registri superiori non è intatto, ad esempio perché si è verificata un'interruzione, l'applicazione non potrà tornare in modalità utente. Si consideri lo scenario seguente:

  • Un'applicazione viene eseguita in modalità utente al verificarsi di un'interruzione.

  • Il controllo passa al kernel e i 96 registri a virgola mobile superiori non vengono salvati.

  • Il kernel chiama un driver compilato senza /QIPF_fr32.

  • Il driver elimina uno dei registri a virgola mobile superiore.

  • Il driver torna in modalità kernel.

  • Il kernel viene ripristinato dall'interruzione e uno dei registri a virgola mobile superiori dell'applicazione viene eliminato.

/QIPF_fr32 non solo consente alle applicazioni di passare correttamente dalla modalità kernel alla modalità utente, ma migliora anche le prestazioni delle modifiche di contesto in modalità utente. I 96 registri a virgola mobile superiori non devono infatti essere salvati né ricaricati.

Per impostare l'opzione del compilatore nell'ambiente di sviluppo di Visual Studio

  • /QIPF_fr32 non è disponibile nell'ambiente di sviluppo di Visual Studio.

Per impostare l'opzione del compilatore a livello di codice

Vedere anche

Riferimenti

Opzioni /Q (Operazioni di basso livello)

Opzioni del compilatore

Impostazione delle opzioni del compilatore