| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch completes the changes for making lli thread-safe. Here's the list
of changes:
* The Support/ThreadSupport* files were removed and replaced with the
MutexGuard.h file since all ThreadSupport* declared was a Mutex Guard.
The implementation of MutexGuard.h is now based on sys::Mutex which hides
its implementation and makes it unnecessary to have the -NoSupport.h and
-PThreads.h versions of ThreadSupport.
* All places in ExecutionEngine that previously referred to "Mutex" now
refer to sys::Mutex
* All places in ExecutionEngine that previously referred to "MutexLocker"
now refer to MutexGuard (this is frivolous but I believe the technically
correct name for such a class is "Guard" not a "Locker").
These changes passed all of llvm-test. All we need now are some test cases
that actually use multiple threads.
llvm-svn: 22404
|
|
|
|
| |
llvm-svn: 22369
|
|
|
|
|
|
| |
that use 64-bit integers on 32-bit hosts.
llvm-svn: 21886
|
|
|
|
| |
llvm-svn: 21420
|
|
|
|
|
|
|
|
| |
using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597
|
|
|
|
| |
llvm-svn: 20354
|
|
|
|
|
|
| |
initialized to anything, including garbage.
llvm-svn: 20010
|
|
|
|
| |
llvm-svn: 19391
|
|
|
|
| |
llvm-svn: 18357
|
|
|
|
| |
llvm-svn: 17988
|
|
|
|
| |
llvm-svn: 17239
|
|
|
|
| |
llvm-svn: 17055
|
|
|
|
|
|
|
|
| |
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
|
|
|
|
| |
llvm-svn: 15801
|
|
|
|
| |
llvm-svn: 15487
|
|
|
|
|
|
|
| |
- Replace ConstantPointerRef usage with GlobalValue usage
- Correct isa<Constant> for GlobalValue subclass
llvm-svn: 14951
|
|
|
|
| |
llvm-svn: 14847
|
|
|
|
|
|
| |
night
llvm-svn: 14760
|
|
|
|
|
|
| |
Improve exeception handling around bcreader invocations.
llvm-svn: 14674
|
|
|
|
| |
llvm-svn: 14265
|
|
|
|
| |
llvm-svn: 14201
|
|
|
|
| |
llvm-svn: 13857
|
|
|
|
| |
llvm-svn: 12435
|
|
|
|
|
|
| |
should speed it up a bit on a lot of programs
llvm-svn: 11472
|
|
|
|
|
|
| |
emitGlobals
llvm-svn: 11191
|
|
|
|
| |
llvm-svn: 11043
|
|
|
|
|
|
|
|
|
|
| |
turn a memory address back into the LLVM global object that starts at that
address. Note that this won't cause any additional datastructures to be built
for clients of the EE that don't need this information.
Also modified some code to not access the GlobalAddress map directly.
llvm-svn: 10674
|
|
|
|
|
|
| |
Reimplement the Interpreters implementation of va_* to be more direct.
llvm-svn: 10627
|
|
|
|
| |
llvm-svn: 10616
|
|
|
|
| |
llvm-svn: 10549
|
|
|
|
|
|
| |
Also, add a stat for the number of globals emitted
llvm-svn: 10547
|
|
|
|
| |
llvm-svn: 10543
|
|
|
|
| |
llvm-svn: 10320
|
|
|
|
| |
llvm-svn: 10093
|
|
|
|
| |
llvm-svn: 9903
|
|
|
|
| |
llvm-svn: 9488
|
|
|
|
|
|
| |
Header files will be on the way.
llvm-svn: 9298
|
|
|
|
|
|
|
| |
ModuleProvider, which has bad consequences in lli::callAsMain() which tries to
access that same Module*.
llvm-svn: 9205
|
|
|
|
|
|
|
|
| |
* Move the constructors from .h file here
* Document ExecutionEngine::create()
* Catch exception possibly thrown by ModuleProvider::releaseModule()
llvm-svn: 9181
|
|
|
|
|
|
| |
* ExecutionEngine and VM can be constructed using a ModuleProvider.
llvm-svn: 9124
|
|
|
|
|
|
|
| |
* Doxygenified function comments
* Added FIXMEs to solicit documentation for other functions
llvm-svn: 9022
|
|
|
|
| |
llvm-svn: 9012
|
|
|
|
| |
llvm-svn: 8375
|
|
|
|
|
|
| |
Build ExecutionEngine as library.
llvm-svn: 8370
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Switch Interpreter and JIT's "run" methods to take a Function and a vector of
GenericValues.
Move (almost all of) the stuff that constructs a canonical call to main()
into lli (new methods "callAsMain", "makeStringVector").
Nuke getCurrentExecutablePath(), enableTracing(), getCurrentFunction(),
isStopped(), and many dead decls from interpreter.
Add linux strdup() support to interpreter.
Make interpreter's atexit handler runner and JIT's runAtExitHandlers() look
more alike, in preparation for refactoring.
atexit() is spelled "atexit", not "at_exit".
llvm-svn: 8366
|
|
|
|
| |
llvm-svn: 8345
|
|
|
|
|
|
|
|
|
|
|
|
| |
Get rid of support for DebugMode (make it always off).
Mung some comments.
Get rid of interpreter's PROFILE_STRUCTURE_FIELDS and PerformExitStuff
which have been disabled forever.
Get rid of -abort-on-exception (make it always on).
Get rid of user interaction stuff (debug mode innards).
Simplify Interpreter's callMainFunction().
llvm-svn: 8344
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
static method here.
Remove some extra blank lines.
ExecutionEngine.h: Add its prototype.
lli.cpp: Call it.
Make creation method for each type of EE into a static method of its
own subclass.
Interpreter/Interpreter.cpp: ExecutionEngine::createInterpreter -->
Interpreter::create
Interpreter/Interpreter.h: Likewise.
JIT/JIT.cpp: ExecutionEngine::createJIT --> VM::create
JIT/VM.h: Likewise.
llvm-svn: 8343
|
|
|
|
|
|
|
| |
size is. This ensures that if the module has no specified pointer size that
things will work correctly.
llvm-svn: 8136
|
|
|
|
|
|
| |
to change soon though.
llvm-svn: 8123
|