[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPC32TargetMachine.h PPCJITInfo.cpp PPCJITInfo.h PPCTargetMachine.cpp PPC32JITInfo.h

Chris Lattner lattner at cs.uiuc.edu
Fri Oct 14 16:53:53 PDT 2005



Changes in directory llvm/lib/Target/PowerPC:

PPC32TargetMachine.h updated: 1.10 -> 1.11
PPCJITInfo.cpp updated: 1.14 -> 1.15
PPCJITInfo.h updated: 1.6 -> 1.7
PPCTargetMachine.cpp updated: 1.71 -> 1.72
PPC32JITInfo.h (r1.7) removed
---
Log message:

Merge PPCJITInfo.h and PPC32JITInfo.h.  Note that the PowerPCJITInfo
and PPC32JITInfo classes should be merged.


---
Diffs of the changes:  (+22 -4)

 PPC32TargetMachine.h |    2 +-
 PPCJITInfo.cpp       |    2 +-
 PPCJITInfo.h         |   20 +++++++++++++++++++-
 PPCTargetMachine.cpp |    2 +-
 4 files changed, 22 insertions(+), 4 deletions(-)


Index: llvm/lib/Target/PowerPC/PPC32TargetMachine.h
diff -u llvm/lib/Target/PowerPC/PPC32TargetMachine.h:1.10 llvm/lib/Target/PowerPC/PPC32TargetMachine.h:1.11
--- llvm/lib/Target/PowerPC/PPC32TargetMachine.h:1.10	Fri Oct 14 18:51:18 2005
+++ llvm/lib/Target/PowerPC/PPC32TargetMachine.h	Fri Oct 14 18:53:41 2005
@@ -16,7 +16,7 @@
 
 #include "PPCFrameInfo.h"
 #include "PPCSubtarget.h"
-#include "PPC32JITInfo.h"
+#include "PPCJITInfo.h"
 #include "PPC32InstrInfo.h"
 #include "llvm/Target/TargetMachine.h"
 #include "llvm/Target/TargetFrameInfo.h"


Index: llvm/lib/Target/PowerPC/PPCJITInfo.cpp
diff -u llvm/lib/Target/PowerPC/PPCJITInfo.cpp:1.14 llvm/lib/Target/PowerPC/PPCJITInfo.cpp:1.15
--- llvm/lib/Target/PowerPC/PPCJITInfo.cpp:1.14	Fri Jul 22 15:49:37 2005
+++ llvm/lib/Target/PowerPC/PPCJITInfo.cpp	Fri Oct 14 18:53:41 2005
@@ -12,7 +12,7 @@
 //===----------------------------------------------------------------------===//
 
 #define DEBUG_TYPE "jit"
-#include "PPC32JITInfo.h"
+#include "PPCJITInfo.h"
 #include "PPC32Relocations.h"
 #include "llvm/CodeGen/MachineCodeEmitter.h"
 #include "llvm/Config/alloca.h"


Index: llvm/lib/Target/PowerPC/PPCJITInfo.h
diff -u llvm/lib/Target/PowerPC/PPCJITInfo.h:1.6 llvm/lib/Target/PowerPC/PPCJITInfo.h:1.7
--- llvm/lib/Target/PowerPC/PPCJITInfo.h:1.6	Fri Jul 29 18:32:02 2005
+++ llvm/lib/Target/PowerPC/PPCJITInfo.h	Fri Oct 14 18:53:41 2005
@@ -1,4 +1,4 @@
-//===- PowerPCJITInfo.h - PowerPC impl. of the JIT interface ----*- C++ -*-===//
+//===- PPCJITInfo.h - PowerPC impl. of the JIT interface --------*- C++ -*-===//
 //
 //                     The LLVM Compiler Infrastructure
 //
@@ -19,6 +19,7 @@
 namespace llvm {
   class TargetMachine;
 
+  // FIXME: Merge into one PPCJITInfo class.
   class PowerPCJITInfo : public TargetJITInfo {
   protected:
     TargetMachine &TM;
@@ -31,6 +32,23 @@
     ///
     virtual void addPassesToJITCompile(FunctionPassManager &PM);
   };
+  
+  class PPC32JITInfo : public PowerPCJITInfo {
+  public:
+    PPC32JITInfo(TargetMachine &tm) : PowerPCJITInfo(tm) {}
+    
+    virtual void *emitFunctionStub(void *Fn, MachineCodeEmitter &MCE);
+    virtual LazyResolverFn getLazyResolverFunction(JITCompilerFn);
+    virtual void relocate(void *Function, MachineRelocation *MR,
+                          unsigned NumRelocs, unsigned char* GOTBase);
+    
+    /// replaceMachineCodeForFunction - Make it so that calling the function
+    /// whose machine code is at OLD turns into a call to NEW, perhaps by
+    /// overwriting OLD with a branch to NEW.  This is used for self-modifying
+    /// code.
+    ///
+    virtual void replaceMachineCodeForFunction(void *Old, void *New);
+  };
 }
 
 #endif


Index: llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
diff -u llvm/lib/Target/PowerPC/PPCTargetMachine.cpp:1.71 llvm/lib/Target/PowerPC/PPCTargetMachine.cpp:1.72
--- llvm/lib/Target/PowerPC/PPCTargetMachine.cpp:1.71	Fri Oct 14 18:51:18 2005
+++ llvm/lib/Target/PowerPC/PPCTargetMachine.cpp	Fri Oct 14 18:53:41 2005
@@ -14,7 +14,7 @@
 #include "PPC.h"
 #include "PPCFrameInfo.h"
 #include "PPC32TargetMachine.h"
-#include "PPC32JITInfo.h"
+#include "PPCJITInfo.h"
 #include "llvm/Module.h"
 #include "llvm/PassManager.h"
 #include "llvm/Analysis/Verifier.h"






More information about the llvm-commits mailing list