/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 la proprietà AdditionalOptions.