[llvm-commits] [patch] CodeEmitter Memory Foot Reduction

Aaron Gray aaronngray.lists at googlemail.com
Wed Jul 15 09:01:40 PDT 2009


Chris,

If you/we do not like this code, then the alternatives are :-
1) Leave as is, which I would not suggest.
2) Revert to using MachineCodeEmitter like mechanics with virtual extend()
method to allow rebuffering with ObjectCodeEmitter providing the memory
management.
3) Don't really know of any other alternatives :)

2 maybe the best compromise option. Its easy to code, removes templating
from the CodeEmitters, and is virtually transparent to our other DOE work.
The only thing it does not write via a BinaryObject object, so we loose that
functionality.

Best regards,

Aaron

2009/7/14 Aaron Gray <aaronngray.lists at googlemail.com>

> Hi Chris,
>
> Heres the patch to separate out ObjectCodeEmitter instatiated CodeEmitters
> from JITCodeEmitter ones. It also demotes MachineCodeEmitter to a base class
> of JitCodeEmitter and ObjectCodeEmitter.
>
> It quite a big patch.
>
> It removes X86CodeEmitter.cpp
>
> And adds X86JITCodeEmitter.cpp, X86ObjectCodeEmitter.cpp,
> PPCJITCodeEmitter.cpp, PPCObjectCodeEmitter.cpp, ARMJITCodeEmitter.cpp,
> ARMObjectCodeEmitter.cpp, AlphaJITCodeEmitter.cpp, and
> AlphaObjectCodeEmitter.cpp.
>
> Aaron
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20090715/d9c281a6/attachment.html>


More information about the llvm-commits mailing list