[fpc-pascal] FPC Graphics options?
Sven Barth
pascaldragon at googlemail.com
Fri May 19 10:54:25 CEST 2017
Am 19.05.2017 03:30 schrieb "Ryan Joseph" <ryan at thealchemistguild.com>:
>
>
> > On May 19, 2017, at 3:48 AM, Florian Klämpfl <florian at freepascal.org>
wrote:
> >
> > Well, the reason are the linux calling conventions: there are no callee
saved xmm registers. This
> > means FPC does not use any single/double register variables. I have
some prototype fixes in my local
> > git mirror, but they are neither finished nor tested.
>
> Can you please explain how do calling conventions affect this? I failed
to run this at all on my Mac but I’m not sure why and even more confused
how this would decimate speeds like this.
Even though FPC might use SSE for maths it will still use the x87 to
transfer floating values to/from function, especially if they take Extended
as parameter/result.
I did a test by disabling Extended on Linux x64 trunk compiler and RTL and
it tripled the framerate from ~3 to ~10.
Additionally some internal functions are not yet available with sole SSE
support (frac() indeed comes to mind).
Regards,
Sven
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20170519/ff49ef39/attachment.html>
More information about the fpc-pascal
mailing list