[LLVMdev] How to represent __attribute__((fastcall)) functions in the IL
rengolin at systemcall.org
Sat Oct 20 10:37:48 PDT 2012
On 19 October 2012 17:00, Duncan Sands <baldrick at free.fr> wrote:
> That said, I also don't like the idea of filling the IR with tons of target
> specific stuff.
In this case, I think it's even worse than "aapcs" or "fastcall", that
are target dependent, but at a higher level.
Proposing at which register each variable will be, forces the
front-ends to know all about all targets LLVM supports (the register
names for x86_64 will be different than for x86, which will be
different than ARM, Thumb, MIPS, etc). Which is not just a
language/ABI issue, but hardware architecture one.
Having the PCSBuilder / PCS pass, would decouple the front-end of the
back-end, at least on PCS matters.
However, I agree with you that we should not have function signatures
that are different than their calls.
More information about the llvm-dev