[PLUTO-tech] Cisc contro i RISC (ovvero IA32 sucks :) )
Gian Uberto Lauri
GianUberto.Lauri a eng.it
Ven 7 Maggio 2004 22:45:47 CEST
Allora, tempo fa sulla mailing list Pluto Pd Lupus ed io discutemmo
animatamente sulle architetture dei processori.
Ho ritrovato un articolo pubblicato su usenet nel 1996 (e` stato com-
presso nel 1996, il timestamp e`
-rw------- 1 saint limbo 6522 Jul 29 1996 risc_vs_cisc.gz
Al tempo parlai del fatto che il GCC usava 7 istruzioni su Intel e 3
su Sparc (che e` una architettura analoga ad altre architetture RISC
esistite, Intel i860 incluso). Paolo indico` 5 ed infatti adesso GCC
per compilare questa riga di C
b_1=*r_1, *r_1++=b_2;
Ma a suo tempo l'output di GCC per la stessa linea era:
movl %eax,-80(%ebp) ; salva eax in memoria - r_1 é in eax
movl (%eax),%eax ; b_1 = *r_1 - ora in eax c´é *r_1
movl %eax,-20(%ebp) ; che adesso va in b_1
movl -48(%ebp),%eax ; ora in eax c´é b_2 - inizia *r_1 = b_2
movl -80(%ebp),%edx ; r_1 -giá in eax- va in edx
movl %eax,(%edx) ; questo termina *r_1 = b_2
addl $4,%edx ; r_1++
*Bravi* i developer di GCC per l'ottimizzazione.
Articolo completo disponibile su richiesta (puo` avere effetti las-
sativi).
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Maggiori informazioni sulla lista
pluto-tech