[PATCH][llvm-c] Expose MC JIT
David Tweed
david.tweed at arm.com
Tue Apr 23 01:06:03 PDT 2013
Hi,
It's great that you're doing high-quality work on getting MC-JIT into a much
better shape!
| More broadly, getting MCJIT into a better shape is on my critical path, as
well. See: https://bugs.webkit.org/show_bug.cgi?id=112840. I'd like to
help out with the de-sloppiness-ifying of it, so I'd like to understand
better what the end goal is. I
|already know that I want to control memory management, cache management,
and page permissions myself as a client, and preferably I want to accomplish
this by supplying my own RuntimeDyld (or JITMemoryManager). I also know
that I'll want to
|improve error tolerance - for example in case of memory allocation failure
(honestly, I haven't investigated this much, so this may already be
supported - I just don't see how through the API). So, I'm particularly
interesting in seeing how to get the
|MCJIT into a great shape while supporting both the currently-envisioned use
cases in LLVM and its other clients, and also the way that WebKit will use
it! This should be fun. :-)
Can I just ask why you want to control cache management and page permissions
within your client code? (This is a genuine question: I don't quite see what
it gets you, but it'd be interesting to know.) One of my worries about
delegating cache management is that it can be a source of very intermittent
bugs: if you don't cache invalidate on the transition from data to code on
ARM, 99% of the time everything works... I can't at the moment see the
advantage of not delegating that to a core part of LLVM that "knows what
it's doing better than I do".
Cheers,
Dave
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130423/9e2b156f/attachment.html>
More information about the llvm-commits
mailing list