call (sm4 - asm)
Chiama una subroutine contrassegnata da dove viene visualizzata l'etichetta l# nel programma.
call l # |
---|
Elemento | Descrizione |
---|---|
L # |
[in] Etichetta della subroutine. |
Commenti
Quando viene rilevato un tentativo , restituire l'esecuzione all'istruzione dopo questa chiamata.
Il formato del token contiene l'offset dell'etichetta corrispondente nello shader per praticità.
Nell'esempio seguente viene illustrata l'istruzione di chiamata.
...
call l3
...
ret
label l3
...
retc_nz r0.x
...
ret
Restrizioni
- Le subroutine possono annidare 32 profondità.
- Lo stack di indirizzi restituito viene gestito in modo trasparente dall'implementazione.
- Se sono già presenti 32 voci nello stack di indirizzi restituiti e viene eseguita una chiamata, la chiamata viene ignorata.
- Non esiste uno stack di parametri automatico. L'applicazione può usare una matrice di registri temporanei indicizzabile (x#[]) per implementare manualmente uno stack. Tuttavia, gli indirizzi restituiti della chiamata subroutine non sono visibili e sono ortogonali per qualsiasi gestione manuale dello stack eseguita dall'applicazione.
- L'indicizzazione del parametro l# non è consentita.
- La ricorsione non è consentita.
Questa istruzione si applica alle fasi dello shader seguenti:
Vertex shader | Geometry shader | Pixel shader |
---|---|---|
x | x | x |
Modello minimo shader
Questa funzione è supportata nei modelli di shader seguenti.
Modello di shader | Supportato |
---|---|
Modello shader 5 | sì |
Modello shader 4.1 | sì |
Modello shader 4 | sì |
Modello shader 3 (DirectX HLSL) | no |
Modello shader 2 (DirectX HLSL) | no |
Modello shader 1 (DirectX HLSL) | no |
Argomenti correlati
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per