Argument list format

FASTLINK utilizes a logical argument list. Upon entry to the FASTLINK entry point at +16, the argument list is located in the argument area which is at a fixed location in what will be the callee's stack frame. At the +16 Entry Point, some of the argument values are passed in registers and some in storage. The physical argument list in storage has space for the arguments which are passed in registers. The logical argument list contains all of the arguments. The logical argument list consists of the physical argument list plus the contents of those registers used to pass arguments. Depending upon the type of the parameters, some arguments are loaded into the GPRs or the FPRs Start of change, or the VRsEnd of change.

FASTLINK linkage supports both direct and indirect arguments for calls between cooperating routines and thus the argument list may contain a mixture of values and addresses. Because the argument list may contain values, it has no explicit termination bit and the length of the FASTLINK argument list is specified elsewhere.

Note: The width of argument list elements is 4 bytes or a multiple thereof when direct values are passed.