[llvm-commits] CVS: llvm/lib/Target/X86/X86TargetMachine.cpp X86TargetMachine.h

Brian Gaeke gaeke at cs.uiuc.edu
Wed Jun 18 16:44:01 PDT 2003


Changes in directory llvm/lib/Target/X86:

X86TargetMachine.cpp updated: 1.17 -> 1.18
X86TargetMachine.h updated: 1.9 -> 1.10

---
Log message:

lib/Target/X86/X86TargetMachine.{cpp,h}:  Add initial version
 (non-working) of llc guts for X86, and add a prototype for it.


---
Diffs of the changes:

Index: llvm/lib/Target/X86/X86TargetMachine.cpp
diff -u llvm/lib/Target/X86/X86TargetMachine.cpp:1.17 llvm/lib/Target/X86/X86TargetMachine.cpp:1.18
--- llvm/lib/Target/X86/X86TargetMachine.cpp:1.17	Sat Apr 26 15:11:04 2003
+++ llvm/lib/Target/X86/X86TargetMachine.cpp	Wed Jun 18 16:43:21 2003
@@ -41,6 +41,19 @@
   FrameInfo(TargetFrameInfo::StackGrowsDown, 8/*16 for SSE*/, 4) {
 }
 
+// llc backend for x86
+bool X86TargetMachine::addPassesToEmitAssembly(PassManager &PM,
+					       std::ostream &Out) {
+  PM.add(createLowerSwitchPass());
+  PM.add(createSimpleX86InstructionSelector(*this));
+  PM.add(createLocalRegisterAllocator());
+  PM.add(createX86FloatingPointStackifierPass());
+  PM.add(createPrologEpilogCodeInserter());
+  PM.add(createX86PeepholeOptimizerPass());
+  PM.add(createX86CodePrinterPass(Out));
+  return false; // success!
+}
+
 /// addPassesToJITCompile - Add passes to the specified pass manager to
 /// implement a fast dynamic compiler for this target.  Return true if this is
 /// not supported for this target.


Index: llvm/lib/Target/X86/X86TargetMachine.h
diff -u llvm/lib/Target/X86/X86TargetMachine.h:1.9 llvm/lib/Target/X86/X86TargetMachine.h:1.10
--- llvm/lib/Target/X86/X86TargetMachine.h:1.9	Sat Dec 28 21:13:05 2002
+++ llvm/lib/Target/X86/X86TargetMachine.h	Wed Jun 18 16:43:21 2003
@@ -42,6 +42,8 @@
   ///
   virtual bool addPassesToEmitMachineCode(PassManager &PM,
                                           MachineCodeEmitter &MCE);
+  
+  virtual bool addPassesToEmitAssembly(PassManager &PM, std::ostream &Out);
 };
 
 #endif





More information about the llvm-commits mailing list