Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.177 Beiträge
 
Delphi 12 Athens
 
#72

AW: [Optimiert] Explode Prozedur - Reloaded (Ersatz für CodeLib)

  Alt 17. Aug 2010, 19:46
Delphi lagert es nur einmal aus und es wird dann vorm RET auf EAX kopiert.
Result wird in soeinem Fall einfach wie eine lokale Variable behandelt und erst zum Schluß als "Result" gesetzt.

Es sollte also nicht unbedingt extreme Einbusen geben.

Code:
function Test: Integer;
begin
  Result := 123;
  asm mov eax, 789; end;
end;

mov edx,$0000007b // Result := 123;
mov eax,$00000315  // asm mov eax, 789; end;
mov eax,edx       // end;
ret
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (17. Aug 2010 um 19:51 Uhr)
  Mit Zitat antworten Zitat