Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
The program dependence graph and its use in optimization
ACM Transactions on Programming Languages and Systems (TOPLAS)
Interprocedural slicing using dependence graphs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Software testing techniques (2nd ed.)
Software testing techniques (2nd ed.)
Value dependence graphs: representation without taxation
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Register allocation over the program dependence graph
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Advanced compiler design and implementation
Advanced compiler design and implementation
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Interprocedural Dynamic Slicing Applied to Interprocedural Data How Testing
ICSM '93 Proceedings of the Conference on Software Maintenance
A complexity measure based on nesting level
ACM SIGPLAN Notices
IEEE Transactions on Software Engineering
Intermediate representations in imperative compilers: A survey
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
Most software analysis and assessment techniques operate on graph representations of the target software. One of the most common representations is the Program Dependence Graph in one of its many variations. The Value Dependence Graph is an alternative that is more suitable for many types of analyses, including static slicing and many code transformations, such as instruction scheduling and invariant analysis. In this paper we present a new algorithm that builds Value Dependence Graphs from the parse tree of a program. By generating the Value Dependence Graph from the parse tree, our algorithm is significantly simpler and clearer than previously published algorithms.