From 8d41d2cc4362ba10eb5b0fcd1f9d87063e1686b9 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Thu, 16 Aug 2018 15:11:45 -0700 Subject: [PATCH] Add more documentation for special parameters. --- cranelift/docs/ir.rst | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/cranelift/docs/ir.rst b/cranelift/docs/ir.rst index d0cfa5ff16..26a81ba54d 100644 --- a/cranelift/docs/ir.rst +++ b/cranelift/docs/ir.rst @@ -404,7 +404,7 @@ convention: retlist : paramlist param : type [paramext] [paramspecial] paramext : "uext" | "sext" - paramspecial : "sret" | "link" | "fp" | "csr" | "vmctx" + paramspecial : "sret" | "link" | "fp" | "csr" | "vmctx" | "sigid" | "stack_limit" callconv : "fast" | "cold" | "system_v" | "fastcall" | "baldrdash" A function's calling convention determines exactly how arguments and return @@ -413,6 +413,18 @@ depend on both the instruction set /// architecture and possibly the operating system, a function's calling convention is only fully determined by a `(TargetIsa, CallConv)` tuple. +=========== =========================================== +Name Description +=========== =========================================== +sret pointer to a return value in memory +link return address +fp the initial value of the frame pointer +csr callee-saved register +vmctx VM context pointer, which may contain pointers to heaps etc. +sigid signature id, for checking caller/callee signature compatibility +stack_limit limit value for the size of the stack +=========== =========================================== + ========== =========================================== Name Description ========== ===========================================