Direct function calls in lisp |
| |
Authors: | Benjamin Zorn Paul Hilfinger |
| |
Affiliation: | 1. Computer Science Division, University of California, 94720, Berkeley, CA
|
| |
Abstract: | This paper compares implementation strategies for function calls in compiled Lisp. We discuss various ways of allowing compiled call instructions to branch immediately to a callee's code (direct calls), rather than to refer to a symbol that points to the function's definition (indirect calls). We examine the performance of direct and indirect function calls on the VAX and MC68020, and on a RISC architecture—the SPUR multiprocessor. For the SPUR architecture, single indirection slows applications by 3–4%, and double indirection slows applications by 6–8%. The performance benefits of direct function calls are considerably smaller for the VAX and MC68020 architectures. We discuss also the costs and complexities involved in implementing direct function calls. |
| |
Keywords: | |
本文献已被 SpringerLink 等数据库收录! |
|