Re: [fpc-devel] Question about internal compiler functions

2024-06-26 Thread J. Gareth Moreton via fpc-devel
So I've found out what's going on.  For some reason, at least under x86_64-win64 (probably due to the lack of native support of Extended), FPC uses the slow generic function for sin (and cos). This is the case for FPC 3.2.2 and the trunk.  I'll be doing some tests. To clarify what I've been

[fpc-devel] Question about internal compiler functions

2024-06-25 Thread J. Gareth Moreton via fpc-devel
Hi everyone, This might be the silliest question, but where are functions like fpc_sin_real defined and implemented in the compiler, specifically for x86_64?  I'm playing around with a faster algorithm but can't seem to find the actual files where the code is implemented. Functions like

Re: [fpc-devel] Question about internal compiler functions

2020-08-23 Thread J. Gareth Moreton via fpc-devel
That saved me so much work! I found the incorrect code - thanks Jonas! Trunk: ... mov x0,x22 bl SYSTEM_$$_NEWUNICODESTRING$INT64$$POINTER mov x23,x0 lsl x2,x22,#1 mov x1,x23 cbnzx20,.Lj3808 adrp

Re: [fpc-devel] Question about internal compiler functions

2020-08-23 Thread J. Gareth Moreton via fpc-devel
Thanks Jonas - I'll see if I can pinpoint it now. Gareth aka. Kit On Sun 23/08/20 13:09 , Jonas Maebe via fpc-devel fpc-devel@lists.freepascal.org sent: > On 23/08/2020 12:48, J. Gareth Moreton via fpc-devel wrote: > > > I've found a pretty big optimisation that > benefits most ARM platforms,

Re: [fpc-devel] Question about internal compiler functions

2020-08-23 Thread Jonas Maebe via fpc-devel
On 23/08/2020 12:48, J. Gareth Moreton via fpc-devel wrote: > I've found a pretty big optimisation that benefits most ARM platforms, > including AArch64, but I'm getting a few random test failures. My > investigations suggest that functions like "fpc_chararray_to_unicodestr" and > other string

[fpc-devel] Question about internal compiler functions

2020-08-23 Thread J. Gareth Moreton via fpc-devel
Hi everyone, I've found a pretty big optimisation that benefits most ARM platforms, including AArch64, but I'm getting a few random test failures. My investigations suggest that functions like "fpc_chararray_to_unicodestr" and other string conversion routines are not being optimised properly