[fpc-devel] Rules about record types and internal storage

J. Gareth Moreton gareth at moreton-family.com
Thu Apr 2 17:48:44 CEST 2020


Apologies - I wasn't clear.  There is an option in the MSVC compiler to 
default to vectorcall, but you have to specify it.

Gareth aka. Kit

On 02/04/2020 16:16, Sven Barth via fpc-devel wrote:
> Sven Barth <pascaldragon at googlemail.com 
> <mailto:pascaldragon at googlemail.com>> schrieb am Do., 2. Apr. 2020, 17:10:
>
>         P.S. Of course you can force it by forcing the vector to be an
>         m128 type
>         and specifying vectorcall for x86_64-win64, but not everyone
>         will know
>         to do that and it gets unwieldly rather quickly. Speaking of
>         vectorcall, I'm wondering if we can introduce 'fastcall' as an
>         alias for
>         'ms_abi_default', mostly so if we follow Microsoft Visual
>         C++'s example
>         of automatically making all routines vectorcall (which is
>         closer to the
>         System V ABI used by linux and will make vectorisation
>         easier), we can
>         force the default one if we need a routine that, say, has to
>         interface
>         with a third-party library ('fastcall' under win32 is what the
>         MS ABI is
>         based off... first parameter in ECX, second in EDX and
>         everything else
>         on the stack).
>
>
>     Please provide a source for your statement that MSVC uses
>     vectorcall by default. Cause I highly doubt that as Microsoft is
>     huge on backwards compatibility especially regarding the lower
>     level stuff.
>
>
> Just checked myself: cdecl is the default. So nothing needs to be 
> changed here for us.
>
> Regards,
> Sven
>
>
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


-- 
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20200402/4163a0ce/attachment.html>


More information about the fpc-devel mailing list