Am 27.10.19 um 07:32 schrieb J. Gareth Moreton:
I guess you're right. It just seems weird because the System V ABI was
designed from the start to use the MM registers fully, so long as the
data is aligned. In effect, it had vectorcall wrapped into its design
from the start. Granted, vectorcall has some advantages and can deal
with relatively complex aggregates that the System V ABI cannot handle
(for example, a record type that contains a normal vector and
information relating to bump mapping).
I just hoped that making updates to uComplex, while ensuring existing
Pascal code still compiles, would help take advantage of modern ABI designs.
Is there currently any example which shows that vectorcall has any
advantage with FPC? Else I would propose first to make FPC able to take
advantage of it and then talk about if we really add vectorcall.
Currently I fear, FPC gets only into trouble when using vectorcall as it
tries first to push everything into one xmm register and then splits
this again in the callee.
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel