Variable argument lists.

Robert Firth firth at sei.cmu.edu
Tue May 17 01:21:26 AEST 1988


In article <1701 at rpp386.UUCP> jfh at rpp386.UUCP (The Beach Bum) writes:

>this function can be implemented if the C compiler uses the CALLS
>instruction.  CALLS is of the form
>
>	CALLS	#<number-of-arguments>,<where-to-go>

Is there no hope of correcting this misinformation?  ONE MORE TIME:
the first operand of CALLS is the NUMBER OF LONGWORDS passed in the
argument list.  It is NOT the number of arguments.

At one time, DEC tried to enforce a software convention that all
arguments would be exactly one longword in size: smaller values
would be padded, larger ones would be passed by reference, and
dynamic-sized ones would be passed by reference-to-descriptor.

This conventing is NOT obeyed by DEC system software, or by most
compilers for the VAX-11.  In general, you CANNOT assume that

	MOVZBL (AP), Reg

will give you the "number of arguments".



More information about the Comp.lang.c mailing list