<p>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.</p>
<p> include/llvm/CodeGen/MachineCodeEmitter.h</p>
<p> * untouched until ObjectCodeEmitter takes over its functionality in the <br> MachO backend, then it will become an abstract class.</p>
<p> include/llvm/CodeGen/JITCodeEmitter.h</p>
<p> * 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</p>
<p> * Replace references to MachineCodeEmitter instead of JITCodeEmitter.</p>
<p> include/llvm/Target/TargetMachine.h<br> lib/CodeGen/LLVMTargetMachine.cpp</p>
<p> * added suport for JITCodeEmitter </p>
<p> lib/Target/X86/X86.h<br> lib/Target/X86/X86TargetMachine.h<br> lib/Target/X86/X86TargetMachine.cpp<br> lib/Target/X86/X86CodeEmitter.cpp</p>
<p> * Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter</p>
<p> lib/Target/X86/X86JITInfo.h<br> lib/Target/X86/X86JITInfo.cpp<br> <br> * Replaced references to MachineCodeEmitter with JITCodeEmitter.</p>
<p> lib/Target/PowerPC/PPC.h<br> lib/Target/PowerPC/PPCTargetMachine.h<br> lib/Target/PowerPC/PPCTargetMachine.cpp<br> lib/Target/PowerPC/PPCCodeEmitter.cpp</p>
<p> * Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter</p>
<p> lib/Target/PowerPC/PPCJITInfo.h<br> lib/Target/PowerPC/PPCJITInfo.cpp</p>
<p> * Replaced references to MachineCodeEmitter with JITCodeEmitter.</p>
<p> lib/Target/ARM/ARM.h<br> lib/Target/ARM/ARMTargetMachine.h<br> lib/Target/ARM/ARMTargetMachine.cpp<br> lib/Target/ARM/ARMCodeEmitter.cpp</p>
<p> * Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter</p>
<p> lib/Target/ARM/ARMJITInfo.h<br> lib/Target/ARM/ARMJITInfo.cpp</p>
<p> * Replaced references to MachineCodeEmitter with JITCodeEmitter.</p>
<p> lib/Target/Alpha/Alpha.h<br> lib/Target/Alpha/AlphaTargetMachine.h<br> lib/Target/Alpha/AlphaTargetMachine.cpp<br> lib/Target/Alpha/AlphaCodeEmitter.cpp</p>
<p> * Parameterized to support JITCodeEmitter and in future ObjectCodeEmitter</p>
<p> lib/Target/Alpha/AlphaJITInfo.h<br> lib/Target/Alpha/AlphaJITInfo.cpp</p>
<p> * Replaced references to MachineCodeEmitter with JITCodeEmitter.</p>
<p> 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</p>
<p> * Modified to use JITCodeEmitter instead of MachineCodeEmitter</p>
<p>(i) <a href="http://wiki.llvm.org/Direct_Object_Code_Emission">http://wiki.llvm.org/Direct_Object_Code_Emission</a></p>
<p> </p>