summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine
Commit message (Collapse)AuthorAgeFilesLines
* Move the remaining attribute macros to systematic names based on the attributeChandler Carruth2010-10-231-1/+1
| | | | | | name and prefixed with 'LLVM_'. llvm-svn: 117203
* Fix the cleanup process of exception information in JIT. Now JITDuncan Sands2010-10-212-3/+19
| | | | | | | deregisters registered by it FDE structures allowing consecutive JIT runs to succeed. Patch by Yuri. Fixes PR8285. llvm-svn: 117004
* Revert "CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally."Michael J. Spencer2010-09-133-17/+0
| | | | | | | | | | This reverts commit r113632 Conflicts: cmake/modules/AddLLVM.cmake llvm-svn: 113819
* CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally.Michael J. Spencer2010-09-103-0/+17
| | | | llvm-svn: 113632
* Fix a comment.NAKAMURA Takumi2010-08-301-1/+1
| | | | llvm-svn: 112535
* EE/JIT: Do not invoke parent's ctors/dtors from main()! (PR3897)NAKAMURA Takumi2010-08-301-0/+12
| | | | | | | | | | On Mingw and Cygwin, the symbol __main is resolved to callee's(eg. tools/lli) one, to invoke wrong duplicated ctors (and register wrong callee's dtors with atexit(3)). We expect, by callee, ExecutionEngine::runStaticConstructorsDestructors() is called before ExecutionEngine::runFunctionAsMain() is called. llvm-svn: 112474
* remove some dead code.Chris Lattner2010-08-231-246/+0
| | | | llvm-svn: 111791
* When creating a JIT, try to load the program so that we can resolve symbolsNick Lewycky2010-08-171-0/+3
| | | | | | against it. This affects Windows. llvm-svn: 111240
* Stop the JIT from refusing to work just because the program it was compiled intoNick Lewycky2010-08-091-5/+0
| | | | | | was built with -static. llvm-svn: 110564
* Don't call __register_frame from the JIT on systems that use setjmp/longjmpBob Wilson2010-07-261-2/+2
| | | | | | | exception handling. Also fix an extra underscore typo in one instance of "__ARM_EABI__". Radar 8236264. llvm-svn: 109451
* remove the dwarf sizing stuff which is now dead, it wasChris Lattner2010-07-222-456/+0
| | | | | | | "yet another" copy of the dwarf EH emission code that was copied, pasted and slightly hacked up. llvm-svn: 109169
* remove the JIT "NeedsExactSize" feature and supporting logic.Chris Lattner2010-07-221-58/+3
| | | | llvm-svn: 109167
* Fix indentation.Duncan Sands2010-07-191-1/+1
| | | | llvm-svn: 108691
* Expose JIT::recompileAndRelinkFunction for use through the C API.Duncan Sands2010-07-191-0/+4
| | | | | | Patch by Benjamin Saunders. llvm-svn: 108690
* Get rid of a bunch of duplicated ELF enum values.Eli Friedman2010-07-161-5/+5
| | | | llvm-svn: 108520
* Convert some tab stops into spaces.Duncan Sands2010-07-122-3/+3
| | | | llvm-svn: 108130
* first part of JIT support for address of labels, part of PR7264,Chris Lattner2010-07-113-13/+81
| | | | | | patch by Yuri! llvm-svn: 108107
* Handle execution entrypoints with non-integer return types.Dan Gohman2010-06-181-1/+1
| | | | | | Fix from Russel Power in PR7284. llvm-svn: 106271
* improve portability to systems that don't have powf/modf (e.g. solaris 9)Chris Lattner2010-05-151-2/+2
| | | | | | patch by Evzen Muller! llvm-svn: 103876
* Remove the -enable-sjlj-eh option, which doesn't do anything.Duncan Sands2010-05-021-3/+3
| | | | | | | Remove the -enable-eh option which is only used by the JIT, and replace it with -jit-enable-eh. llvm-svn: 102865
* Fix an ancient FIXME.Dan Gohman2010-05-011-3/+1
| | | | llvm-svn: 102827
* Fix the OProfileJITEventListener build after r101844 removedJeffrey Yasskin2010-04-301-19/+36
| | | | | | | | MachineFunction::DefaultDebugLoc. We now use the same technique as DwarfDebug::beginFunction to find the starting line number for a function. llvm-svn: 102679
* Don't rely upon the MCSymbol "isDefined" method to indicate if a label has beenBill Wendling2010-04-181-2/+2
| | | | | | | emitted or not. The JIT doesn't set that. Look it up in the label location table instead. llvm-svn: 101686
* Formatting changes. No functionality change.Bill Wendling2010-04-181-29/+28
| | | | llvm-svn: 101685
* Fix -Wcast-qual warnings.Dan Gohman2010-04-171-1/+1
| | | | llvm-svn: 101655
* The JIT calls TidyLandingPads to tidy up the landing pads. However, because theBill Wendling2010-04-162-4/+8
| | | | | | | | | | | | | | | | JIT doesn't use the MC back-end asm printer to emit labels that it uses, the section for the MCSymbol is never set. And thus the MCSymbol for the EH label isn't marked as "defined". Because of that, TidyLandingPads removes the needed landing pads from the JIT output. This breaks EH for every JIT program. This is a work-around for this limitation. We pass in the label locations map. If the label has a non-zero value, then it was "emitted" by the JIT and TidyLandingPads shouldn't remove that label. A nicer solution would be to mark the MCSymbol as "used" by the JIT and not rely upon the section being set to determine if it's defined or not. llvm-svn: 101453
* Add const qualifiers to CodeGen's use of LLVM IR constructs.Dan Gohman2010-04-152-7/+8
| | | | llvm-svn: 101334
* Don't use DILocation when processing a DebugLoc.Nicolas Geoffray2010-04-141-8/+9
| | | | llvm-svn: 101294
* Use twines to simplify calls to report_fatal_error. For code size and ↵Benjamin Kramer2010-04-081-4/+2
| | | | | | readability. llvm-svn: 100756
* rename llvm::llvm_report_error -> llvm::report_fatal_errorChris Lattner2010-04-077-27/+27
| | | | llvm-svn: 100709
* Fix OProfileJITEventListener build for new DebugLoc.Jeffrey Yasskin2010-04-051-6/+7
| | | | llvm-svn: 100461
* CurFn is only used for relocations. Use EmissionDetails.MF->getFunction() ↵Nicolas Geoffray2010-04-041-1/+2
| | | | | | instead. llvm-svn: 100328
* Switch the code generator (except the JIT) onto the new DebugLocChris Lattner2010-04-021-13/+12
| | | | | | | | | | | | | | | representation. This eliminates the 'DILocation' MDNodes for file/line/col tuples from -O0 -g codegen. This remove the old DebugLoc class, making it a typedef for DebugLoc, I'll rename NewDebugLoc next. I didn't update the JIT to use the new apis, so it will continue to work, but be as slow as before. Someone should eventually do this or, better yet, rip out the JIT debug info stuff and build the JIT on top of MC. llvm-svn: 100209
* Typo noticed by Duncan.Torok Edwin2010-03-301-1/+1
| | | | llvm-svn: 99918
* Don't overwrite previous value, if it succeeded.Torok Edwin2010-03-301-1/+2
| | | | llvm-svn: 99886
* Honour addGlobalMapping() in the interpreter, if it was used to add mappings forTorok Edwin2010-03-301-0/+1
| | | | | | external Functions (the JIT does honour this). llvm-svn: 99885
* Avoid leaking the memory allocated for GlobalVariables in the interpreter, byJeffrey Yasskin2010-03-271-3/+32
| | | | | | freeing that memory when the GV is destroyed. llvm-svn: 99706
* Avoid leaking argv and env arrays from lli.Jeffrey Yasskin2010-03-261-13/+35
| | | | llvm-svn: 99589
* Avoid a memory leak in JITDebugRegisterer.Jeffrey Yasskin2010-03-161-1/+4
| | | | llvm-svn: 98612
* fix these two get the mcsymbol operand instead of imm operand.Chris Lattner2010-03-141-5/+2
| | | | llvm-svn: 98487
* Now that DBG_LABEL is updated, we can finally make MachineMove Chris Lattner2010-03-141-12/+8
| | | | | | contain an MCSymbol instead of a label index. llvm-svn: 98482
* change EH related stuff (other than EH_LABEL) to use MCSymbolChris Lattner2010-03-142-40/+31
| | | | | | | | | | | | | | | | instead of label ID's. This cleans up and regularizes a bunch of code and makes way for future progress. Unfortunately, this pointed out to me that JITDwarfEmitter.cpp is largely copy and paste from DwarfException/MachineModuleInfo and other places. This is very sad and disturbing. :( One major change here is that TidyLandingPads moved from being called in DwarfException::BeginFunction to being called in DwarfException::EndFunction. There should not be any functionality change from doing this, but I'm not an EH expert. llvm-svn: 98459
* Add a new jump table encoding to indicate jump tables entriesRichard Osborne2010-03-111-0/+4
| | | | | | are inside the function by the target at the point of use. llvm-svn: 98255
* strength reduce MMI::MappedLabel to MMI::isLabelDeleted,Chris Lattner2010-03-091-6/+4
| | | | | | | and add a FIXME about how we are eventually going to zap this lookup table once mc world domination is complete. llvm-svn: 98031
* Fix PR6360. It's easy for a stub's address to escape to user code, so we can'tJeffrey Yasskin2010-03-041-115/+4
| | | | | | | | | just count references to it from JIT output to decide when to destroy it. This patch waits to destroy the JIT's memory of a stub until the Function it refers to is destroyed. External function stubs and GVIndirectSyms aren't destroyed until the JIT itself is. llvm-svn: 97737
* Fix PR5291, in which a SmallPtrSet iterator was held across an insertion intoJeffrey Yasskin2010-03-041-24/+38
| | | | | | the set. llvm-svn: 97720
* Make sure JITResolvers don't leave any stubs behind. When a JITResolver wasJeffrey Yasskin2010-03-041-59/+105
| | | | | | | destroyed, it could leave stubs in the StubToResolverMap, which would confuse the lookup for subsequent lazy compilations. llvm-svn: 97698
* Add Module functions in place of module providers.Erick Tryzelaar2010-03-021-18/+59
| | | | llvm-svn: 97608
* There are two ways of checking for a given type, for example isa<PointerType>(T)Duncan Sands2010-02-163-10/+10
| | | | | | | and T->isPointerTy(). Convert most instances of the first form to the second form. Requested by Chris. llvm-svn: 96344
* Apply patch from http://llvm.org/bugs/attachment.cgi?id=4136 now that PR5004 isBill Wendling2010-02-161-1/+5
| | | | | | finished. llvm-svn: 96304
OpenPOWER on IntegriCloud