Displaying 1 result from an estimated 1 matches for "x86_vectorcallcc".
2016 Nov 30
2
RFC: Adding Support For Vectorcall Calling Convention
...because HVA
structures are allocated on a second pass.
Issues in Clang
--------------------
Structure Expansion
~~~~~~~~~~~~~~~~~~~
The current clang implementation expends HVA structures into multiple
vector types.
For example:
C code: int __vectorcall foo(hva3 a);
LLVM IR Output: define x86_vectorcallcc i32 @foo(__m256 %a.0, __m256 %a.1, __m256 %a.2);
*The example omits the decoration that is added to the function name
Thus the backend can't differentiate between expended HVA structures and
simple vector types, and doesn't know the original position of each
parameter in the argument list....