Changeset 3537
- Timestamp:
- Mar 16, 2015, 5:45:44 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LTS/paper.txt
r3413 r3537 1 1) Sull'assembler: 2 - fattorizzare l'abstract interpretation in analisi dei basic block (analisi statica) /analisi dei flussi (dinamica) 3 NOTA: tenere conto che per associare staticamente un costo ai basic blocks un interprete astratto inferisce ed usa il 4 control flow; 5 un compilatore abs-interpretation aware trasferisce informazione quantitativa da sorgente a assmbler, noi non lo 6 facciamo, ma potremmo. Perchè pensiamo di essere meglio? 7 - assumiamo che ogni basic block inizi e termini con una label ed introduciamo una nozione di misurabile 8 (che tenga conto anche dell'input/output ovvero istruzioni che sfuggono all'interpretazione astratta poiche' 9 difficilmente predicibili o che introdurrebbero una approssimazione eccessiva) 10 - teorema statico dinamico 11 2) Fanta-compilatore: 12 assumere che il compilatore mandi i basic block nel sorgente in basic block nell'assembler ed inoltre che sia composizionale 13 in quanto la prima/ultima istruzione che emette l'etichetta si mapperebbe in un blocco la cui prima/ultima istruzione emetta 14 l'etichetta 15 Concludere che misurabile nel source implica misurabile nel target 16 Teorema: l'analisi statica del sorgente ovvero liftare l'analisi statica dell'assembler compilato nel sorgente per determinare 17 il costo delle etichette nel sorgente, ovvero teorema statico dinamico nel sorgente. 18 Capire come usarlo nell'instrumentazione (FRAMA C ?). 19 3) Compilatore più realistico -> assumere che il control flow venga preservato ma non la composizionalità 20 (un basic block nel sorgente viene mappato con le premesse e code silenti nell'assembler. 21 - Fare esempi: chiamate di funzione per passaggio di parametri, switch 22 - nuova definizione di misurabile e nuovo teorema di simulazione con code. 23 4) Chiamate di funzione/annidamento dei basic blocks 24 - monoide non abeliano -> non c'e' niente da fare, le chiamate sono tutte postlabelled 25 - monoide abeliano -> possibilità di effettuare una passata che trasforma le chiamate in chiamate post-labelled -> simulazione + statico dinamico 26 5) Classificazione passate 27 - preservano il control flow e le labels : simulation condition 28 - mancata preservazione del control flow: spiegare la soluzione di Paolo e come non impatti su tutte le altre passate (similarità/differenze con la prima passata post-labelled). 29 6) Formalizzazione. 30 31 32 33 ================================================================================= 1 34 1. problema generale: cost analysis at source level because... 2 35 2. problema specifico: indurre cost model sul sorgente
Note: See TracChangeset
for help on using the changeset viewer.