[LLVMdev] How to represent __attribute__((fastcall)) functions in the IL
Krzysztof Parzyszek
kparzysz at codeaurora.org
Fri Oct 19 09:07:11 PDT 2012
On 10/19/2012 10:40 AM, Chandler Carruth wrote:
>
> Don't get me wrong, I don't have any good ideas about how to do this,
> I'm just hoping someone does. End result might allow something like:
>
> declare void @foo(double inreg <eax,edx> %x)
>
Could we have some sort of metadata input for the front-end, where
"fastcall" would be explicitly defined, together with the required
targets that implement it?
This way users could provide their own calling convention definitions,
and use them in a similar fashion to fastcall, i.e.
__attribute__((my_convention)).
The bitcode could only specify which calling convention is being used,
and each target lowering would need to translate it properly.
-Krzysztof
--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
hosted by The Linux Foundation
More information about the llvm-dev
mailing list