@Stefan:
Nicht in den falschen Hals bekommen. Die Sicherheitsaspekte und der tatsächliche Gewinn sind mir sehr wohl bewusst.
Zitat von thewulf00
Wie bereits erwähnt verlangt CPI ein höheres Register.Zitat von thewulf00
Prinzipiell ist die Idee gut, ein spezielles Register zuzuweisen, solange der Code übersichtlich bleibt. Allerdings habe ich keine Erfahrung, wie der Compiler dann reagiert, wenn es komplexer wird. Er produziert auch in Standardsituationen mal ineffizienten Code.
Was Du aber eventuell machen könntest (ich kenne den Rest des Codes nicht...), ist, die "Konstante" nicht als solche zu speichern, sondern in einem unteren Register zu halten. Dann könnte der Compiler nämlich den CP-Befehl verwenden und sich die Rumkopiererei sparen, weil er jetzt keine Imidiate benutzen muss. Außerdem bräuchte er dann kein zusätzliches Register zu retten, weil R5 mit der Konstante ja konstant bleibt.
Das ist die Theorie, würde mich mal interessieren, ob der Compiler die auch kennt...Ich bezweifele es geringfügig.
Gruß
Lesezeichen