summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine
Commit message (Collapse)AuthorAgeFilesLines
* little optimization: reuse getPointerToGlobalIfAvailable(CGV) value in ↵Nuno Lopes2008-10-141-1/+1
| | | | | | emitGlobals() llvm-svn: 57484
* Revert r57340 move guard mutex in getPointerToFunction as this can causeMon P Wang2008-10-101-2/+2
| | | | | | deadlock issues with java llvm-svn: 57356
* Moved guard mutex upwards to guard materializing a functionMon P Wang2008-10-101-3/+3
| | | | | | in getPointerToFunction llvm-svn: 57340
* Add a "loses information" return value to APFloat::convertDale Johannesen2008-10-091-1/+2
| | | | | | | and APFloat::convertToInteger. Restore return value to IEEE754. Adjust all users accordingly. llvm-svn: 57329
* Rename APFloat::convertToAPInt to bitcastToAPInt toDale Johannesen2008-10-091-8/+8
| | | | | | | make it clearer what the function does. No functional change. llvm-svn: 57325
* Add <cstdio> include where needed by gcc-4.4.Duncan Sands2008-10-082-0/+2
| | | | | | Patch by Samuel Tardieu. llvm-svn: 57291
* Unbreak build.Daniel Dunbar2008-10-031-18/+18
| | | | llvm-svn: 57017
* On Darwin ARM, memory needs special handling to do JIT. This patch expandsJim Grosbach2008-10-032-1/+26
| | | | | | | this handling to work properly for modifying stub functions, relocations back to entry points after JIT compilation, etc.. llvm-svn: 57013
* Switch the MachineOperand accessors back to the short names likeDan Gohman2008-10-031-1/+1
| | | | | | isReg, etc., from isRegister, etc. llvm-svn: 57006
* Acquire the lock only when necessary. More precisely, do not acquireNicolas Geoffray2008-10-031-10/+22
| | | | | | the lock when calling a method which may materialize the llvm::Function. llvm-svn: 56995
* Add runStaticConstructorsDestructors which runs ctors / dtors of a single ↵Evan Cheng2008-09-301-32/+40
| | | | | | module. Patch by David Chisnall. llvm-svn: 56849
* Large mechanical patch.Devang Patel2008-09-251-2/+2
| | | | | | | | | | | | | | | s/ParamAttr/Attribute/g s/PAList/AttrList/g s/FnAttributeWithIndex/AttributeWithIndex/g s/FnAttr/Attribute/g This sets the stage - to implement function notes as function attributes and - to distinguish between function attributes and return value attributes. This requires corresponding changes in llvm-gcc and clang. llvm-svn: 56622
* Add DisableGVCompilation which forces the JIT to assert when it tries to ↵Evan Cheng2008-09-242-0/+5
| | | | | | allocate space for a GlobalVariable. llvm-svn: 56557
* s/ParameterAttributes/Attributes/gDevang Patel2008-09-231-1/+0
| | | | llvm-svn: 56513
* Initial support for the CMake build system.Oscar Fuentes2008-09-223-0/+20
| | | | llvm-svn: 56419
* Preliminary support for systems which require changing JIT memory regions ↵Evan Cheng2008-09-183-1/+9
| | | | | | privilege from read / write to read / executable. llvm-svn: 56303
* Make safer variant of alias resolution routine to be defaultAnton Korobeynikov2008-09-091-1/+1
| | | | llvm-svn: 56005
* MMI may be null.Evan Cheng2008-09-021-1/+3
| | | | llvm-svn: 55626
* Add support for JIT exceptions on Darwin. Since we're dealing with libgcc,Nicolas Geoffray2008-08-281-2/+135
| | | | | | | whose darwin code was written after the ability to dynamically register frames, we need to do special hacks to make things work. llvm-svn: 55507
* Avoid a warning about isTargetNullPtr being unused in release builds.Dan Gohman2008-08-261-0/+2
| | | | llvm-svn: 55350
* Get rid of a couple of dynamic_cast.Evan Cheng2008-08-201-4/+10
| | | | llvm-svn: 55022
* Update the JIT exception writer to better mimic the codegen exception writer.Nicolas Geoffray2008-08-191-11/+10
| | | | | | | Also skip indirect encoding for platforms that ask for one: we direclty write an address, not a pointer to the address. llvm-svn: 54987
* Register the frame register function when allocating the JIT,Nicolas Geoffray2008-08-181-5/+5
| | | | | | so that lli works out of the box with -enable-eh. llvm-svn: 54920
* Move SLEB/ULEB size calculation routines from AsmPrinter to TargetAsmInfo. ↵Anton Korobeynikov2008-08-161-40/+39
| | | | | | This makes JIT asmprinter-free. llvm-svn: 54843
* Some fixes for x86-64 JIT. Make it use small codeDale Johannesen2008-08-111-0/+13
| | | | | | | | | | | | model, except for external calls; this makes addressing modes PC-relative. Incomplete. The assertion at the top of Emitter::runOnMachineFunction was obviously bogus (always true) so I removed it. If someone knows what the correct test should be to cover all the various targets, please fix. llvm-svn: 54656
* Fix the LLVMCreateJITCompiler C binding.Gordon Henriksen2008-08-081-3/+3
| | | | | | | Evan broke it in r54523 by adding a parameter in the implementation without updating the header correspondingly. llvm-svn: 54555
* Add new parameter Fast to createJIT to enable the fast codegen path.Evan Cheng2008-08-087-17/+24
| | | | llvm-svn: 54523
* Rewrite JIT handling of GlobalVariables so theyDale Johannesen2008-08-074-23/+179
| | | | | | | | | | | | | | are allocated in the same buffer as the code, jump tables, etc. The default JIT memory manager does not handle buffer overflow well. I didn't introduce this and I'm not attempting to fix it here, but it is more likely to be hit now since we're putting more stuff in the buffer. This affects one test that I know of so far, MultiSource/Benchmarks/NPB-serial/is. llvm-svn: 54442
* Use strcpy instead of sprintf here. This avoids a GCC 4.3 format-stringDan Gohman2008-08-051-1/+1
| | | | | | | warning. There wasn't actually a problem here, because the contents of the string are known. llvm-svn: 54385
* Trim #includes.Dan Gohman2008-08-051-1/+0
| | | | llvm-svn: 54350
* Fix for PR2578. Do not split off a block whose size is less than ↵Evan Cheng2008-07-291-0/+3
| | | | | | FreeRangeHeader::getMinBlockSize(). Patch by Damien. llvm-svn: 54152
* Add a new hidden option to the interpreter to cause it to printChris Lattner2008-07-081-0/+8
| | | | | | | out every volatile load and store. This is useful for tracking down insane volatile memory bugs. llvm-svn: 53241
* Use empty() instead of size().Dan Gohman2008-07-071-1/+1
| | | | llvm-svn: 53178
* Correct a comment.Dan Gohman2008-07-031-1/+1
| | | | llvm-svn: 53064
* Prune a few dependencies on MachineFunction.h.Dan Gohman2008-07-011-1/+0
| | | | llvm-svn: 52976
* Split ISD::LABEL into ISD::DBG_LABEL and ISD::EH_LABEL, eliminatingDan Gohman2008-07-011-2/+2
| | | | | | | | | | | | | | | | the need for a flavor operand, and add a new SDNode subclass, LabelSDNode, for use with them to eliminate the need for a label id operand. Change instruction selection to let these label nodes through unmodified instead of creating copies of them. Teach the MachineInstr emitter how to emit a MachineInstr directly from an ISD label node. This avoids the need for allocating SDNodes for the label id and flavor value, as well as SDNodes for each of the post-isel label, label id, and label flavor. llvm-svn: 52943
* Implement JIT support for global aliases, patch by David Chisnall!Chris Lattner2008-06-251-0/+2
| | | | llvm-svn: 52738
* Switch the PPC backend and target-independent JIT to use the libsystem Chris Lattner2008-06-251-1/+2
| | | | | | | InvalidateInstructionCache method instead of calling through a hook on the JIT. This is a host feature, not a target feature. llvm-svn: 52734
* Use back() instead of [size()-1].Dan Gohman2008-06-211-2/+2
| | | | llvm-svn: 52600
* Use static_cast instead of reinterpret_cast for casting void*.Dan Gohman2008-06-211-1/+1
| | | | llvm-svn: 52592
* Add C binding for ExecutionEngine::addGlobalMapping.Gordon Henriksen2008-06-201-0/+5
| | | | llvm-svn: 52523
* Provide generic hooks for icache invalidation. Add PPC implementation.Anton Korobeynikov2008-06-171-15/+1
| | | | | | Patch by Gary Benson! llvm-svn: 52418
* Don't forget to initialize SymbolSearchingDisabled.Evan Cheng2008-06-171-0/+1
| | | | llvm-svn: 52414
* Add a new flag that disables symbol lookup with dlsym when set. This allowsChris Lattner2008-06-161-33/+35
| | | | | | | a JIT client to completely control symbol lookup with the LazyFunctionCreator interface. llvm-svn: 52335
* Add #includes to make some dependencies explicit.Dan Gohman2008-05-232-0/+2
| | | | llvm-svn: 51496
* Fix a couple issues with the JIT and multiple modules:Nate Begeman2008-05-213-8/+75
| | | | | | | | | | | | 1. The "JITState" object creates a PassManager with the ModuleProvider that the jit is created with. If the ModuleProvider is removed and deleted, the PassManager is invalid. 2. The Global maps in the JIT were not invalidated with a ModuleProvider was removed. This could lead to a case where the Module would be freed, and a new Module with Globals at the same addresses could return invalid results. llvm-svn: 51384
* Fix ExecutionEngine's constant code to work properly when structs and arraysDan Gohman2008-05-201-17/+8
| | | | | | will become first-class types. llvm-svn: 51293
* Fix a backwards check in the JIT symbol table codeNate Begeman2008-05-181-1/+1
| | | | llvm-svn: 51229
* Disable JIT symbol table for now.Evan Cheng2008-05-151-1/+1
| | | | llvm-svn: 51152
* Fix a bunch of 80col violations that arose from the Create API change. Tweak ↵Gabor Greif2008-05-151-3/+4
| | | | | | makefile targets to find these better. llvm-svn: 51143
OpenPOWER on IntegriCloud