Selecting Software Test Data Using Data Flow Information
IEEE Transactions on Software Engineering
The program summary graph and flow-sensitive interprocedual data flow analysis
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
Interprocedural side-effect analysis in linear time
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
Fast interprocedual alias analysis
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Interprocedual data flow testing
TAV3 Proceedings of the ACM SIGSOFT '89 third symposium on Software testing, analysis, and verification
Interprocedural slicing using dependence graphs
ACM Transactions on Programming Languages and Systems (TOPLAS)
An interval-based approach to exhaustive and incremental interprocedural data-flow analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
A program integration algorithm that accommodates semantics-preserving transformations
SDE 4 Proceedings of the fourth ACM SIGSOFT symposium on Software development environments
Pointer-induced aliasing: a problem classification
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Object-oriented type inference
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Data flow-based test adequacy analysis for languages with pointers
TAV4 Proceedings of the symposium on Testing, analysis, and verification
Interprocedural Def-Use associations in C programs
TAV4 Proceedings of the symposium on Testing, analysis, and verification
A safe approximate algorithm for interprocedural aliasing
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
ACM Letters on Programming Languages and Systems (LOPLAS)
Interprocedural modification side effect analysis with pointer aliasing
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Efficient flow-sensitive interprocedural computation of pointer-induced aliases and side effects
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Constructing call multigraphs using dependence graphs
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Pointer-induced aliasing: a clarification
ACM SIGPLAN Notices
Reducing indirect function call overhead in C++ programs
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the second conference on Software development tools, techniques, and alternatives
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A precise inter-procedural data flow algorithm
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Interprocedural Def-Use Associations for C Systems with Single Level Pointers
IEEE Transactions on Software Engineering
Interprocedural Type Propagation for Object-Oriented Languages
ESOP '92 Proceedings of the 4th European Symposium on Programming
Optimizing Dynamically-Typed Object-Oriented Languages With Polymorphic Inline Caches
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
On Interprocedural Data Flow Analysis for Object Oriented Languages
CC '92 Proceedings of the 4th International Conference on Compiler Construction
Compile-Time Analysis of Object-Oriented Programs
CC '92 Proceedings of the 4th International Conference on Compiler Construction
Incremental Call Graph Reanalysis for Object-Oriented Software Maintenance
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
Streamlining feature-oriented designs
SC'07 Proceedings of the 6th international conference on Software composition
Hi-index | 0.00 |
Static type determination involves compile time calculation of the type of object a pointer may point to at a particular program point during some execution. We show that the problem of precise interprocedural type determination is NP-hard in the presence of inheritance, virtual methods and pointers. We highlight the significance of type determination in improving code efficiency and precision of other static analyses. We present a safe, approximate algorithm for C++ programs with single level pointers, using the conditional analysis technique [LR91]. We discuss the generalization of our approach to analyze programs with multiple levels of pointer dereferencing.