VMS Help
RTL Routines, OTS$, OTS$CALL_PROC
*Conan The Librarian
|
(Alpha and I64 only.) The Call Special Procedure routine performs
a call to a procedure that may be either in native code or in a
translated image.
Format
OTS$CALL_PROC target-func-value ,target-sig-info
,standard-args ,...
None.
target-func-value
OpenVMS usage:function value
type: quadword address
access: read only
mechanism: by value in register R23 (Alpha). by value in
register R17 (I64).
Function value for the procedure to be called.
target-sig-info
OpenVMS usage:TIE signature information
type: TIE signature block
access: read only
mechanism: by reference in register R24 (Alpha). by value in
register R17 (I64).
Signature information is used to transform the standard arguments
into the form required by a translated image (if needed). The
representation of signature information is described in the
OpenVMS Calling Standard.
standard-args
type:
access:
mechanism: 0
Zero or more arguments to be passed to the called routine, passed
using standard conventions (including the AI register).
When translated code support is requested, the compiled code
must call the special service routine, OTS$CALL_PROC. The actual
parameters to the target function are passed to OTS$CALL_PROC as
though the target routine is native code that is being invoked
directly.
OTS$CALL_PROC first determines whether the target routine is part
of a translated image.
If the target is in native code, then OTS$CALL_PROC completes
the call in a way that makes its mediation transparent (that is,
control need not pass back through it for the return). The native
parameters are used without modification.
If the target is in translated code, then OTS$CALL_PROC passes
control to the Translated Image Environment (TIE).
4 - Condition Values Returned
|
None.