summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine
Commit message (Collapse)AuthorAgeFilesLines
* [weak vtables] Remove a bunch of weak vtablesJuergen Ributzka2013-11-154-0/+12
| | | | | | | | | | | This patch removes most of the trivial cases of weak vtables by pinning them to a single object file. Differential Revision: http://llvm-reviews.chandlerc.com/D2068 Reviewed by Andy llvm-svn: 194865
* Fix a problem in MCJIT identifying the module containing a global variable.Andrew Kaylor2013-11-151-2/+2
| | | | | | Patch by Keno Fischer! llvm-svn: 194859
* Path: Recognize COFF import library file magic.Rui Ueyama2013-11-151-0/+1
| | | | | | | | | | | | Summary: Make identify_magic to recognize COFF import file. Reviewers: Bigcheese CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2165 llvm-svn: 194852
* Resolve JIT runtime linking problems on Android.Andrew Kaylor2013-11-152-3/+84
| | | | | | Patch by James Lyon! llvm-svn: 194832
* Don't try to initialize memory for a global if the allocation failed in ↵Andrew Kaylor2013-11-151-0/+4
| | | | | | | | ExecutionEngine. Patch by Dale Martin! llvm-svn: 194831
* Correct spelling.Yaron Keren2013-11-151-1/+1
| | | | llvm-svn: 194808
* Fixing a problem with iterator validity in ↵Andrew Kaylor2013-11-111-2/+12
| | | | | | RuntimeDyldImpl::resolveExternalSymbols llvm-svn: 194415
* The FIXME was indeed fixed in the linker, comment removed.Yaron Keren2013-10-251-4/+0
| | | | llvm-svn: 193402
* Replaced non-ASCII character.Yaron Keren2013-10-241-1/+1
| | | | llvm-svn: 193324
* Revert part of r193291, restoring the deletion of loaded objects.Chandler Carruth2013-10-241-0/+9
| | | | | | | | | | | Without this, customers of the MCJIT were leaking memory like crazy. It's not really clear what the *right* memory management is here, so I'm not trying to add lots of tests or other logic, just trying to get us back to a better baseline. I'll follow up on the original commit to figure out the right path forward. llvm-svn: 193323
* Optimizing MCJIT module state trackingAndrew Kaylor2013-10-242-122/+209
| | | | | | Patch co-developed with Yaron Keren. llvm-svn: 193291
* FIXME comment shouldn't have been doxygen styleAndrew Kaylor2013-10-211-1/+1
| | | | llvm-svn: 193131
* Improving MCJIT/RuntimeDyld thread safetyAndrew Kaylor2013-10-214-12/+40
| | | | llvm-svn: 193094
* Avoid duplicate search by reusing the iterator.Yaron Keren2013-10-192-5/+7
| | | | llvm-svn: 193034
* Added comments from Andrew Kaylor.Yaron Keren2013-10-191-0/+21
| | | | llvm-svn: 193033
* Adding oprofile support for MCJIT.Andrew Kaylor2013-10-162-1/+72
| | | | | | Patch by Dmitry Stogov llvm-svn: 192809
* Really fix build warning/error that I think r192756 was trying to fix.Craig Topper2013-10-161-4/+4
| | | | llvm-svn: 192773
* Fixing build warning/errorAndrew Kaylor2013-10-161-2/+3
| | | | llvm-svn: 192756
* Adding padding to the .eh_frame section in RuntimeDyldAndrew Kaylor2013-10-161-1/+15
| | | | llvm-svn: 192754
* Adding support for deregistering EH frames with MCJIT.Andrew Kaylor2013-10-167-7/+113
| | | | | | Patch by Yaron Keren llvm-svn: 192753
* Path: Recognize Windows compiled resource file.Rui Ueyama2013-10-151-0/+1
| | | | | | | | | | | | | | Some background: One can pass compiled resource files (.res files) directly to the linker on Windows. If a resource file is given, the linker will run "cvtres" command in background to convert the resource file to a COFF file to link it. What I'm trying to do with this patch is to make the linker to recognize the resource file by file magic, so that it can run cvtres command. Differential Revision: http://llvm-reviews.chandlerc.com/D1943 llvm-svn: 192742
* Separating ELF and MachO stub info functions for RuntimeDyldAndrew Kaylor2013-10-153-23/+39
| | | | llvm-svn: 192737
* Fixing some host==target assumptions in RuntimeDyldAndrew Kaylor2013-10-152-3/+6
| | | | llvm-svn: 192732
* Adding multiple object support to MCJIT EH frame handlingAndrew Kaylor2013-10-119-59/+123
| | | | llvm-svn: 192504
* Remove dead code.Rafael Espindola2013-10-072-169/+1
| | | | | | | | | Support for exception handling in the legacy JIT was removed in r181354 and this code was dead since then. Thanks to Yaron Keren for noticing it. llvm-svn: 192101
* Adding multiple GOT handling to RuntimeDyldELFAndrew Kaylor2013-10-052-59/+81
| | | | | | Patch by Ashok Thirumurthi llvm-svn: 192020
* Adding support and tests for multiple module handling in lliAndrew Kaylor2013-10-042-0/+6
| | | | llvm-svn: 191938
* This threads SectionName through the allocateCodeSection/allocateDataSection ↵Filip Pizlo2013-10-026-24/+34
| | | | | | | | | | | | | | | | | | 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). llvm-svn: 191804
* Fixing MCJIT multiple module linking for OSXAndrew Kaylor2013-10-011-0/+4
| | | | llvm-svn: 191780
* Adding multiple module support for MCJIT.Andrew Kaylor2013-10-015-99/+366
| | | | | | | | 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. llvm-svn: 191722
* llvm-c: use typedef for function pointersAnders Waldenborg2013-09-301-16/+8
| | | | | | | | This makes it consistent with other function pointers used in llvm-c Differential Revision: http://llvm-reviews.chandlerc.com/D1712 llvm-svn: 191693
* Revert "llvm-c: Add LLVMGetPointerToFunction"Anders Waldenborg2013-09-201-4/+0
| | | | | | This reverts r191030 llvm-svn: 191075
* llvm-c: Add LLVMGetPointerToFunctionAnders Waldenborg2013-09-191-0/+4
| | | | | | Differential Revision: http://llvm-reviews.chandlerc.com/D1715 llvm-svn: 191030
* LLVM Interpreter: implementation of "insertvalue" and "extractvalue";Elena Demikhovsky2013-09-123-1/+111
| | | | | | | | undef constatnt for structure and test for these functions. done by Yuri Veselov (mailto:Yuri.Veselov@intel.com) llvm-svn: 190599
* Don't expose symbols of lle_ functions.Benjamin Kramer2013-09-111-7/+6
| | | | | | + formatting fixes. llvm-svn: 190523
* Revert patches to add case-range support for PR1255.Bob Wilson2013-09-091-33/+4
| | | | | | | | | | | | | | | | | The work on this project was left in an unfinished and inconsistent state. Hopefully someone will eventually get a chance to implement this feature, but in the meantime, it is better to put things back the way the were. I have left support in the bitcode reader to handle the case-range bitcode format, so that we do not lose bitcode compatibility with the llvm 3.3 release. This reverts the following commits: 155464, 156374, 156377, 156613, 156704, 156757, 156804 156808, 156985, 157046, 157112, 157183, 157315, 157384, 157575, 157576, 157586, 157612, 157810, 157814, 157815, 157880, 157881, 157882, 157884, 157887, 157901, 158979, 157987, 157989, 158986, 158997, 159076, 159101, 159100, 159200, 159201, 159207, 159527, 159532, 159540, 159583, 159618, 159658, 159659, 159660, 159661, 159703, 159704, 160076, 167356, 172025, 186736 llvm-svn: 190328
* llvm interpreter: select, shuffle and insertelement instructions.Elena Demikhovsky2013-09-023-8/+156
| | | | | | | | | This patch implements vector support for select instruction and adds specific vector instructions : shuffle and insertelement. (tests are also included) and functions lle_X_memset, lle_X_memcpy added. Done by Veselov, Yuri (mailto:Yuri.Veselov@intel.com) llvm-svn: 189735
* Move everything depending on Object/MachOFormat.h over to Support/MachO.h.Charles Davis2013-09-011-31/+31
| | | | llvm-svn: 189728
* Clean up some usage of Triple. The base class has methods for determining ↵Cameron Esfahani2013-08-291-1/+1
| | | | | | if the target is iOS and Linux. llvm-svn: 189604
* Fix the build issue under ia64. Close bug #5715Sylvestre Ledru2013-08-272-2/+2
| | | | | | Thanks to Luca Falavigna for the help and most of the patch. llvm-svn: 189324
* Revert "Fix the build broken by r189315." and "Move everything depending on ↵Charles Davis2013-08-271-32/+32
| | | | | | | | | Object/MachOFormat.h over to Support/MachO.h." This reverts commits r189319 and r189315. r189315 broke some tests on what I believe are big-endian platforms. llvm-svn: 189321
* Move everything depending on Object/MachOFormat.h over to Support/MachO.h.Charles Davis2013-08-271-32/+32
| | | | llvm-svn: 189315
* Reorder headers according to lint.Bill Wendling2013-08-211-6/+4
| | | | llvm-svn: 188932
* memcmp is not a valid way to compare structs with padding in them.Benjamin Kramer2013-08-201-2/+9
| | | | llvm-svn: 188778
* Adding PIC support for ELF on x86_64 platformsAndrew Kaylor2013-08-194-16/+244
| | | | llvm-svn: 188726
* Adding comments to document RuntimeDyld relocation handlingAndrew Kaylor2013-08-193-1/+44
| | | | llvm-svn: 188697
* Fixed RuntimeDyldELF absolute relocations.Richard Mitton2013-08-161-1/+11
| | | | | | | | | If an ELF relocation is pointed at an absolute address, it will have a symbol ID of zero. RuntimeDyldELF::processRelocationRef was not previously handling this case, and was instead trying to handle it as a section-relative fixup. I think this is the right fix here, but my elf-fu is poor on some of the more exotic platforms, so I'd appreciate it if anyone with greater knowledge could verify this. llvm-svn: 188572
* Support X86_64_GOTLoad relocations in RuntimeDyldMachO by treating them theLang Hames2013-08-151-4/+4
| | | | | | | | | | | | | | | | same way as X86_64_GOT relocations. The 'Load' part of GOTLoad is just an optimization hint for the linker anyway, and can be safely ignored. This patch also fixes some minor issues with the relocations introduced while processing an X86_64_GOT[Load]: the addend for the GOT entry should always be zero, and the addend for the replacement relocation at the original offset should be the same as the addend of the relocation being replaced. I haven't come up with a good way of testing this yet, but I'm working on it. This fixes <rdar://problem/14651564>. llvm-svn: 188499
* Optimistically ignore scattered relocations in MachO in RuntimeDyld. ThisLang Hames2013-08-091-0/+10
| | | | | | | | un-breaks simple use cases while I work on more general support. <rdar://problem/14487667> llvm-svn: 188044
* [Object] Split the ELF interface into 3 parts.Michael J. Spencer2013-08-081-4/+3
| | | | | | | | * ELFTypes.h contains template magic for defining types based on endianess, size, and alignment. * ELFFile.h defines the ELFFile class which provides low level ELF specific access. * ELFObjectFile.h contains ELFObjectFile which uses ELFFile to implement the ObjectFile interface. llvm-svn: 188022
OpenPOWER on IntegriCloud