I reopened the bug ticket to attach a patch with the new function. It also contains some code for "Int" that passes through the input unchanged if its magnitude is greater than 2^52 (at this point, the precision means it can't have a fractional component). I've set it to "feedback" currently so Sven can determine if the patch is satisfactory.
https://bugs.freepascal.org/view.php?id=33635 Gareth aka. Kit On Mon 30/04/18 02:12 , "Thorsten Engler" thorsten.eng...@gmx.net sent: > -----Original Message----- > From: fpc-devel On Behalf > Of Florian Klaempfl > Sent: Monday, 30 April 2018 04:28 > > That ended up making things worse in some cases. > > Can you take a look at the generated machine code if delphi uses > proper multi byte nops. If not, the align might make things indeed > worse. It does. The problem was not the time required by the nops, but that for certain entry point alignments (among them the 16 byte alignments) the presence of this .align triggered the 3-4 times increase in processing time. I didn't look any closer into it as the version that J. Gareth worked out is faster and isn't alignment sensitive. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org [2] http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel [3]">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel Links: ------ [1] mailto:fpc-devel-boun...@lists.freepascal.org [2] mailto:fpc-devel@lists.freepascal.org [3] http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
_______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel