[elektro] C megegyszer (SWITCH)

Abraham Gabor abraham at plus7.hu
Fri Apr 9 11:02:22 CEST 2010


> > Te hasznalod ezt ? Tenyleg drasztikus ?
>
> Kb. 5x gyorsabb egy teljes ujraforditas normal esetben.
>
> > A hagyomanyos esetnel a make ellenorzi, hogy letezik-e a cel allomany
> > es ha igen, frissebb-e mint a forras. Ha nem, akkor fordit.
>
> Fuggosegi (dependency) list alapjan. Ugyanis ha a forditando forrashoz
> sokezer egyeb header tartozik, ami kozul barmi megvaltozik,
> akkor azt ujraforditja.

Termeszetesen.

> Pl. egy config.h -ban atirsz egy aprosagot, es azt minden .c haznalja,
> akkor "hagyomanyos" modszerrel az egesz elejetol ujrafordul, mig ccache
> eseteben csak az, amiben olyan kodreszlet van, ami a megvaltozott erteket
> hasznalja.

Na ezt ismerem. Nalunk is van nehany include, amitol az egesz vilag
lefordul, akkor is ha csak egy plusz sor kerul bele, amire nincs is
hivatkozas.

> > Ha jol ertem ez annyival tud tobbet, hogy nem csak modositasi idot nez,
> > hanem megprobal tenyleges valtozast detektalni.
>
> Lenyegeben igen.
>
> > Mondjuk, ha valaki csak nezeget egy forrast, de elmenti, bar nem
> > valtoztatott rajta, akkor ez nem fordit.
>
> Ez igy van.
>
> Ja igen, es a -j -l2 make opcio is eleg hasznos tud lenni tobbmagos CPU-n.

Koszonom. Vegul is kiprobalni nem kerul semmibe.

Gabor.



More information about the Elektro mailing list