summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine
Commit message (Collapse)AuthorAgeFilesLines
* Remove redundant <cmath>.Jim Laskey2006-11-082-2/+0
| | | | llvm-svn: 31561
* For PR950:Reid Spencer2006-11-082-20/+52
| | | | | | | | This patch converts the old SHR instruction into two instructions, AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not dependent on the sign of their operands. llvm-svn: 31542
* For PR786:Reid Spencer2006-11-021-1/+0
| | | | | | | | | | Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. llvm-svn: 31380
* Remove a function prototype that is no longer needed (REM patch missed it)Reid Spencer2006-11-021-2/+0
| | | | llvm-svn: 31374
* For PR950:Reid Spencer2006-11-021-12/+50
| | | | | | Replace the REM instruction with UREM, SREM and FREM. llvm-svn: 31369
* Remove unnecessary sign conversions made possible by last patch.Reid Spencer2006-11-011-4/+0
| | | | llvm-svn: 31339
* Fix a bug in the interpreter where divides of unmatched signed operandsReid Spencer2006-11-011-8/+11
| | | | | | | would fail. E.g. udiv sint X, Y or sdiv uint X, Y would fail to find a type match in the switch statement and fail the operation. llvm-svn: 31338
* For PR950:Reid Spencer2006-10-261-11/+51
| | | | | | | | Make necessary changes to support DIV -> [SUF]Div. This changes llvm to have three division instructions: signed, unsigned, floating point. The bytecode and assembler are bacwards compatible, however. llvm-svn: 31195
* For PR950:Reid Spencer2006-10-203-27/+27
| | | | | | | | This patch implements the first increment for the Signless Types feature. All changes pertain to removing the ConstantSInt and ConstantUInt classes in favor of just using ConstantInt. llvm-svn: 31063
* Unbreak the JITChris Lattner2006-09-151-2/+2
| | | | llvm-svn: 30384
* Adding dllimport, dllexport and external weak linkage types.Anton Korobeynikov2006-09-142-3/+5
| | | | | | | | | DLL* linkages got full (I hope) codegeneration support in C & both x86 assembler backends. External weak linkage added for future use, we don't provide any codegeneration, etc. support for it. llvm-svn: 30374
* Fix a ton of jit failuresChris Lattner2006-09-131-1/+1
| | | | llvm-svn: 30292
* Reflect MachineConstantPoolEntry changes.Evan Cheng2006-09-121-3/+12
| | | | llvm-svn: 30277
* Behold, more work on relocations. Things are looking pretty good now.Nate Begeman2006-09-101-1/+1
| | | | llvm-svn: 30240
* Completely rearchitect the interface between targets and the pass manager.Chris Lattner2006-09-041-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | This pass: 1. Splits TargetMachine into TargetMachine (generic targets, can be implemented any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by things using libcodegen and other support). 2. Instead of having each target fully populate the passmgr for file or JIT output, move all this to common code, and give targets hooks they can implement. 3. Commonalize the target population stuff between file emission and JIT emission. 4. All (native code) codegen stuff now happens in a FunctionPassManager, which paves the way for "fast -O0" stuff in the CFE later, and now LLC could lazily stream .bc files from disk to use less memory. 5. There are now many fewer #includes and the targets don't depend on the scalar xforms or libanalysis anymore (but codegen does). 6. Changing common code generator pass ordering stuff no longer requires touching all targets. 7. The JIT now has the option of "-fast" codegen or normal optimized codegen, which is now orthogonal to the fact that JIT'ing is being done. llvm-svn: 30081
* eliminate use of TM.getName()Chris Lattner2006-09-031-2/+1
| | | | llvm-svn: 30068
* Remove extra spaces.Evan Cheng2006-09-011-2/+2
| | | | llvm-svn: 30025
* Last check-in was a mistake...Evan Cheng2006-09-011-4/+6
| | | | | | | | | | | I've been told apple gcc version number is not guaranteed to increase monotonically. Change the preprocess condition to make it less risky. The configuration change is done during the middle 10.4 life cycle so we have to check __APPLE_CC. For future OS X release, we should be able to assume -fenable-cxa-atexit is the default. llvm-svn: 30024
* *** empty log message ***Evan Cheng2006-09-011-2/+2
| | | | llvm-svn: 30023
* Better comments.Evan Cheng2006-09-011-1/+4
| | | | llvm-svn: 30017
* Yikes. This requires checking apple gcc version.Evan Cheng2006-09-011-2/+4
| | | | llvm-svn: 30016
* initial changes to support JIT'ing from multiple module providers, implicitlyChris Lattner2006-08-164-60/+164
| | | | | | linking the program on the fly. llvm-svn: 29721
* Fix handling of asm specifiers for external globals. This unbreaks many programsChris Lattner2006-07-281-1/+12
| | | | | | on leopard in the jit. llvm-svn: 29391
* Resolve BB references with relocation.Evan Cheng2006-07-271-5/+2
| | | | llvm-svn: 29351
* Fixed a typo in Evan's submisson.Jim Laskey2006-07-271-1/+1
| | | | llvm-svn: 29345
* Move synchronizeICache from TargetJITInfo into a static function in ↵Evan Cheng2006-07-271-5/+17
| | | | | | JITEmitter.cpp llvm-svn: 29334
* Fix warning on linuxChris Lattner2006-07-271-8/+8
| | | | llvm-svn: 29314
* - Refactor the code that resolve basic block references to a TargetJITInfoEvan Cheng2006-07-251-1/+16
| | | | | | | | | | method. - Added synchronizeICache() to TargetJITInfo. It is called after each block of code is emitted to flush the icache. This ensures correct execution on targets that have separate dcache and icache. - Added PPC / Mac OS X specific code to do icache flushing. llvm-svn: 29276
* Fix the build on my old and busted version of OS XNate Begeman2006-07-221-1/+6
| | | | llvm-svn: 29266
* Forgot to #ifdef __APPLE__Evan Cheng2006-07-221-0/+2
| | | | llvm-svn: 29264
* Resolve __dso_handle.Evan Cheng2006-07-211-0/+8
| | | | llvm-svn: 29259
* Remove non-portable optimization that isn't worth itChris Lattner2006-07-121-5/+1
| | | | llvm-svn: 29115
* Change AllocateRWX/DeallocateRWX do not throw an exception.Chris Lattner2006-07-071-8/+8
| | | | llvm-svn: 29057
* Adapt to new interface function materialization interfaceChris Lattner2006-07-071-9/+5
| | | | llvm-svn: 29051
* Added jump table address relocation.Evan Cheng2006-06-231-1/+5
| | | | llvm-svn: 28908
* Simplify TargetData ctor callChris Lattner2006-06-161-1/+1
| | | | llvm-svn: 28832
* Only count instructions as code size, not constant pools and other ↵Chris Lattner2006-06-161-6/+10
| | | | | | per-function stuff. llvm-svn: 28827
* Simplify interpreter construction.Chris Lattner2006-06-162-21/+11
| | | | llvm-svn: 28826
* Fix -pedantic warnings.Chris Lattner2006-06-012-14/+14
| | | | llvm-svn: 28636
* Fix -pedantic warningsChris Lattner2006-06-011-2/+3
| | | | llvm-svn: 28635
* Silence some -pedantic warnings.Chris Lattner2006-06-011-4/+6
| | | | llvm-svn: 28629
* For PR786:Reid Spencer2006-05-241-1/+1
| | | | | | | | Minor tweaks in public headers and a few .cpp files so that LLVM can build successfully with -pedantic and projects using LLVM with -pedantic don't get warnings from LLVM. There's still more -pedantic warnings to fix. llvm-svn: 28453
* Make this print the right start pointerChris Lattner2006-05-161-2/+4
| | | | llvm-svn: 28321
* LoadLibraryPermanently can theoretically throw an exception. Do not propagateChris Lattner2006-05-141-1/+4
| | | | | | it out of 'ExecutionEngine::create'. This fixes a problem reported by coverity. llvm-svn: 28293
* Fix a hypothetical memory leak, identified by Coverity. In practice, thisChris Lattner2006-05-121-1/+3
| | | | | | object is never deleted though. llvm-svn: 28256
* Refactor a bunch of includes so that TargetMachine.h doesn't have to includeOwen Anderson2006-05-121-0/+1
| | | | | | | TargetData.h. This should make recompiles a bit faster with my current TargetData tinkering. llvm-svn: 28238
* For extra sanity checking, fill free'd memory with garbage so we know thatChris Lattner2006-05-121-0/+3
| | | | | | people aren't reusing machine code buffers at all. llvm-svn: 28228
* Fix some bugs in the freelist manipulation code.Chris Lattner2006-05-111-12/+33
| | | | | | Finally, implement ExecutionEngine::freeMachineCodeForFunction. llvm-svn: 28227
* Significantly revamp allocation of machine code to use free lists, realChris Lattner2006-05-111-51/+340
| | | | | | | allocation policies and much more. All this complexity, and we have no functionality change, woo! :) llvm-svn: 28225
* Move some methods out of line so that MutexGuard.h isn't needed in a public ↵Chris Lattner2006-05-083-9/+83
| | | | | | header. llvm-svn: 28179
OpenPOWER on IntegriCloud