Additions:
Se si risponde sì, motivare la risposta riportando frammenti di codice IA32 che illustrano da dove si evince che l'ottimizzazione è stata applicata.
Deletions:
Se si risponde sì, motivare la risposta.
Additions:
e lo si compili in ##gcc## con livello di ottimizzazione ##-O1##, creando il file assembly ##es4.s##. Ispezionando ##es4.s##, quali delle seguenti ottimizzazioni sono state effettuate dal compilatore?
~1. Loop-invariant code motion
~2. Function inlining
~3. Constant propagation
~4. Constant folding
Se si risponde sì, motivare la risposta.
Deletions:
e lo si compili in ##gcc## con livello di ottimizzazione ##-O1##, creando il file assembly ##es4.s##. Ispezionando ##es4.s##, quali ottimizzazioni sono state effettuate dal compilatore? Completa la tabella:
""
Ottimizzazione |
Applicato in es4.s? |
Se sì, motivare la risposta |
Loop-invariant code motion |
|
|
Function inlining |
|
|
Constant propagation |
|
|
Constant folding |
|
|
""
Additions:
e lo si compili in ##gcc## con livello di ottimizzazione ##-O1##, creando il file assembly ##es4.s##. Ispezionando ##es4.s##, quali ottimizzazioni sono state effettuate dal compilatore? Completa la tabella:
Deletions:
e lo si compili con livello di ottimizzazione ##-O1##, creando il file assembly ##es4.s##. Quali ottimizzazioni sono effettuate dal compilatore? Completa la tabella:
Additions:
|
|
|
Additions:
e lo si compili con livello di ottimizzazione ##-O1##, creando il file assembly ##es4.s##. Quali ottimizzazioni sono effettuate dal compilatore? Completa la tabella:
Applicato in es4.s? |
Deletions:
e lo si compili con livello di ottimizzazione -O1, creando il file assembly ##es4.s##. Quali ottimizzazioni sono effettuate dal compilatore? Completa la tabella:
Applicato in es4-O0.s? |
Additions:
e lo si compili con livello di ottimizzazione -O1, creando il file assembly ##es4.s##. Quali ottimizzazioni sono effettuate dal compilatore? Completa la tabella:
Se sì, motivare la risposta |
Deletions:
e lo si compili in due versioni:
~A. ##gcc -m32 es4.c -S -o es4-O0.s##
~B. ##gcc -m32 es4.c -S -o es4-O1.s -O1##
Esaminare i file ##es4-O0.s## ed ##es4-O1.s##. Quali ottimizzazioni sono effettuate dal compilatori per le due versioni? Completare la seguente tabella:
Se sì, perché? |
Applicato in es4-O1.s? |
Se sì, perché? |
Additions:
Se sì, perché? |
Se sì, perché? |
Deletions:
Perché? |
Perché? |
Additions:
while (--n>=b) if (cmp(v[n-1], v[n]) > b-1) return 0;
Deletions:
while (--n>=b) if (ord(v[n-1], v[n]) > b-1) return 0;
Additions:
while (--n>=b) if (ord(v[n-1], v[n]) > b-1) return 0;
Deletions:
while (--n>=b) if (ord(n-1, n) > b-1) return 0;
Additions:
~A. ##gcc -m32 es4.c -S -o es4-O0.s##
Deletions:
~A ##gcc -m32 es4.c -S -o es4-O0.s##
Additions:
==Esercizio 4 (Ottimizzazioni del compilatore)==
Deletions:
==Esercizio 4 (Ottimizzazione del compilatore)==
Additions:
Esaminare i file ##es4-O0.s## ed ##es4-O1.s##. Quali ottimizzazioni sono effettuate dal compilatori per le due versioni? Completare la seguente tabella:
Deletions:
Esaminare i file ##es4-O0.s## ed ##es4-O1.s##. Quali ottimizzazioni sono effettuate dal compilatori per le due versioni?
No differences.
No differences.
Additions:
int b = 1;
while (--n>=b) if (ord(n-1, n) > b-1) return 0;
Constant propagation |
Constant folding |
Deletions:
while (--n>=1) if (ord(n-1, n) > 0) return 0;
No differences.
Additions:
~B. ##gcc -m32 es4.c -S -o es4-O1.s -O1##
Loop-invariant code motion |
Deletions:
~B. ##gcc -m32 es4.c -o es4-O1.s -O1##
Additions:
Function inlining |
|
|
|
|
Deletions:
Additions:
Deletions:
Page was generated in 0.0508 seconds