[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. 

The bitcode could only specify which calling convention is being used, 
and each target lowering would need to translate it properly.


Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, 
hosted by The Linux Foundation

More information about the llvm-dev mailing list