Consider moving MIR's constant propagation to the AIR
- Lingua principale
- Rust
- Stelle
- 96
- Fork
- 39
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
In https://github.com/0xMiden/air-script/pull/439, we've added a Constant Propagation / Folding pass at the end of the MIR. If it were in the AIR instead, it may be easier to implement (less node types and simpler graph structure).
We should check if it is possible to move it, and do so if it is.
A potential reason to keep it where it is is to ensure that computed indices (https://github.com/0xMiden/air-script/pull/444) are folded before the end of MIR. This ensures that we do not have to handle vectors in the AIR (or during lowering of MIR to AIR). But we could also implement index folding separately and move the full constant folding pass.
_Originally posted by @bobbinth in https://github.com/0xMiden/air-script/pull/439#pullrequestreview-3134694529_
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Rivedere la pass di propagazione delle costanti aggiunta nella PR #439 alla fine del MIR. Comprendere le strutture dei grafi MIR e AIR e i tipi di nodo. Verificare se spostare la pass in AIR è fattibile, considerando la gestione degli indici calcolati dalla PR #444 per evitare vettori in AIR. Determinare se il folding degli indici può essere separato o se l'intera pass dovrebbe essere spostata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- rust
- Ambito
- compilers
- Tipo di issue
- Refactoring
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100