Declarative Composition of Stack Frames

11 years 7 months ago
Declarative Composition of Stack Frames
When a compiler translates a procedure, it must lay out the procedure’s stack frame in a way that respects the calling convention. Many compilers respect the convention either by restricting the order in ots can be allocated or by using different abstractions ad hoc for allocating in different regions of a frame. Such techniques cause the implementation of the layout to be spread over much of the compiler, making it difficult to maintain and verify. We have concentrated the implemenf layout into a single, unifying abstraction: the block. The block ion decouples layout from slot allocation. Stack-frame layout is specified in one central place, and even complex layouts are achieved by composing blocks using only two simple operators. Our implementation is used in the Quick C-- compiler to support multiple calling conventions on multiple architectures.
Christian Lindig, Norman Ramsey
Added 01 Jul 2010
Updated 01 Jul 2010
Type Conference
Year 2004
Where CC
Authors Christian Lindig, Norman Ramsey
Comments (0)