Cheatah: Benötigt er ein IQ-Upgrade?

Beitrag lesen

Hi,

Das glaube ich spontan erstmal nicht... :) Was sollte den Optimierer
in dem Fall davon abhalten, a=a+1; zu a++; zu optimieren, und dann
ein INC daraus zu machen?

die Analyse von "'a=a+1' == 'a++'" dauert länger als die von "'a++' == 'a++'". Abgesehen davon wird in allen mir bekannten Systemen bei 'a=a+1' tatsächlich der Wert 'a' mit dem Wert '1' zusammengezählt und anschließend nach 'a' gespeichert, während bei 'a++' der Speicher direkt an der richtigen Stelle modifiziert wird.

Selbst 'a+=1' sollte schneller sein als 'a=a+1'. Ist einfach weniger Kopiererei - und semantische "vielleicht könnte man es ja optimieren"-Vergleiche beschleunigen zwar vielleicht die eine Zuweisung, verlangsamen dafür aber den Rest des Programms.

Cheatah