Ich habe mal mein XE10.2-W32 Compilate (release) angehängt. Wenn deine Version immernoch die schnellste mit der EXE ist, dann ist der Compiler ausgeschlossen und da macht deine Hardware einen guten Job.
Da scheint es beim Compiler doch noch Unterschiede zu geben, aber auch der Prozessor spielt wohl eine Rolle:
....
Puff, damit hab ich jetzt nicht wirklich gerechnet. Bezhalt vs. Free..
Dies ist die eine typische Technik um die Loops zu reduzieren.
... und ein direkter Weg ins Desaster, wenn die Stringlänge nicht durch 8 teilbar ist! Die Bedingung der ersten While-Schleife passt nicht so richtig, oder?
Desaster? Wie teilbar?? Uwe ich teile nix! Ich nehm dem PEnd gleich im Eingang 8 chars weg (Subtraktion) und behalte mir die für die letzte tiny loop vor.. Somit ist das Ergebnis garantiert, oder sieht das jemand anders? Der Code passt, sind jedoch typos drin die behalten werden dürfen