<div>This is the JITCodeEmitter patch, this is to facilitate cordening off the JIT code from the<br>future direct object emission code (i) supporting the upcoming ObjectCodeEmitter <br>class, on the X86, ARM, Alpha, and PowerPC platforms. This involves generic <br>
parameterization of backend code emitters to allow code emission to allotted <br>class types, JITCodeEmitter and ObjectCodeEmitter.<br> include/llvm/CodeGen/MachineCodeEmitter.h<br> * untouched until ObjectCodeEmitter takes over its functionality in the <br>
MachO backend, then it will become an abstract class.<br> include/llvm/CodeGen/JITCodeEmitter.h<br> * new file - JITCodeEmitter inherits from MachineCodeEmitter, this divides <br> and isolates off and takes over JIT code emission, JIT functionality, and <br>
facilitates future JIT developments.<br> <br> include/llvm/Target/TargetJITInfo.h<br> * Replace references to MachineCodeEmitter instead of JITCodeEmitter.<br> include/llvm/Target/TargetMachine.h<br> lib/CodeGen/LLVMTargetMachine.cpp<br>
* added suport for JITCodeEmitter <br> lib/Target/X86/X86.h<br> lib/Target/X86/X86TargetMachine.h<br> lib/Target/X86/X86TargetMachine.cpp<br> lib/Target/X86/X86CodeEmitter.cpp<br> * Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter<br>
lib/Target/X86/X86JITInfo.h<br> lib/Target/X86/X86JITInfo.cpp<br> <br> * Replaced references to MachineCodeEmitter with JITCodeEmitter.<br> lib/Target/PowerPC/PPC.h<br> lib/Target/PowerPC/PPCTargetMachine.h<br>
lib/Target/PowerPC/PPCTargetMachine.cpp<br> lib/Target/PowerPC/PPCCodeEmitter.cpp<br> * Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter<br> lib/Target/PowerPC/PPCJITInfo.h<br> lib/Target/PowerPC/PPCJITInfo.cpp<br>
* Replaced references to MachineCodeEmitter with JITCodeEmitter.<br> lib/Target/ARM/ARM.h<br> lib/Target/ARM/ARMTargetMachine.h<br> lib/Target/ARM/ARMTargetMachine.cpp<br> lib/Target/ARM/ARMCodeEmitter.cpp<br>
* Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter<br> lib/Target/ARM/ARMJITInfo.h<br> lib/Target/ARM/ARMJITInfo.cpp<br> * Replaced references to MachineCodeEmitter with JITCodeEmitter.<br>
lib/Target/Alpha/Alpha.h<br> lib/Target/Alpha/AlphaTargetMachine.h<br> lib/Target/Alpha/AlphaTargetMachine.cpp<br> lib/Target/Alpha/AlphaCodeEmitter.cpp<br> * Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter<br>
lib/Target/Alpha/AlphaJITInfo.h<br> lib/Target/Alpha/AlphaJITInfo.cpp<br> * Replaced references to MachineCodeEmitter with JITCodeEmitter.<br> lib/ExecutionEngine/JIT/JIT.h<br> lib/ExecutionEngine/JIT/JIT.cpp<br>
lib/ExecutionEngine/JIT/JITEmitter.cpp<br> lib/ExecutionEngine/JIT/JITDwarfEmitter.h<br> lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp<br> * Modified to use JITCodeEmitter instead of MachineCodeEmitter<br>(i) <a href="http://wiki.llvm.org/Direct_Object_Code_Emission">http://wiki.llvm.org/Direct_Object_Code_Emission</a></div>
<div> </div>
<div>Aaron</div>
<div> </div>