5 citations found. Retrieving documents...
Erik Ruf. Optimizing sparse representations for dataflow analysis. ACM SIGPLAN Notices, 30(3):50--61, March 1995.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Sparse Functional Stores for Imperative Programs - Steensgaard (1995)   (17 citations)  (Correct)

....like I O stream state, but for the purposes of this paper, we ignore these other values. Stores are explicit values produced by primitive computations (as in denotational semantics for imperative languages [CF89] An assignment (that cannot be eliminated by the methods described in [WCES94b] or [Ruf95] is represented by a primitive operation (update) that takes a store argument and produces a new store. A VDG demonstrating pointer references and updates through pointers is shown in Figure 2. The initial VDG has many advantages when performing optimizations that only require local knowledge ....

....for performing sparseness increasing transformations. For C programs, any location whose address is never used as a value in the program 1 is trivially 1 The location will appear as a value in the VDG, but only as an argument to lookup and update operations. removed from the store domain [Ruf95] Values originally written to the location can be directed to their uses without being written to the location. This optimization can easily be performed on functional, graphical, program representations, while they are impossible to represent directly in CFGs. The optimizations may be ....

[Article contains additional citation context not shown here]

Erik Ruf. Optimizing sparse representations for dataflow analysis. In Proceedings of the ACM SIGPLAN Workshop on Intermediate Representations (IR'95), San Francisco, CA, January 1995.


Compiler Representations for Heterogeneous Processing - Weaver (1995)   (Correct)

....global code motion) have been implemented on top of this IR. Click takes a different approach to optimization ordering by combining optimistic optimizations within a single data flow framework. In a PDG Weise et al. present the Value Dependence Graph (VDG) for representing imperative programs [68, 57]. The VDG grew out of Fuse, a representation for functional programs, and VDG retains a functional flavor. The VDG is much like a PDG coupled with SSA form. Like GSA, the VDG has fl nodes that represent the merge of a value from the two halves of a conditional, but the VDG uses function calls to ....

....a PDG except that control dependences are replaced by demand dependences. Finally, dPDGs are sequentialized using one of the standard algorithms for sequentializing PDGs. Though the VDG should be easy to extend for other models of parallelism, it currently supports only uniprocessor targets. Ruf [57] presents transformations that produce a sparse form of the VDG tailored for specific analyses. He reuses the VDG structure, so the compiler does not need an entirely different representation for this specialized IR. The use of specialized representations may aid compilation to different models. ....

Erik Ruf. Optimizing sparse representations for dataflow analysis. In Workshop on Intermediate Representations, San Francisco, CA, January 1995.


Slicing Pointers and Procedures (abstract) - Ernst (1995)   (Correct)

....update and the lookup, then the update s value input can be routed directly to the consumer(s) of the lookup. The lookup (and possibly the update as well) becomes dead and can be removed from the graph. Figure 4 demonstrates this short circuiting transformation, which, along with arity raising [WCES94b, Ruf94b], eliminated all store operations from Figure 2. The transformation depends only on location equality, not on the location argument being a constant. Arbitrary pointer manipulations complicate proving that the location is not modified between the update and the lookup. Explicit representation of ....

....to account for. Additionally, information about pointers is easy to reflect in the graph (by short circuiting (Figure 4) store splitting [SW93, Ste94b] and other transformations) making it immediately available to all analyses. 3. 2 Pointer analysis VDGomatic makes use of a points to analysis [CWZ90, HEGV93, Ruf94b], which indicates the possible values for each location valued expression. In our representation a points to analysis is more natural than an alias analysis, which produces a set of possible alias pairs. In the worst case, 22 Update Update Update store store 253 Lookup x y 2 22 Update ....

Erik Ruf. Optimizing sparse representations for dataflow analysis. Submitted for publication, September 1994.


Context-Insensitive Alias Analysis Reconsidered - Ruf (1995)   (100 citations)  Self-citation (Ruf)   (Correct)

....or store type; the standard control flow graph representation of programs can be viewed as a degenerate VDG in which all inputs and outputs are of store type. Our analyses apply equally well to control flow graph representations; they merely run faster on the VDG because it is more sparse [Ruf95] We use a points to model of aliasing; that is, at each program point, our analysis models the contents of storage locations (points to relations) rather than modeling equivalence classes of location valued expressions (alias relations) In this respect, our analysis is similar to [RM88, ....

....absolute number. ffl Program representation. Before our points to analyses run, our compiler has already performed significant amounts of value numbering, loop invariant code motion, and dead code removal, along with an SSAlike transformation that removes non addressed variables from the store [Ruf95, Section 3] It may be the case that, without these optimizations, more spurious (though irrelevant) points to pairs would be generated. ffl Problem formulation. Because an alias pair formulation of the problem manipulates a set of locationvalued expressions that is potentially far larger than ....

E. Ruf. Optimizing sparse representations for dataflow analysis. In ACM SIGPLAN Workshop on Intermediate Representations (IR'95), pages 50--61, Jan. 1995. Proceedings available as Microsoft Research technical report MSR-TR-95-01.


Active Libraries and Universal Languages - Veldhuizen (2004)   (1 citation)  (Correct)

No context found.

Erik Ruf. Optimizing sparse representations for dataflow analysis. ACM SIGPLAN Notices, 30(3):50--61, March 1995.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC