Hallo,
Weiss jemand, was man machen muss, damit Delphi 2009 Konstrukte wie z.B
Delphi-Quellcode:
function add(a,b:integer):integer;
begin
result:=a+b;
end;
automatisch inlined, wenn sie oft aufgerufen werden, ohne, dass man extra ein "inline;"" dahinter schreiben muss?
Ich habe es mal so getestet:
Delphi-Quellcode:
a:=gettickcount;
for i := 1 to 1000000000 do add(5,8);
showmessage(inttostr(gettickcount-a));
Build Konfiguration ist auf Release, Optimierungen aktiviert, "Steuerung des Code-Inlining" ist auch aktiviert.
Ohne "inline;": 2855 ms.
Mit "inline;": 548 ms.
Kann der Delphi Kompiler das nicht automatisch tun?
Der C++ Builder und alle anderen C++ Kompiler machen das auch so, wenn es auf "Release" gestellt wird.