enter search term and/or author name
Corrigendum: a new, simpler linear-time dominators algorithm
Adam L. Buchsbaum, Haim Kaplan, Anne Rogers, Jeffery R. Westbrook
Corrigendum to ACM Transactions on Programming Languages and Systems, 20(6):1265--1296, 1998....
When do bounds and domain propagation lead to the same search space?
Christian Schulte, Peter J. Stuckey
This article explores the question of when two propagation-based constraint systems have the same behavior, in terms of search space. We categorize the behavior of domain and bounds propagators for primitive constraints, and provide theorems that...
A practical and fast iterative algorithm for φ-function computation using DJ graphs
Dibyendu Das, U. Ramakrishna
We present a new and practical method of computing φ-function for all variables in a function for Static Single Assignment (SSA) form. The new algorithm is based on computing the Merge set of each node in the control flow graph of a...
Resource aware programming
Luc Moreau, Christian Queinnec
We introduce the Resource Aware Programming framework, which allows users to monitor the resources used by their programs and to programmatically express policies for the management of such resources. The framework is based on a notion of...
CCured: type-safe retrofitting of legacy software
George C. Necula, Jeremy Condit, Matthew Harren, Scott McPeak, Westley Weimer
This article describes CCured, a program transformation system that adds type safety guarantees to existing C programs. CCured attempts to verify statically that memory errors cannot occur, and it inserts run-time checks where static verification is...
Efficient and effective array bound checking
Thi Viet Nga Nguyen, François Irigoin
Array bound checking refers to determining whether all array references in a program are within their declared ranges. This checking is critical for software verification and validation because subscripting arrays beyond their declared sizes may...
Comparing conservative coalescing criteria
Graph-coloring register allocators can eliminate copy instructions from a program by coalescing the interference graph nodes corresponding to the source and destination. Briggs showed that by limiting coalescing to those situations that he dubbed...