gcc icin konusuyorum, cogu zaman yaptigi optimizasyonlara hayranlikla bakiyorum. ama bazen kafasi karisiyor, elle yardimci olmak gerekiyor (bu yuzden ozellikle register ve inline komutuna bayiliyorum)
loop'lari compiler'larin ters cevirebildigini bilmiyordum, kaldi ki bana mantikli gelmiyor.. eger kafasina gore optimizasyon yaptigini dusunerek ters cevirirse (ornegin uae'de), ekrana gelecek ornegin sprite'larin z-order'i ters duracaktir.
diger konuda da haklisin, richard (e-uae maintainer)'la konustugumuzda, yaptigim degisiklikleri ifdef ifndef 'ler arasinda gondermeyi uygun bulmustuk, ancak hem psp hem de gp2x icin port ettigim code'lar o kadar cok ifdef 'e neden oldu ki, code dedigin gibi okunmamaya baslanmisti..
psp ve gp2x'in donanimi, ekran cozunurlukleri belli ve sabit olunca, code icinde bizim icin gereksiz bir suru satir ortaya cikiyor.. ozellikle psp'de icache miss ciddi performans kaybina neden olabiliyor, gereksiz satirlarin kaldirilmasi, ise yariyacak yerlerin unroll edilmesi vs performans icin sart oluyor.. bu yuzden bu uae'ler fork olarak kalacak.. zaten pandora geliyor, ugrasmam heralde psp/gp2x ile :}
.. yalan olmasin psp'yi god of war icin kullanirim yine, gp2x'im de bozuk zaten ..
yani teoride derleyicilerin yapması beklenen birçok optimizasyon pratikte sanki yapılmıyor gibi geliyor bana. yanılıyor da olabilirim...