[llvm-commits] CVS: llvm-www/pubs/2008-06-LCTES-ISelUsingSSAGraphs.html 2008-06-LCTES-ISelUsingSSAGraphs.pdf index.html

Chris Lattner sabre at nondot.org
Thu Dec 18 10:02:23 PST 2008



Changes in directory llvm-www/pubs:

2008-06-LCTES-ISelUsingSSAGraphs.html added (r1.1)
2008-06-LCTES-ISelUsingSSAGraphs.pdf added (r1.1)
index.html updated: 1.86 -> 1.87
---
Log message:

Add a new paper from LCTES'08


---
Diffs of the changes:  (+64 -0)

 2008-06-LCTES-ISelUsingSSAGraphs.html |   58 ++++++++++++++++++++++++++++++++++
 2008-06-LCTES-ISelUsingSSAGraphs.pdf  |    0 
 index.html                            |    6 +++
 3 files changed, 64 insertions(+)


Index: llvm-www/pubs/2008-06-LCTES-ISelUsingSSAGraphs.html
diff -c /dev/null llvm-www/pubs/2008-06-LCTES-ISelUsingSSAGraphs.html:1.1
*** /dev/null	Thu Dec 18 12:01:15 2008
--- llvm-www/pubs/2008-06-LCTES-ISelUsingSSAGraphs.html	Thu Dec 18 12:01:04 2008
***************
*** 0 ****
--- 1,58 ----
+ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+ <html>
+ <head>
+   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+   <link rel="stylesheet" href="http://llvm.org/llvm.css" type="text/css" media="screen" />
+   <title>Generalized Instruction Selection using SSA-Graphs</title>
+ </head>
+ <body>
+ 
+ <div class="pub_title">
+   Generalized Instruction Selection using SSA-Graphs
+ </div>
+ <div class="pub_author">
+   Dietmar Ebner, Florian Brandner, Bernhard Scholz, Andreas Krall, 
+   Peter Wiedermann and Albrecht Kadlec
+ </div>
+ 
+ <h2>Abstract:</h2>
+ <blockquote>
+ <p>Instruction selection is a well-studied compiler phase that translates 
+ the compiler's intermediate representation of programs to a sequence 
+ of target-dependent machine instructions optimizing for 
+ various compiler objectives (e.g. speed and space). Most existing 
+ instruction selection techniques are limited to the scope of a single 
+ statement or a basic block and cannot cope with irregular instruction 
+ sets that are frequently found in embedded systems. </p>
+ 
+ <p> We consider an optimal technique for instruction selection that 
+ uses Static Single Assignment (SSA) graphs as an intermediate 
+ representation of programs and employs the Partitioned Boolean 
+ Quadratic Problem (PBQP) for ļ¬nding an optimal instruction selection. 
+ While existing approaches are limited to instruction patterns that 
+ can be expressed in a simple tree structure, we consider complex 
+ patterns producing multiple results at the same 
+ time including pre/post increment addressing modes, div-mod instructions, 
+ and SIMD extensions frequently found in embedded 
+ systems. Although both instruction selection on SSA-graphs and 
+ PBQP are known to be NP-complete, the problem can be solved 
+ efficiently - even for very large instances. </p>
+ 
+ <p>
+ Our approach has been implemented in LLVM for an embedded 
+ ARMv5 architecture. Extensive experiments show speedups of up 
+ to 57% on typical DSP kernels and up to 10% on SPECINT 2000 
+ and MiBench benchmarks. All of the test programs could be com- 
+ piled within less than half a minute using a heuristic PBQP solver 
+ that solves 99.83% of all instances optimally. </p>
+ 
+ </blockquote>
+ 
+ <h2>Download:</h2>
+ <ul>
+   <li><a href="2008-06-LCTES-ISelUsingSSAGraphs.pdf">Generalized Instruction 
+   Selection using SSA-Graphs</a> (PDF)</li>
+ </ul>
+ 
+ </body>
+ </html>


Index: llvm-www/pubs/2008-06-LCTES-ISelUsingSSAGraphs.pdf


Index: llvm-www/pubs/index.html
diff -u llvm-www/pubs/index.html:1.86 llvm-www/pubs/index.html:1.87
--- llvm-www/pubs/index.html:1.86	Fri Dec  5 12:32:02 2008
+++ llvm-www/pubs/index.html	Thu Dec 18 12:01:05 2008
@@ -39,6 +39,12 @@
 <i>Proc. International SPIN Workshop on Model Checking of Software (SPIN 
 2008)</i>, August 2008</li>
 
+<li>"<a href="2008-06-LCTES-ISelUsingSSAGraphs.html">Generalized Instruction Selection 
+using SSA-Graphs</a>"<br>
+Dietmar Ebner, Florian Brandner, Bernhard Scholz, Andreas Krall, Peter Wiedermann and Albrecht Kadlec<br>
+<i>Proc. Languages Compilers and Tools for Embedded Systems 2008 (LCTES'08)</i>, June, 2008</li>
+
+
 <li>"<a href="2008-06-13-SPAA-STMDataPartitioning.html">Automatic Data Partitioning in Software 
 Transactional Memories</a>"<br>
 Torvald Riegel, Christof Fetzer, and Pascal Felber<br>






More information about the llvm-commits mailing list