<div>This patch separates the template instatiations for the createX86*CodeEmitterPass of [X86]Emiiter<codeEmitter> into separate .cpp file and thus different object modules in the library. This will result in a slightly smaller footprint for programs just using one of the MachineCodeEmitter, ObjectCodeEmitter, or JITCodeEmitter classes.</div>


<div> </div>
<div>This should save 2 * 47K each for llc, lli, and LTOCodeGenerator.</div>
<div> </div>
<div>Although the MachineCodeEmitter version is not being use anymore at present I have left it in for now.</div>
<div> </div>
<div>It also opens the door for altername MachineCodeEmitters for experimental or other purposes such as unladen Swallow.</div>
<div> </div>
<div>I will be submitting simular patches for Alpha, ARM, and PowerPC if this one gets accepted.</div>
<div> </div>
<div>I have made CMake the necessary CMake changes too in the patch.</div>
<div> </div>
<div>This patch needs to be applied relatively quickly as it moves X86CodeEmitter.cpp code to X86CodeEmitter.h and any chages in SVN inbetween would be lost.</div>
<div> </div>
<div>Aaron</div>
<div> </div>