An analysis of inline substitution for a structured programming language
Communications of the ACM
A new strategy for code generation: the general purpose optimizing compiler
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Predicting the effects of optimization on a procedure body
SIGPLAN '79 Proceedings of the 1979 SIGPLAN symposium on Compiler construction
Preliminary Ada reference manual
ACM SIGPLAN Notices - Preliminary Ada reference manual
On the use of registers vs. cache to minimize memory traffic
ISCA '86 Proceedings of the 13th annual international symposium on Computer architecture
WISQ: a restartable architecture using queues
ISCA '87 Proceedings of the 14th annual international symposium on Computer architecture
On the Minimization of Loads/Stores in Local Register Allocation
IEEE Transactions on Software Engineering
Subprogram Inlining: A Study of its Effects on Program Execution Time
IEEE Transactions on Software Engineering
Inlining semantics for subroutines which are recursive
ACM SIGPLAN Notices
Efficient register allocation via coloring using clique separators
ACM Transactions on Programming Languages and Systems (TOPLAS)
Scheduling DAG's for Asynchronous Multiprocessor Execution
IEEE Transactions on Parallel and Distributed Systems
EDO: Exception-directed optimization in java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Hi-index | 0.00 |
This paper describes the implementation of inline procedures and functions inthe VAXELN Pascal compiler. Inline expansion translates the reverse Polish text produced by the parser into an intermediate language like that used in the VAX-11 PL/I and C compilers. The paper gives detailed descriptions of the front end's organization as it relates to inline routines and of the symbol substitutions made during inline expansion. The paper also discusses global optimization and the compiler's treatment of dynamically sized data, which is based on parametric types.