[Migrated] Allow keeping linkage annotation
Nessuno ha ancora preso questa issue.
- Lingua principale
- Rust
- Stelle
- 3.4k
- Fork
- 126
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Issue automatically imported from old repo: https://github.com/EmbarkStudios/rust-gpu/issues/1042
Old labels: t: enhancement
Originally creatd by SiebenCorgie on 2023-04-21T16:42:49Z
SpirV allows defining import and export [0] for linking separate Shader modules [1] post compilation.
Apparently SpirV linking is already used within rust-gpu, but not exposed. Therefore we can't use extern "C" as we usually would.
This functionality would be useful, for instance when building shader permutation systems.
The enhancement would basically be allowing extern C, #[no_mangle] etc. to map to (possibly named) import/export decorated values whenever the Linkage capability on spirv-builder is enabled.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia dalla capability Linkage di spirv-builder ed esamina la specifica di linkage SPIR-V collegata. Traccia il modo in cui rust-gpu gestisce attualmente i valori extern "C" e #[no_mangle", quindi determina la mappatura necessaria alle decorazioni di import/export denominate. Il lavoro è completato quando le annotazioni di linkage vengono preservate con Linkage abilitato e moduli shader separati possono utilizzarle.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- rust
- Ambito
- compilers
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 30/100