dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
3985f6a98d39e306b145b766253d75d4de79cb9e |
|
24-Oct-2013 |
Yaron Keren <yaron.keren@gmail.com> |
Replaced non-ASCII character. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193324 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
2ad18efdc73bc2356aa7fbf811d5ecbbaac0f2c9 |
|
24-Oct-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Optimizing MCJIT module state tracking Patch co-developed with Yaron Keren. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
5e206fcf3065950f081bd39a3116b3c3c3bbb9f7 |
|
22-Oct-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
FIXME comment shouldn't have been doxygen style git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
6169453ba37ac353655f2475f336e66f31276752 |
|
21-Oct-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Improving MCJIT/RuntimeDyld thread safety git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193094 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
f14bb8f5e664cda4cd720d638ad99cc635531442 |
|
19-Oct-2013 |
Yaron Keren <yaron.keren@gmail.com> |
Added comments from Andrew Kaylor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
43507d026bef31100cb0c35614bcf419029a265b |
|
16-Oct-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Adding support for deregistering EH frames with MCJIT. Patch by Yaron Keren git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
528f6d787b1a847e61eb2f1114559f423fdeb68c |
|
11-Oct-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Adding multiple object support to MCJIT EH frame handling git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
b868e9101c138016aad5bd910b67f40a3213d6fc |
|
04-Oct-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Adding support and tests for multiple module handling in lli git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191938 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
6eb43d295625cd2ff314c59b49d4fd11f3348cad |
|
02-Oct-2013 |
Filip Pizlo <fpizlo@apple.com> |
This threads SectionName through the allocateCodeSection/allocateDataSection APIs, both in C++ and C land. It's useful for the memory managers that are allocating a section to know what the name of the section is. At a minimum, this is useful for low-level debugging - it's customary for JITs to be able to tell you what memory they allocated, and as part of any such dump, they should be able to tell you some meta-data about what each allocation is for. This allows clients that supply their own memory managers to do this. Additionally, we also envision the SectionName being useful for passing meta-data from within LLVM to an LLVM client. This changes both the C and C++ APIs, and all of the clients of those APIs within LLVM. I'm assuming that it's safe to change the C++ API because that API is allowed to change. I'm assuming that it's safe to change the C API because we haven't shipped the API in a release yet (LLVM 3.3 doesn't include the MCJIT memory management C API). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191804 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
8e9ec015348c5419b905c2ca6e39534429eda073 |
|
01-Oct-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Adding multiple module support for MCJIT. Tests to follow. PIC with small code model and EH frame handling will not work with multiple modules. There are also some rough edges to be smoothed out for remote target support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191722 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
abb38fe8dec11b1ea7535f84fac8ad0f0af70add |
|
17-May-2013 |
David Tweed <david.tweed@arm.com> |
Minor changes to the MCJITTest unittests to use the correct API for finalizing the JIT object (including XFAIL an ARM test that now needs fixing). Also renames internal function for consistency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182085 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
13a3cf192887233fb9452ec5b7f841e4652c33c7 |
|
14-May-2013 |
Filip Pizlo <fpizlo@apple.com> |
SectionMemoryManager shouldn't be a JITMemoryManager. Previously, the EngineBuilder interface required a JITMemoryManager even if it was being used to construct an MCJIT. But the MCJIT actually wants a RTDyldMemoryManager. Consequently, the SectionMemoryManager, which is meant for MCJIT, derived from the JITMemoryManager and then stubbed out a bunch of JITMemoryManager methods that weren't relevant to the MCJIT. This patch fixes the situation: it teaches the EngineBuilder that RTDyldMemoryManager is a supertype of JITMemoryManager, and that it's appropriate to pass a RTDyldMemoryManager instead of a JITMemoryManager if we're using the MCJIT. This allows us to remove the stub methods from SectionMemoryManager, and make SectionMemoryManager a direct subtype of RTDyldMemoryManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181820 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
1c489455ea5fac43a5f20911dfb5486630eb0160 |
|
25-Apr-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Re-enabling MCJIT object caching with memory leak fixed git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
06fd5bf4ea122960f0435449c2391ea4fe1ea2ca |
|
25-Apr-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Revert "Adding object caching support to MCJIT" This reverts commit 07f03923137a91e3cca5d7fc075a22f8c9baf33a. Looks like it broke the valgrind bot: http://lab.llvm.org:8011/builders/llvm-x86_64-linux-vg_leak/builds/649 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180249 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
07f03923137a91e3cca5d7fc075a22f8c9baf33a |
|
23-Apr-2013 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Adding object caching support to MCJIT git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
a1514e24cc24b050f53a12650e047799358833a1 |
|
04-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Sort includes for all of the .h files under the 'lib' tree. These were missed in the first pass because the script didn't yet handle include guards. Note that the script is now able to handle all of these headers without manual edits. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169224 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
776054dd938472828ac3ebf75b05e21171ef4ecf |
|
06-Nov-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Add interface for object-based JIT events. This patch adds the interface to expose events from MCJIT when an object is emitted or freed and implements the MCJIT functionality to send those events. The IntelJITEventListener implementation is left empty for now. It will be fleshed out in a future patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167475 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
28989889bf3aa3314562d438aece245b71176ec4 |
|
05-Nov-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Add a method to indicate section address re-assignment is finished. Prior to this patch RuntimeDyld attempted to re-apply relocations every time reassignSectionAddress was called (via MCJIT::mapSectionAddress). In addition to being inefficient and redundant, this led to a problem when a section was temporarily moved too far away from another section with a relative relocation referencing the section being moved. To fix this, I'm adding a new method (finalizeObject) which the client can call to indicate that it is finished rearranging section addresses so the relocations can safely be applied. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
3f23cef24fc9200def464bd4bce820678b5715de |
|
02-Oct-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Clean-up of memory buffer and object ownership model in MCJIT git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165053 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
e940c1bb6c976539f07d6f440aeaacf7c25e1ddc |
|
13-Sep-2012 |
Jim Grosbach <grosbach@apple.com> |
Better const handling for RuntimeDyld and MCJIT. mapSectionAddress() wasn't consistent. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
8005bcd5e0c923881d82afcb813a7e537cd1b241 |
|
21-Aug-2012 |
Jim Grosbach <grosbach@apple.com> |
MCJIT: Tidy up the constructor. The MCJIT doesn't need or want a TargetJITInfo. That's vestigal from the old JIT, so just remove it. rdar://12119347 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162280 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
ea708d1071898bd8fda58f9d58d1d3fe38faf9f2 |
|
07-Aug-2012 |
Andrew Kaylor <andrew.kaylor@intel.com> |
Enable lazy compilation in MCJIT git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161438 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
30b9e322e159df8eaabb5b194cec6e11ba99c261 |
|
28-Mar-2012 |
Danil Malyshev <dmalyshev@accesssoftek.com> |
Move getPointerToNamedFunction() from JIT/MCJIT to JITMemoryManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153607 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
3e29671cca14f8fce1ea6b602175880cb3df7199 |
|
22-Mar-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert a series of commits to MCJIT to get the build working in CMake (and hopefully on Windows). The bots have been down most of the day because of this, and it's not clear to me what all will be required to fix it. The commits started with r153205, then r153207, r153208, and r153221. The first commit seems to be the real culprit, but I couldn't revert a smaller number of patches. When resubmitting, r153207 and r153208 should be folded into r153205, they were simple build fixes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153241 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
7803ec3d458ec73372760b838469292cdf38fe67 |
|
21-Mar-2012 |
Danil Malyshev <dmalyshev@accesssoftek.com> |
Based on this discussion: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120305/138477.html 1. Declare a virtual function getPointerToNamedFunction() in JITMemoryManager 2. Move the implementation of getPointerToNamedFunction() form JIT/MCJIT to DefaultJITMemoryManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
020f4e861a9a32059f76377e787703c92ba55a98 |
|
17-Jan-2012 |
Jim Grosbach <grosbach@apple.com> |
ExecutionEngine interface to re-map addresses for engines that support it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148264 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
45a93d6eb4c55876e94f91b471657f23fe2149aa |
|
05-Jan-2012 |
Danil Malyshev <dmalyshev@accesssoftek.com> |
A small re-factored JIT/MCJIT::getPointerToNamedFunction(), so it could be called with the base class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
9ea47179e647e806a2c67639bfead9d254514e59 |
|
12-Dec-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
ExecutionEngine: refactor interface The OptLevel is now redundant with the TargetMachine*. And selectTarget() isn't really JIT-specific and could probably get refactored into one of the lower level libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146355 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
c5b28580a94e247300e5d3ccf532e153f2ae6f12 |
|
13-May-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
ExecutionEngine: push TargetMachine creation into clients (v2) In particular, into EngineBuilder. This should only impact the private API between the EE and EB classes, not external clients, since JITCtor and MCJITCtor are both protected members. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131317 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
2ea29ba2a8ddd7ba4b946eb754f1a39304d9fc09 |
|
13-May-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
ExecutionEngine: fix JIT/MCJIT selectTarget() duplication (v2) This prepares for making JITCtor/MCJITCtor take a TargetMachine* directly from clients like EngineBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131316 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
701529b2488477d1887c2975677a574d1e90389f |
|
07-May-2011 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Revert ExecutionEngine patches, they either failed to build or broke unit tests. Please ensure the build is clean and tests are passing when recommitting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
c06b511eba8a0f7c6dd01c067836168cc33d7801 |
|
07-May-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
ExecutionEngine: push TargetMachine creation into clients In particular, into EngineBuilder. This should only impact the private API between the EE and EB classes, not external clients, since JITCtor and MCJITCtor are both protected members. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
71cbac6a834a6ab48598b57cf9e97d7b3da421ef |
|
07-May-2011 |
Dylan Noblesmith <nobled@dreamwidth.org> |
ExecutionEngine: fix JIT/MCJIT selectTarget() duplication This prepares for making JITCtor/MCJITCtor take a TargetMachine* directly from clients like EngineBuilder. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131025 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
fcbe5b71936b820647dffff0e4f9c60ece3988a5 |
|
05-Apr-2011 |
Jim Grosbach <grosbach@apple.com> |
Layer the memory manager between the JIT and the runtime Dyld. The JITMemory manager references LLVM IR constructs directly, while the runtime Dyld works at a lower level and can handle objects which may not originate from LLVM IR. Introduce a new layer for the memory manager to handle the interface between them. For the MCJIT, this layer will be almost entirely simply a call-through w/ translation between the IR objects and symbol names. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
34714a06096f854c76371295d8c20b017fbba50b |
|
22-Mar-2011 |
Jim Grosbach <grosbach@apple.com> |
Add simple arg passing to MC-JIT and support for exit() call. Support argument passing simple, common, prototypes directly. More complicated scenarios will require building up a stub function, which the MC-JIT isn't set up to handle yet. Add Intercept.cpp, which is just a copy from ExecutionEngine/JIT for now, to handle looking looking up external symbol names. This probably more properly belongs as part of RuntimeDyld. It'll migrate there as things flesh out more fully. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128090 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
f922910494377909b4cf2a0b73f509b2b1925799 |
|
22-Mar-2011 |
Jim Grosbach <grosbach@apple.com> |
Hook up the MCJIT to the RuntimeDyld library. Lots of cleanup to make the interfaces prettier, use the JITMemoryManager, handle multiple functions and modules, etc.. This gets far enough that the MCJIT compiles and runs code, though. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128052 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
31649e61bcead26a63c7cd452da90fff5e000b91 |
|
18-Mar-2011 |
Jim Grosbach <grosbach@apple.com> |
Beginnings of MC-JIT code generation. Proof-of-concept code that code-gens a module to an in-memory MachO object. This will be hooked up to a run-time dynamic linker library (see: llvm-rtdyld for similarly conceptual work for that part) which will take the compiled object and link it together with the rest of the system, providing back to the JIT a table of available symbols which will be used to respond to the getPointerTo*() queries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127916 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|
6aec29848676494867e26307698155bc2c5a4033 |
|
17-Nov-2010 |
Daniel Dunbar <daniel@zuster.org> |
MCJIT: Stub out MCJIT implementation, still doesn't do anything useful. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119509 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h
|