[PATCH] Add two new calling conventions for runtime calls

Sean Silva silvas at purdue.edu
Thu Jan 16 12:18:44 PST 2014


Changes to the IR must be accompanied by changes to LangRef.

-- Sean Silva


On Fri, Jan 10, 2014 at 6:47 PM, Juergen Ributzka <juergen at apple.com> wrote:

> Hi @ll,
>
> this patch adds two new target-independent calling conventions for runtime
> calls - Runtime and FastRuntime.
>
> The target-specific implementation for X86-64 is defined as following:
>         - Arguments are passed as for the default C calling convention
>         - The same applies for the return value(s)
>         - for runtimecc the callee preserves all GPRs - except R11
>         - for fastruntimecc the callee preserves all GPRs and all XMMs -
> except R11
>
> The idea is to provide calling conventions for calls to very hot runtime
> functions that are normally just a few lines of assembly code and don’t
> require a lot of registers. This could be used by the ObjectiveC runtime,
> or any other runtime that provides performance critical functions.
>
> The FastRuntime CC is intended to be used for small codes that don’t call
> any other functions at all.
> The Runtime CC is also intended for small codes that usually don’t call
> other functions on the fast path, but might have to on the slow path.
>
> Cheers,
> Juergen
>
>
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140116/4f6a5b07/attachment.html>


More information about the llvm-commits mailing list