[llvm-commits] CVS: llvm/docs/WritingAnLLVMBackend.html

Misha Brukman brukman at cs.uiuc.edu
Mon May 16 19:27:41 PDT 2005

Changes in directory llvm/docs:

WritingAnLLVMBackend.html updated: 1.5 -> 1.6
Log message:

Recommend writing new instruction selectors using pattern-based mechanisms

Diffs of the changes:  (+9 -10)

 WritingAnLLVMBackend.html |   19 +++++++++----------
 1 files changed, 9 insertions(+), 10 deletions(-)

Index: llvm/docs/WritingAnLLVMBackend.html
diff -u llvm/docs/WritingAnLLVMBackend.html:1.5 llvm/docs/WritingAnLLVMBackend.html:1.6
--- llvm/docs/WritingAnLLVMBackend.html:1.5	Mon May 16 21:12:32 2005
+++ llvm/docs/WritingAnLLVMBackend.html	Mon May 16 21:27:30 2005
@@ -109,15 +109,14 @@
 step can be almost automated.</li>
-<p>Now, for static code generation you also need to write an instruction
-selector for your platform: see <tt>lib/Target/*/*ISelSimple.cpp</tt> which
-is no longer "simple" but it gives you the idea: you have to be able to create
-MachineInstrs for any given LLVM instruction using the <tt>InstVisitor</tt>
-pattern, and produce a <tt>MachineFunction</tt> with
-<tt>MachineBasicBlock</tt>s full of <tt><a
-href="CodeGenerator.html#machineinstr">MachineInstr</a></tt>s for a
-corresponding LLVM Function.  Creating an instruction selector is perhaps the
-most time-consuming part of creating a back-end.</p> 
+<p>You also need to write an instruction selector for your platform.  The
+recommended method is the pattern-matching instruction selector.  You can see
+examples in other targets: <tt>lib/Target/*/*ISelPattern.cpp</tt>.  The former
+method for writing instruction selectors (<b>not</b> recommended) is
+encapsulated in <tt>lib/Target/*/*ISelSimple.cpp</tt>, which are
+<tt>InstVisitor</tt>-based translators, generating code for an LLVM instruction
+at a time.  Creating an instruction selector is perhaps the most time-consuming
+part of creating a back-end.</p>
 <p>To create a JIT for your platform:</p>
@@ -252,7 +251,7 @@
   <a href="http://misha.brukman.net">Misha Brukman</a><br>
   <a href="http://llvm.cs.uiuc.edu">The LLVM Compiler Infrastructure</a>
-  Last modified: $Date: 2005/05/17 02:12:32 $
+  Last modified: $Date: 2005/05/17 02:27:30 $

More information about the llvm-commits mailing list