A Formal Model and Specification Language for
Procedure Calling Conventions

Mark W. Bailey
Jack W. Davidson
Abstract

Procedure calling conventions are used to provide uniform procedure-call interfaces. Applications, such as compilers and debuggers, which generate, or process procedures at the machine-language abstraction level require knowledge of the calling convention. In this paper, we develop a formal model for procedure calling conventions called P-FSA’s. Using this model, we are able to ensure several completeness and consistency properties of calling conventions. Currently, applications that manipulate procedures implement conventions in an ad-hoc manner. The resulting code is complicated with details, difficult to maintain, and often riddled with errors. To alleviate the situation, we introduce a calling convention specification language, called CCL. The combination of CCL and P-FSA’s facilitates the accurate specification of conventions that can be shown to be both consistent and complete.

Maintained by Mark Bailey (bailey@virginia.edu)
Last modified: Sat Jan 11 13:37:21 1997