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
Efficiently computing static single assignment form and the control dependence graph
ACM Transactions on Programming Languages and Systems (TOPLAS)
Systems programming with Modula-3
Systems programming with Modula-3
A safe approximate algorithm for interprocedural aliasing
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
The superblock: an effective technique for VLIW and superscalar compilation
The Journal of Supercomputing - Special issue on instruction-level parallelism
Efficient computation of interprocedural definition-use chains
ACM Transactions on Programming Languages and Systems (TOPLAS)
Vortex: an optimizing compiler for object-oriented languages
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Advanced compiler design and implementation
Advanced compiler design and implementation
The Jalapeño dynamic optimizing compiler for Java
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
Analyzing exception flow in Java programs
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The Java Language Specification
The Java Language Specification
A precise inter-procedural data flow algorithm
POPL '81 Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Complexity of Concrete Type-Inference in the Presence of Exceptions
ESOP '98 Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems
Analysis of Programs with Exception-Handling Constructs
ICSM '98 Proceedings of the International Conference on Software Maintenance
Analyzing exception flow in Java programs
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Analysis and Testing of Programs with Exception Handling Constructs
IEEE Transactions on Software Engineering
Understanding class hierarchies using concept analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Register-sensitive selection, duplication, and sequencing of instructions
ICS '01 Proceedings of the 15th international conference on Supercomputing
Exploring the Interaction between Java's Implicitly Thrown Exceptions and Instruction Scheduling
International Journal of Parallel Programming
Program analysis for safety guarantees in a Java virtual machine written in Java
PASTE '01 Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
A study of exception handling and its dynamic optimization in Java
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Dynamic optimistic interprocedural analysis: a framework and an application
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Alias analysis for exceptions in Java
ACSC '02 Proceedings of the twenty-fifth Australasian conference on Computer science - Volume 4
Concern graphs: finding and describing concerns using structural program dependencies
Proceedings of the 24th International Conference on Software Engineering
An open framework for data-flow analysis in Java: extended abstract
PPPJ '02/IRE '02 Proceedings of the inaugural conference on the Principles and Practice of programming, 2002 and Proceedings of the second workshop on Intermediate representation engineering for virtual machines, 2002
High-Performance Scalable Java Virtual Machines
HiPC '01 Proceedings of the 8th International Conference on High Performance Computing
LCPC '99 Proceedings of the 12th International Workshop on Languages and Compilers for Parallel Computing
An Empirical Study of Selective Optimization
LCPC '00 Proceedings of the 13th International Workshop on Languages and Compilers for Parallel Computing-Revised Papers
Optimizing Java Programs in the Presence of Exceptions
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
A Static Study of Java Exceptions Using JESP
CC '00 Proceedings of the 9th International Conference on Compiler Construction
Eliminating Exception Constraints of Java Programs for IA-64
Proceedings of the 2002 International Conference on Parallel Architectures and Compilation Techniques
Joeq: a virtual machine and compiler infrastructure
Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators
Static analysis to support the evolution of exception structure in object-oriented systems
ACM Transactions on Software Engineering and Methodology (TOSEM)
Effectiveness of cross-platform optimizations for a java just-in-time compiler
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
An uncaught exception analysis for Java
Journal of Systems and Software
Testing of java web services for robustness
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Alias analysis in Java with reference-set representation for high-performance computing
International Journal of Parallel Programming
IBM Systems Journal
Robustness Testing of Java Server Applications
IEEE Transactions on Software Engineering
Evolution of a java just-in-time compiler for IA-32 platforms
IBM Journal of Research and Development
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Portable, efficient, and accurate sampling profiling for java-based middleware
SEM '05 Proceedings of the 5th international workshop on Software engineering and middleware
EDO: Exception-directed optimization in java
ACM Transactions on Programming Languages and Systems (TOPLAS)
Portable and accurate sampling profiling for Java
Software—Practice & Experience - Research Articles
An approach to analyzing recursive programs with exception handling constructs
ACM SIGPLAN Notices
Flexible and efficient measurement of dynamic bytecode metrics
Proceedings of the 5th international conference on Generative programming and component engineering
Deriving escape analysis by abstract interpretation
Higher-Order and Symbolic Computation
Joeq: a virtual machine and compiler infrastructure
Science of Computer Programming - Special issue on advances in interpreters, virtual machines and emulators (IVME'03)
ACM Transactions on Programming Languages and Systems (TOPLAS)
An analysis approach for testing exception handling programs
ACM SIGPLAN Notices
Virtual machine showdown: Stack versus registers
ACM Transactions on Architecture and Code Optimization (TACO)
Exceptional situations and program reliability
ACM Transactions on Programming Languages and Systems (TOPLAS)
A principled approach to nondeferred reference-counting garbage collection
Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environments
Fault-safe code motion for type-safe languages
Proceedings of the 6th annual IEEE/ACM international symposium on Code generation and optimization
Design of the Java HotSpot™ client compiler for Java 6
ACM Transactions on Architecture and Code Optimization (TACO)
Automatic documentation inference for exceptions
ISSTA '08 Proceedings of the 2008 international symposium on Software testing and analysis
Cache-aware cross-profiling for java processors
CASES '08 Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems
Translation and optimization for a core calculus with exceptions
Proceedings of the 2009 ACM SIGPLAN workshop on Partial evaluation and program manipulation
Exception analysis and points-to analysis: better together
Proceedings of the eighteenth international symposium on Software testing and analysis
Stack allocation of objects in the CACAO virtual machine
PPPJ '09 Proceedings of the 7th International Conference on Principles and Practice of Programming in Java
Cross-profiling for Java processors
Software—Practice & Experience
Program Transformations under Dynamic Security Policies
Electronic Notes in Theoretical Computer Science (ENTCS)
Dimensions of precision in reference analysis of object-oriented programming languages
CC'03 Proceedings of the 12th international conference on Compiler construction
Formalisation and implementation of an algorithm for bytecode verification of @NonNull types
Science of Computer Programming
Proceedings of the 9th International Conference on Principles and Practice of Programming in Java
A model of exception propagation in distributed applications
PPAM'05 Proceedings of the 6th international conference on Parallel Processing and Applied Mathematics
A portable and customizable profiling framework for java based on bytecode instruction counting
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Modeling and analysis of exception handling by using UML statecharts
FIDJI'04 Proceedings of the 4th international conference on Scientific Engineering of Distributed Java Applications
VEE '12 Proceedings of the 8th ACM SIGPLAN/SIGOPS conference on Virtual Execution Environments
An exception monitoring system for java
RISE'04 Proceedings of the First international conference on Rapid Integration of Software Engineering Techniques
Efficient bottom-up heap analysis for symbolic path-based data access summaries
Proceedings of the Tenth International Symposium on Code Generation and Optimization
Amplifying tests to validate exception handling code
Proceedings of the 34th International Conference on Software Engineering
Synthesizing API usage examples
Proceedings of the 34th International Conference on Software Engineering
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Sound control-flow graph extraction for java programs with exceptions
SEFM'12 Proceedings of the 10th international conference on Software Engineering and Formal Methods
Efficient and effective handling of exceptions in java points-to analysis
CC'13 Proceedings of the 22nd international conference on Compiler Construction
Extensible intraprocedural flow analysis at the abstract syntax tree level
Science of Computer Programming
An intermediate representation for speculative optimizations in a dynamic compiler
Proceedings of the 7th ACM workshop on Virtual machines and intermediate languages
Hi-index | 0.00 |
The Factored Control Flow Graph, FCFG, is a novel representation of a program's intraprocedural control flow, which is designed to efficiently support the analysis of programs written in languages, such as Java, that have frequently occurring operations whose execution may result in exceptional control flow. The FCFG is more compact than traditional CFG representations for exceptional control flow, yet there is no loss of precision in using the FCFG. In this paper, we introduce the FCFG representation and outline how standard forward and backward data flow analysis algorithms can be adapted to work on this representation. We also present empirical measurements of FCFG sizes for a large number of methods obtained from a variety of Java programs, and compare these sizes with those of a traditional CFG representation.