summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Tidy up a bit now that we're using the MemoryManager interface.Jim Grosbach2011-04-121-9/+21
| | | | llvm-svn: 129328
* Refactor MCJIT 32-bit section loading.Jim Grosbach2011-04-081-1/+1
| | | | | | | Teach 32-bit section loading to use the Memory Manager interface, just like the 64-bit loading does. Tidy up a few other things here and there. llvm-svn: 129138
* RuntimeDyld should use the memory manager API.Jim Grosbach2011-04-061-5/+5
| | | | | | | | | | Start teaching the runtime Dyld interface to use the memory manager API for allocating space. Rather than mapping directly into the MachO object, we extract the payload for each object and copy it into a dedicated buffer allocated via the memory manager. For now, just do Segment64, so this works on x86_64, but not yet on ARM. llvm-svn: 128973
* Layer the memory manager between the JIT and the runtime Dyld.Jim Grosbach2011-04-041-4/+17
| | | | | | | | | | | 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. llvm-svn: 128851
* Instantiate a JITMemoryManager for MCJIT DyldJim Grosbach2011-03-291-1/+2
| | | | llvm-svn: 128485
* Propogate the error message, not just the error state.Jim Grosbach2011-03-221-2/+3
| | | | llvm-svn: 128094
* Library-ize the dyld components of llvm-rtdyld.Jim Grosbach2011-03-211-226/+10
| | | | | | | | | Move the dynamic linking functionality of the llvm-rtdyld program into an ExecutionEngine support library. Update llvm-rtdyld to just load an object file into memory, use the library to process it, then run the _main() function, if one is found. llvm-svn: 128031
* Add llvm-rtdyld support for loading 32-bit code.Jim Grosbach2011-03-181-66/+158
| | | | | | | Factor out the 64-bit specific bits into a helper function and add an equivalent that loads the 32-bit sections. This allows using llvm-rtdyld on ARM. llvm-svn: 127892
* Naming conventional tidy up.Jim Grosbach2011-03-181-2/+2
| | | | llvm-svn: 127886
* MachO file loader and execution utility.Jim Grosbach2011-03-181-0/+231
Add a bone-simple utility to load a MachO object into memory, look for a function (main) in it, and run that function directly. This will be used as a test and development platform for MC-JIT work regarding symbol resolution, dynamic lookup, etc.. Code by Daniel Dunbar. llvm-svn: 127885
OpenPOWER on IntegriCloud