2 citations found. Retrieving documents...
Guei-Yuan Lueh. Fusion Based Register Allocation. PhD thesis, CMU, 1997.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Region-based Register Allocation for EPIC Architectures - Kim (2001)   (1 citation)  (Correct)

....most loops to the outermost loops. When a variable is assigned to a register, the shuffle code is placed at the entry and exit points of a loop. Like previous structure based region formations, this is not sensitive to actual patterns of execution and frequencies of the region boundaries. Lueh [33] uses graph fusion in his fusion based register allocation. His approach starts with an interference graph for each region of the program where a region can be basic block, super block, a loop nest, or some combinations of these. Regions are merged in a bottom up manner by the order of frequency ....

....each minimum unit of live range while taking care to include only one from caller save callee save registers for each variable segment and picking only Ncaller and Ncallee registers. Other heuristics are possible: for example, compute the difference of caller save caller save costs and priorities[33]. The actual priority function with predicate analysis we used in Chapter 1.2.3 is defined as, Priority(Iv) P(lv) 7.1.2 Live Range Split by Calling Convention For the live range which does not includes any function calls, Chow s algorithm uses up caller save registers before it starts to use ....

Guei-Yuan Lueh. Fusion Based Register Allocation. PhD thesis, CMU, 1997.


Fusion-Based Register Allocation - Lueh, Gross, Adl-Tabatabai (1997)   (1 citation)  Self-citation (Lueh)   (Correct)

....if a definition of a virtual register reaches the entry exit of a basic block. live decides if the value of a virtual register is used referenced after the entry exit of a basic block. Various approaches may split live ranges to lower register pressure while constructing the interference graph [30]. 3.2 Coalescing The coalescing phase eliminates copy instructions that move data values between two nonconflicting live ranges by coalescing the two live ranges into one. If a copy instruction moves a value from a live range to a physical register, or from a physical register to a live range ....

....for a live range is 184 bytes. What a non root live range needs is the parent pointer to proceed to the root to retrieve live range information. The other fields of the structure are never used and therefore wasted. To alleviate the problem, another structure, live range union, is created, see [30] for details. Merging interference edges. The two live ranges have their own interference edges, lr 1 ) and (lr 2 ) prior to unioning. In this step, lr 1 ) and (lr 2 ) are merged. If lr 12 is lr 1 , then each interference edge, lr 2 ; X] of lr 2 is updated by substituting lr 2 with lr 12 ....

[Article contains additional citation context not shown here]

G.-Y. Lueh. Fusion-Based Register Allocation. PhD thesis, Carnegie Mellon University, May 1997. CMU-CS-97-135.

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