Q. Bouchez, A. Colombet, C. Darte, F. Guillon, and . Rastello, Parallel copy motion, Proceedings of the 13th International Workshop on Software & Compilers for Embedded Systems, SCOPES '10, p.110
DOI : 10.1145/1811212.1811214

URL : https://hal.archives-ouvertes.fr/inria-00435844

F. Brandner and Q. Colombet, Copy elimination on data dependence graphs, Proceedings of the 27th Annual ACM Symposium on Applied Computing, SAC '12, 2012.
DOI : 10.1145/2245276.2232091

URL : https://hal.archives-ouvertes.fr/hal-00761499

Q. Colombet and B. Boissinot, Philip Brisk, Sebastian Hack, and Fabrice Rastello. Graph coloring and treescan register allocation using repairing

Q. Colombet, F. Brandner, and A. Darte, Studying optimal spilling in the light of ssa, International Conference on Compilers, Architectures , and Synthesis of Embedded Systems (CASES'11), 2011.
URL : https://hal.archives-ouvertes.fr/hal-01099016

A. Tavares, Q. Colombet, M. Bigonha, C. Guillon, F. Pereira et al., Decoupled graph-coloring register allocation with hierarchical aliasing, Proceedings of the 14th International Workshop on Software and Compilers for Embedded Systems, SCOPES '11, p.110
DOI : 10.1145/1988932.1988934

]. B. Alpern, M. N. Wegman, and F. K. Zadeck, Detecting equality of variables in programs, Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '88, p.111, 1988.
DOI : 10.1145/73560.73561

C. S. Ananian, The static single information form, 1999.

A. W. Appel and L. George, Optimal spilling for CISC machines with few registers, ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'01), p.243253, 2001.

A. W. Appel and J. Palsberg, Modern Compiler Implementation in Java, 2002.
DOI : 10.1017/CBO9780511811432

T. Ball and J. R. Larus, Branch prediction for free, ACM SIG- PLAN Conference on Programming Language Design and Implementation (PLDI'93), p.300313, 1993.

R. Barik, Ecient optimization of memory accesses in parallel programs, 2009.

L. A. Belady, A study of replacement algorithms for a virtual-storage computer, IBM Systems Journal, vol.5, issue.2, p.78101, 1966.
DOI : 10.1147/sj.52.0078

D. Bernstein, M. Golumbic, Y. Mansour, R. Pinter, D. Goldin et al., Spill code minimization techniques for optimizing compliers, Proceedings of the SIGPLAN '89 Conference on Programming language design and implementation, p.258263, 1989.

M. Biró, M. Hujter, and Z. Tuza, Precoloring extension. I. Interval graphs, Discrete Mathematics, vol.100, issue.1-3, p.267279, 1992.
DOI : 10.1016/0012-365X(92)90646-W

R. Bodík, R. Gupta, and M. L. Soa, Load-reuse analysis: design and evaluation, SIGPLAN Not, vol.34, issue.5, p.6476, 1999.

B. Boissinot, Towards an SSA based compiler back-end: some interesting properties of SSA and its extensions, 2011.

B. Boissinot, F. Brandner, A. Darte, B. De-dinechin, and F. Rastello, A non-iterative data-ow algorithm for computing liveness sets in strict SSA programs, International Symposium on Programming Languages and Systems, p.137154, 2011.

B. Boissinot, A. Darte, B. Dupont-de-dinechin, C. Guillon, and F. Rastello, Revisiting out-of-SSA translation for correctness, code quality , and eciency, International Symposium on Code Generation and Optimization (CGO'09, 2009.

B. Boissinot, S. Hack, D. Grund, B. Dupont-de-dinechin, and F. Rastello, Fast liveness checking for ssa-form programs, Proceedings of the sixth annual IEEE/ACM international symposium on Code generation and optimization , CGO '08, p.3544, 2008.
DOI : 10.1145/1356058.1356064

URL : https://hal.archives-ouvertes.fr/inria-00192219

F. Bouchez, A Study of Spilling and Coalescing in Register Allocation as Two Separate Phases, 2009.
URL : https://hal.archives-ouvertes.fr/tel-00403504

F. Bouchez, A. Darte, C. Guillon, and F. Rastello, Register allocation and spill complexity under SSA, 2005.

F. Bouchez, A. Darte, and F. Rastello, On the Complexity of Register Coalescing, International Symposium on Code Generation and Optimization (CGO'07), p.102114, 2007.
DOI : 10.1109/CGO.2007.26

F. Bouchez, A. Darte, and F. Rastello, On the complexity of spill everywhere under SSA form, ACM SIGPLAN/SIGBED Conference on Languages , Compilers, and Tools for Embedded Systems (LCTES'07), p.112, 2007.
URL : https://hal.archives-ouvertes.fr/ensl-00180322

F. Bouchez, A. Darte, and F. Rastello, Advanced conservative and optimistic register coalescing, Proceedings of the 2008 international conference on Compilers, architectures and synthesis for embedded systems, CASES '08, p.147156, 2008.
DOI : 10.1145/1450095.1450119

F. Bouchez, A. Darte, C. Guillon, and F. Rastello, Register allocation: What does the NP-completeness proof of Chaitin et al. really prove?, WDDD 2006, Fifth Annual Workshop on Duplicating, Deconstructing, and Debunking, part of ISCA-33, 2006.

M. Braun and S. Hack, Register spilling and live-range splitting for SSAform programs, Compiler Construction, p.174189, 2009.

M. Braun, C. Mallon, and S. Hack, Preference-Guided Register Assignment, Compiler Construction 2010, p.205223, 2010.
DOI : 10.1007/978-3-642-11970-5_12

P. Briggs, Register allocation via graph coloring, Rice university, 1992.

P. Briggs, K. D. Cooper, T. J. Harvey, and L. T. Simpson, Practical improvements to the construction and destruction of static single assignment form. Software: Practice and Experience, p.28859881, 1998.

P. Briggs, K. D. Cooper, K. Kennedy, and L. Torczon, Coloring heuristics for register allocation, Proceedings of the conference on Programming language design and implementation, p.275284, 1989.

P. Briggs, K. D. Cooper, and L. Torczon, Improvements to graph coloring register allocation, ACM Transactions on Programming Languages and Systems, vol.16, issue.3, p.428455, 1994.
DOI : 10.1145/177492.177575

P. Brisk, F. Dabiri, J. Macbeth, and M. Sarrafzadeh, Polynomial time graph coloring register allocation, 14th International Workshop on Logic and Synthesis, 2005.

P. Brisk, A. K. Verma, and P. Ienne, An optimistic and conservative register assignment heuristic for chordal graphs, Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems , CASES '07, p.209217, 2007.
DOI : 10.1145/1289881.1289919

S. Buchwald, A. Zwinkau, and T. Bersch, SSA-Based Register Allocation with PBQP, Proc. of the Conf. on Compiler Construction, p.4261
DOI : 10.1145/1273442.1250746

Z. Budimli¢, K. D. Cooper, T. Harvey, K. Kennedy, T. Oberg et al., Fast copy coalescing and live range identication, Proceedings of the ACM Sigplan Conference on Programming Language Design and Implementation (PLDI'02), p.2532, 2002.

D. Callahan and B. Koblenz, Register allocation via hierarchical graph coloring, PLDI '91: Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation, pp.192-203, 1991.

G. J. Chaitin, Register allocation & spilling via graph coloring, ACM SIGPLAN Symposium on Compiler Construction (CC'82)) of SIGPLAN Notices, p.98105, 1982.

G. J. Chaitin, M. A. Auslander, A. K. Chandra, J. Cocke, M. E. Hopkins et al., Register allocation via coloring, Computer Languages, vol.6, issue.1, p.4757, 1981.
DOI : 10.1016/0096-0551(81)90048-5

F. C. Chow and J. L. Hennessy, The priority-based coloring approach to register allocation, ACM Transactions on Programming Languages and Systems, vol.12, issue.4, p.501536, 1990.
DOI : 10.1145/88616.88621

K. D. Cooper and L. T. Simpson, Live range splitting in a graph coloring register allocator, Compiler Construction, p.174187, 1998.
DOI : 10.1007/BFb0026430

K. D. Cooper and L. Torczon, Engineering a Compiler, 2004.

R. Cytron, J. Ferrante, B. Rosen, M. Wegman, and K. Zadeck, Eciently computing static single assignment form and the control dependence graph, ACM Transactions on Programming Languages and Systems, vol.13, issue.4, p.451490, 1991.

B. Dupont-de-dinechin, F. De-ferrière, C. Guillon, and A. Stoutchinin, Code generator optimizations for the ST120 DSP-MCU core, Proceedings of the international conference on Compilers, architectures, and synthesis for embedded systems , CASES '00, p.93102, 2000.
DOI : 10.1145/354880.354894

D. Ebner, B. Scholz, and A. Krall, Progressive spill code placement, Proceedings of the 2009 international conference on Compilers, architecture, and synthesis for embedded systems, CASES '09, p.7786, 2009.
DOI : 10.1145/1629395.1629408

E. Eckstein, Code Optimization for Digital Signal Processors, 2003.

J. Fabri, Automatic storage optimization, Proceedings of the SIGPLAN symposium on Compiler construction, p.8391, 1979.

P. Faraboschi, G. Brown, J. A. Fisher, G. Desoli, and F. Homewood, Lx: A technology platform for customizable VLIW embedded processing, Proceedings of the 27th International Symposium on Computer Architecture, p.203213, 2000.

M. Farach-colton and V. Liberatore, On Local Register Allocation, SODA '98: Proceedings of the ninth annual ACM-SIAM symposium on Discrete algorithms, p.564573, 1998.
DOI : 10.1006/jagm.2000.1095

J. Fisher, Trace Scheduling: A Technique for Global Microcode Compaction, IEEE Transactions on Computers, vol.30, issue.7, p.30478490, 1981.
DOI : 10.1109/TC.1981.1675827

R. A. Freiburghouse, Register allocation via usage counts, Communications of the ACM, vol.17, issue.11
DOI : 10.1145/361179.361201

S. M. Freudenberger, T. R. Gross, and P. G. Lowney, Avoidance and suppression of compensation code in a trace scheduling compiler, ACM Transactions on Programming Languages and Systems, vol.16, issue.4, p.11561214, 1994.
DOI : 10.1145/183432.183446

C. Fu and K. Wilken, A faster optimal register allocator, ACM/IEEE International Symposium on Microarchitecture (MICRO'35), pp.245-256, 2002.

G. Gao, J. Amaral, J. Dehnert, and R. Towle, The SGI Pro64 compiler infrastructure, Tutorial, International Conference on Parallel Architectures and Compilation Techniques, 2000.

M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, 1979.

L. George and A. W. Appel, Iterated register coalescing, ACM Transactions on Programming Languages and Systems, vol.18, issue.3, p.300324, 1996.

D. W. Goodwin and K. D. Wilken, Optimal and near-optimal global register allocation using 0-1 integer programming. Software: Practice and Experience, pp.929-965, 1996.

D. Grund and S. Hack, A Fast Cutting-Plane Algorithm for Optimal Coalescing, Proc. of the Conf. on Compiler Construction, CC'07, p.111125, 2007.
DOI : 10.1007/978-3-540-71229-9_8

J. Guo, M. J. Garzarán, and D. Padua, The Power of Belady???s Algorithm in Register Allocation for Long Basic Blocks, Languages and Compilers for Parallel Computing, p.374390, 2004.
DOI : 10.1007/978-3-540-24644-2_24

S. Hack, Register Allocation for Programs in SSA-Form, 2007.
DOI : 10.1007/11688839_20

S. Hack and G. Goos, Optimal register allocation for SSA-form programs in polynomial time, Information Processing Letters, vol.98, issue.4, p.150155, 2006.
DOI : 10.1016/j.ipl.2006.01.008

S. Hack and G. Goos, Copy coalescing by graph recoloring, ACM SIGPLAN Conference on Programming Language Design and Implementation, p.227237, 2008.

S. Hack, D. Grund, and G. Goos, Register Allocation for Programs in SSA-Form, International Conference on Compiler Construction, 2006.
DOI : 10.1007/11688839_20

J. L. Hennessy and D. A. Patterson, Computer Architecture: A Quantitative Approach, 2003.

U. Hirnschrott, A. Krall, and B. Scholz, Graph Coloring vs. Optimal Register Allocation for Optimizing Compilers, JMLC, p.202213, 2003.
DOI : 10.1007/978-3-540-45213-3_26

L. P. Horwitz, R. M. Karp, R. E. Miller, and S. Winograd, Index Register Allocation, Journal of the ACM, vol.13, issue.1, p.4361, 1966.
DOI : 10.1145/321312.321317

W. W. Hwu, S. A. Mahlke, W. Y. Chen, P. P. Chang, N. J. Warter et al., The Superblock: An eective technique for VLIW and superscalar compilation, The Journal of Supercomputing, vol.7, issue.12, p.229248, 1993.

A. B. Kempe, On the Geographical Problem of the Four Colours, American Journal of Mathematics, vol.2, issue.3, p.193200, 1879.
DOI : 10.2307/2369235

K. Knobe and K. Zadeck, Register allocation using control trees, 1992.

D. R. Koes and S. C. Goldstein, A global progressive register allocator, ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'06), p.204215, 2006.

D. R. Koes and S. C. Goldstein, Register allocation deconstructed, Proceedings of th 12th International Workshop on Software and Compilers for Embedded Systems, SCOPES '09, p.2130, 2009.
DOI : 10.1145/1543820.1543824

T. Kong and K. D. Wilken, Precise register allocation for irregular architectures, Proceedings. 31st Annual ACM/IEEE International Symposium on Microarchitecture, p.297307, 1998.
DOI : 10.1109/MICRO.1998.742791

C. Lattner and V. S. Adve, LLVM: A compilation framework for lifelong program analysis & transformation, International Symposium on Code Generation and Optimization, 2004. CGO 2004., p.7588, 2004.
DOI : 10.1109/CGO.2004.1281665

J. K. Lee, J. Palsberg, and F. M. Pereira, Aliased register allocation, ICALP, 2007.

A. Leung and L. George, Static single assignment form for machine code, Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI'99), p.204214, 1999.

V. Liberatore, M. Farach-colton, and U. Kremer, Evaluation of Algorithms for Local Register Allocation, 8th International Conference on Compiler Construction (CC'99), held as part of ETAPS'99, p.137152, 1999.
DOI : 10.1007/978-3-540-49051-7_10

F. Lu, L. Wang, X. Feng, Z. Li, and Z. Zhang, Exploiting idle register classes for fast spill destination, Proceedings of the 22nd annual international conference on Supercomputing , ICS '08, p.319326, 2008.
DOI : 10.1145/1375527.1375574

G. Lueh, T. Gross, and A. , Adl-Tabatabai. Fusion-based register allocation, ACM Transactions on Programming Languages and Systems, vol.22, issue.3, p.431470, 2000.

C. May, The parallel assignment problem redened, IEEE Transactions on Software Engineering, vol.15, issue.6, p.821824, 1989.

R. Morgan, Building an Optimizing Compiler, 1998.

H. Mössenböck and M. Pfeier, Linear Scan Register Allocation in the Context of SSA Form and Register Constraints, International Conference on Compiler Construction (CC'02), volume 2304 of LNCS, p.229246
DOI : 10.1007/3-540-45937-5_17

V. K. Nandivada, F. Pereira, and J. Palsberg, A framework for end-to-end verication and evaluation of register allocators, SAS, p.153169

C. Norris and L. L. Pollock, Register allocation over the program dependence graph, SIGPLAN Notices, vol.29, issue.6, p.266277, 1994.

R. Odaira, T. Nakaike, T. Inagaki, H. Komatsu, and T. Nakatani, Coloring-based coalescing for graph coloring register allocation, Proceedings of the 8th annual IEEE/ ACM international symposium on Code generation and optimization, CGO '10, p.160169, 2010.
DOI : 10.1145/1772954.1772978

J. Park and S. Moon, Optimistic register coalescing, Proceedings of the International Conference on Parallel Architecture and Compilation Techniques (PACT'98), p.196204, 1998.
DOI : 10.1145/1011508.1011512

J. Park and S. Moon, Optimistic register coalescing, ACM Transactions on Programming Languages and Systems, vol.26, issue.4, 2004.
DOI : 10.1145/1011508.1011512

D. A. Patterson and J. L. Hennessy, Computer Organization and Design - The Hardware/Software Interface, 2012.

F. Pereira, Register Allocation by Puzzle Solving, 2008.

F. M. Pereira and J. Palsberg, Register Allocation Via Coloring of Chordal Graphs, Proceedings of the Asian Symposium on Programming Languages and Systems (APLAS'05), p.315329, 2005.
DOI : 10.1007/11575467_21

F. M. Pereira and J. Palsberg, Register allocation by puzzle solving, PLDI '08: Proceedings of the 2008 ACM SIGPLAN conference on Programming language design and implementation, p.216226, 2008.

F. M. Pereira and J. Palsberg, SSA Elimination after Register Allocation, 18th International Conference on Compiler Construction, p.158173, 2009.
DOI : 10.1007/978-3-642-00722-4_12

F. M. Pereira and J. Palsberg, Punctual Coalescing, Proceedings of the International Conference on Compiler Construction, CC'10, p.165184, 2010.
DOI : 10.1007/978-3-642-11970-5_10

M. Poletto, D. R. Engler, and M. F. Kaashoek, tcc: a system for fast, exible, and high-level dynamic code generation, SIGPLAN Notices, vol.32, issue.5, p.109121, 1997.

M. Poletto and V. Sarkar, Linear scan register allocation, ACM Transactions on Programming Languages and Systems, vol.21, issue.5, p.895913, 1999.
DOI : 10.1145/330249.330250

G. Ramalingam, On loops, dominators, and dominance frontiers, ACM Transactions on Programming Languages and Systems, vol.24, issue.5, p.455490, 2002.

F. Rastello, C. Francois-de-ferrière, and . Guillon, Optimizing translation out of SSA using renaming constraints, International Symposium on Code Generation and Optimization, 2004. CGO 2004., pp.265-276, 2004.
DOI : 10.1109/CGO.2004.1281680

L. Rideau, B. P. Serpette, and X. Leroy, Tilting at Windmills with Coq: Formal Verification of a Compilation Algorithm for Parallel Moves, Journal of Automated Reasoning, vol.13, issue.12, p.307326, 2008.
DOI : 10.1007/s10817-007-9096-8

URL : https://hal.archives-ouvertes.fr/inria-00289709

H. Rong, Tree register allocation, Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture, Micro-42, p.6777
DOI : 10.1145/1669112.1669123

B. K. Rosen, M. N. Wegman, and F. K. Zadeck, Global value numbers and redundant computations, Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , POPL '88, p.1227, 1988.
DOI : 10.1145/73560.73562

V. Sarkar and R. Barik, Extended Linear Scan: An Alternate Foundation for Global Register Allocation, International Conference on Compiler Construction, p.141155, 2007.
DOI : 10.1007/978-3-540-71229-9_10

R. Sethi and J. D. Ullman, The Generation of Optimal Code for Arithmetic Expressions, Journal of the ACM, vol.17, issue.4, p.715728, 1970.
DOI : 10.1145/321607.321620

J. Singer, Static program analysis based on virtual register renaming, 2006.

M. D. Smith, G. Ramsey, and . Holloway, A generalized algorithm for graph-coloring register allocation, PLDI '04: Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation, p.277288, 2004.

V. C. Sreedhar, R. D. Ju, D. M. Gillies, and V. Santhanam, Translating Out of Static Single Assignment Form, 6th International Symposium on Static Analysis (SAS'99), volume 1694 of LNCS, 1999.
DOI : 10.1007/3-540-48294-6_13

Y. N. Srikant and P. Shankar, The Compiler Design Handbook: Optimizations and Machine Code Generation, 2007.
DOI : 10.1201/9781420040579

O. Traub, G. Holloway, and M. D. Smith, Quality and speed in linear-scan register allocation, SIGPLAN Not, vol.33, issue.5, p.142151, 1998.

C. Wimmer and M. Franz, Linear scan register allocation on SSA form, Proceedings of the 8th annual IEEE/ ACM international symposium on Code generation and optimization, CGO '10, p.170179, 2010.
DOI : 10.1145/1772954.1772979

C. Wimmer and H. Mössenböck, Optimized interval splitting in a linear scan register allocator, Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments , VEE '05, p.132141, 2005.
DOI : 10.1145/1064979.1064998

B. Yang, S. Moon, S. Park, J. Lee, S. Lee et al., Latte: A java vm just-in-time compiler with fast and ecient register allocation, Parallel Architectures and Compilation Techniques, International Conference on, p.128, 1999.

M. Yannakakis and F. Gavril, The maximum k-colorable subgraph problem for chordal graphs, Information Processing Letters, vol.24, issue.2, p.133137, 1987.
DOI : 10.1016/0020-0190(87)90107-4