Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
A fast algorithm for code movement optimisation
ACM SIGPLAN Notices
Minimizing register usage penalty at procedure calls
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Register assignment using code placement techniques
Computer Languages
Properties of data flow frameworks: a unified model
Acta Informatica
How to analyze large programs efficiently and informatively
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
An elimination algorithm for bidirectional data flow problems using edge placement
ACM Transactions on Programming Languages and Systems (TOPLAS)
Practical adaption of the global optimization algorithm of Morel and Renvoise
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Fast and Usually Linear Algorithm for Global Flow Analysis
Journal of the ACM (JACM)
Fast Algorithms for Solving Path Problems
Journal of the ACM (JACM)
Global optimization by suppression of partial redundancies
Communications of the ACM
A program data flow analysis procedure
Communications of the ACM
A unified approach to global program optimization
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Application of lattice algebra to loop optimization
POPL '75 Proceedings of the 2nd ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Flow Analysis of Computer Programs
Flow Analysis of Computer Programs
Effective partial redundancy elimination
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Optimal code motion: theory and practice
ACM Transactions on Programming Languages and Systems (TOPLAS)
A generalized theory of bit vector data flow analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interprocedural pointer alias analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
A balanced code placement framework
ACM Transactions on Programming Languages and Systems (TOPLAS)
E-path_PRE: partial redundancy elimination made easy
ACM SIGPLAN Notices
Bidirectional data flow analysis: myths and reality
ACM SIGPLAN Notices
Bidirectional Data Flow Analysis in Code Motion: Myth and Reality
SAS '98 Proceedings of the 5th International Symposium on Static Analysis
Partial redundancy elimination: a simple, pragmatic, and provably correct algorithm
Science of Computer Programming
Optimal interprocedural program optimization: a new framework and its application
Optimal interprocedural program optimization: a new framework and its application
Interacting code motion transformations: their impact and their complexity
Interacting code motion transformations: their impact and their complexity
Bidirectional data flow analysis for type inferencing
Computer Languages, Systems and Structures
Hi-index | 0.00 |
The concept of an information flow path arising from the generalized theory of data flow analysis [21] is used to analyze the complexity of data flow analysis. The width (w) of a program flow graph with respect to a class of data flow problems is introduced as a measure of the complexity of round-robin iterative analysis. This provides the first known complexity result for round robin iterative analysis of bidirectional data flows commonly used in algorithms based on the suppression of partial redundancies [6, 7, 8, 9, 17, 18, 25]. We also show that width provides a better bound on the complexity of unidirectional data flows than the classical notion of depth.The paper presents ways to reduce the width, and thereby the complexity of flow analysis, for several interesting problems. Complexity analysis using the notion of width is also shown to motivate efficient solution methods for various bidirectional problems, viz. The alternating iterations method, and an interval analysis based elimination method for the partial redundancy elimination problems. The paper also presents a condition for the decomposability of a bidirectional problem into a sequence of unidirectional problems.