4b3a356493 
								
							 
						 
						
							
							
								
								Re-committing r76828 with the JIT memory manager changes now that the build  
							
							... 
							
							
							
							bots like the BumpPtrAllocator changes.
llvm-svn: 76902 
							
						 
						
							2009-07-23 21:46:56 +00:00  
				
					
						
							
							
								 
						
							
								921673225c 
								
							 
						 
						
							
							
								
								Reverting r76825 and r76828, since they caused clang runtime errors and some build failure involving memset.  
							
							... 
							
							
							
							llvm-svn: 76838 
							
						 
						
							2009-07-23 01:40:54 +00:00  
				
					
						
							
							
								 
						
							
								1a722d9b73 
								
							 
						 
						
							
							
								
								Make the JIT code emitter properly retry and ask for more memory when it runs  
							
							... 
							
							
							
							out of memory, and also make the default memory manager allocate more memory
when it runs out.
Also, switch function stubs and global data over to using the BumpPtrAllocator.
This makes it so the JIT no longer mmaps (or the equivalent on Windows) 16 MB
of memory, and instead allocates in 512K slabs.  I suspect this size could go
lower, especially on embedded platforms, now that more slabs can be allocated.
llvm-svn: 76828 
							
						 
						
							2009-07-23 00:49:59 +00:00  
				
					
						
							
							
								 
						
							
								a78d809abc 
								
							 
						 
						
							
							
								
								Switch lli back to using allocate-gvs-with-code behavior.  
							
							... 
							
							
							
							- Otherwise we get two regressions in llvm-test for applications which run out
   of space.
 - Once the JIT memory manager is improved, this can be switched back.
llvm-svn: 76291 
							
						 
						
							2009-07-18 08:07:13 +00:00  
				
					
						
							
							
								 
						
							
								fc8a2d5a83 
								
							 
						 
						
							
							
								
								Add EngineBuilder to ExecutionEngine in favor of the five optional argument EE::create().  
							
							... 
							
							
							
							Also a test commit.
llvm-svn: 76276 
							
						 
						
							2009-07-18 00:42:18 +00:00  
				
					
						
							
							
								 
						
							
								3d92d936b9 
								
							 
						 
						
							
							
								
								Make sure targets are initialized before we do anything, even command line  
							
							... 
							
							
							
							processing.
llvm-svn: 75888 
							
						 
						
							2009-07-16 02:04:54 +00:00  
				
					
						
							
							
								 
						
							
								19251ec836 
								
							 
						 
						
							
							
								
								To simplify the upcoming context-on-type change, switch all command line tools to using the default global context for now.  
							
							... 
							
							
							
							This will let us to hardwire stuff to the global context in the short term while the API is sorted out.
llvm-svn: 75846 
							
						 
						
							2009-07-15 22:16:10 +00:00  
				
					
						
							
							
								 
						
							
								d8db376071 
								
							 
						 
						
							
							
								
								Use errs() instead of std::cerr.  
							
							... 
							
							
							
							llvm-svn: 75791 
							
						 
						
							2009-07-15 16:35:29 +00:00  
				
					
						
							
							
								 
						
							
								bf3d6ba557 
								
							 
						 
						
							
							
								
								Add a --with-oprofile flag to configure, which uses OProfile's agent  
							
							... 
							
							
							
							library to tell it the addresses of JITted functions.  For a
particular program, this changes the opreport -l output from:
samples %    image name        symbol name
48182  98.9729 anon (tgid:19412 range:0x7f12ccaab000-0x7f12cdaab000) anon (tgid:19412 range:0x7f12ccaab000-0x7f12cdaab000)
11     0.0226  libstdc++.so.6.0.9    /usr/lib/libstdc++.so.6.0.9
to:
samples %    image name        symbol name
24565  60.7308 19814.jo        fib_left
15365  37.9861 19814.jo        fib_right
22     0.0544  ld-2.7.so       do_lookup_x
llvm-svn: 75279 
							
						 
						
							2009-07-10 21:08:20 +00:00  
				
					
						
							
							
								 
						
							
								f840ed7ed4 
								
							 
						 
						
							
							
								
								Fix lli to print an error and exit when EE returns null but no string.  Patch  
							
							... 
							
							
							
							by Eric Rannaud!
llvm-svn: 74930 
							
						 
						
							2009-07-07 18:31:09 +00:00  
				
					
						
							
							
								 
						
							
								f011f28767 
								
							 
						 
						
							
							
								
								Fix typo: intepreter->interpreter.  
							
							... 
							
							
							
							llvm-svn: 74770 
							
						 
						
							2009-07-03 12:11:32 +00:00  
				
					
						
							
							
								 
						
							
								1cf085d558 
								
							 
						 
						
							
							
								
								Hold the LLVMContext by reference rather than by pointer.  
							
							... 
							
							
							
							llvm-svn: 74640 
							
						 
						
							2009-07-01 21:22:36 +00:00  
				
					
						
							
							
								 
						
							
								6773d388aa 
								
							 
						 
						
							
							
								
								Add a pointer to the owning LLVMContext to Module.  This requires threading LLVMContext through a lot  
							
							... 
							
							
							
							of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.
Patches for Clang and LLVM-GCC to follow.
llvm-svn: 74614 
							
						 
						
							2009-07-01 16:58:40 +00:00  
				
					
						
							
							
								 
						
							
								0b08f3d7cc 
								
							 
						 
						
							
							
								
								Add a JITEventListener interface that gets called back when a new function is  
							
							... 
							
							
							
							emitted or the machine code for a function is freed.  Chris mentioned that we
may also want a notification when a stub is emitted, but that'll be a future
change.  I intend to use this to tell oprofile where functions are emitted and
what lines correspond to what addresses.
llvm-svn: 74157 
							
						 
						
							2009-06-25 02:04:04 +00:00  
				
					
						
							
							
								 
						
							
								5dcc4f6999 
								
							 
						 
						
							
							
								
								switch to using llvm/Target/TargetSelect.h  
							
							... 
							
							
							
							llvm-svn: 73611 
							
						 
						
							2009-06-17 16:42:19 +00:00  
				
					
						
							
							
								 
						
							
								4ced3324c5 
								
							 
						 
						
							
							
								
								Use Doug's new LLVM_NATIVE_ARCH macro in config.h to link in the native  
							
							... 
							
							
							
							target so that the JIT works in LLI, not just the interpreter.
llvm-svn: 73595 
							
						 
						
							2009-06-17 02:15:40 +00:00  
				
					
						
							
							
								 
						
							
								09bd0b1bd2 
								
							 
						 
						
							
							
								
								Default llc / lli optimization to "Default", which corresponds to -O1 / -O2.  
							
							... 
							
							
							
							llvm-svn: 70934 
							
						 
						
							2009-05-04 23:05:19 +00:00  
				
					
						
							
							
								 
						
							
								026e5d7667 
								
							 
						 
						
							
							
								
								Instead of passing in an unsigned value for the optimization level, use an enum,  
							
							... 
							
							
							
							which better identifies what the optimization is doing. And is more flexible for
future uses.
llvm-svn: 70440 
							
						 
						
							2009-04-29 23:29:43 +00:00  
				
					
						
							
							
								 
						
							
								e3fc2d13be 
								
							 
						 
						
							
							
								
								Change various llvm utilities to use PrettyStackTraceProgram in  
							
							... 
							
							
							
							their main routines.  This makes the tools print their argc/argv
commands if they crash.
llvm-svn: 66248 
							
						 
						
							2009-03-06 05:34:10 +00:00  
				
					
						
							
							
								 
						
							
								6158254d1d 
								
							 
						 
						
							
							
								
								Add command line option -entry-funcion to override entry function (default is main).  
							
							... 
							
							
							
							llvm-svn: 58779 
							
						 
						
							2008-11-05 23:21:52 +00:00  
				
					
						
							
							
								 
						
							
								06d988eaa3 
								
							 
						 
						
							
							
								
								Add -fast command line option to lli. It enables fast codegen path.  
							
							... 
							
							
							
							llvm-svn: 54524 
							
						 
						
							2008-08-08 08:12:06 +00:00  
				
					
						
							
							
								 
						
							
								16f036cbe8 
								
							 
						 
						
							
							
								
								Rename -no-lazy to -disable-lazy-compilation.  
							
							... 
							
							
							
							llvm-svn: 51386 
							
						 
						
							2008-05-21 18:20:21 +00:00  
				
					
						
							
							
								 
						
							
								0422bef7ed 
								
							 
						 
						
							
							
								
								Added command line option -no-lazy to disable JIT lazy compilation.  
							
							... 
							
							
							
							llvm-svn: 50095 
							
						 
						
							2008-04-22 06:51:41 +00:00  
				
					
						
							
							
								 
						
							
								345353d6b4 
								
							 
						 
						
							
							
								
								remove attributions from tools.  
							
							... 
							
							
							
							llvm-svn: 45421 
							
						 
						
							2007-12-29 20:44:31 +00:00  
				
					
						
							
							
								 
						
							
								2c6a821fd7 
								
							 
						 
						
							
							
								
								Move the space in overview output for commands out of each of the  
							
							... 
							
							
							
							commands and into the common code.
llvm-svn: 42752 
							
						 
						
							2007-10-08 15:45:12 +00:00  
				
					
						
							
							
								 
						
							
								e16561cd5d 
								
							 
						 
						
							
							
								
								Here is the bulk of the sanitizing.  
							
							... 
							
							
							
							Almost all occurrences of "bytecode" in the sources have been eliminated.
llvm-svn: 37913 
							
						 
						
							2007-07-05 17:07:56 +00:00  
				
					
						
							
							
								 
						
							
								9e9a34c6bf 
								
							 
						 
						
							
							
								
								use the new MemoryBuffer interfaces to simplify error reporting in clients.  
							
							... 
							
							
							
							llvm-svn: 36900 
							
						 
						
							2007-05-06 23:45:49 +00:00  
				
					
						
							
							
								 
						
							
								f5599efb00 
								
							 
						 
						
							
							
								
								switch tools to bitcode from bytecode  
							
							... 
							
							
							
							llvm-svn: 36872 
							
						 
						
							2007-05-06 09:32:02 +00:00  
				
					
						
							
							
								 
						
							
								2785bdbefd 
								
							 
						 
						
							
							
								
								add bitcode reading support, remove eh stuff  
							
							... 
							
							
							
							llvm-svn: 36840 
							
						 
						
							2007-05-06 04:58:26 +00:00  
				
					
						
							
							
								 
						
							
								4c522b9434 
								
							 
						 
						
							
							
								
								reset errno to zero on entry to the application's main function.  This fixes  
							
							... 
							
							
							
							MultiSource/Applications/minisat in the JIT.
Note that the libsystem stuff should ideally never modify errno.  :(
llvm-svn: 36508 
							
						 
						
							2007-04-27 17:02:33 +00:00  
				
					
						
							
							
								 
						
							
								fe5550b2cf 
								
							 
						 
						
							
							
								
								Obtain the exit function before execution just in case the module  
							
							... 
							
							
							
							disappears before we get to calling the exit function.
llvm-svn: 34953 
							
						 
						
							2007-03-06 03:12:55 +00:00  
				
					
						
							
							
								 
						
							
								e586f2e7f7 
								
							 
						 
						
							
							
								
								1. Handle errors around the ModuleProvider. This is necessary since it is  
							
							... 
							
							
							
							reading bytecode.
2. The interpreter can delete the ModuleProvider and replace it with
   another so don't depend on it being around after the EE is created.
3. Don't just run llvm_shutdown on exit but actually delete the EE as well.
   This cleans up a vast amount of memory (but not all) that EE retained
   through exit.
llvm-svn: 34888 
							
						 
						
							2007-03-03 18:21:44 +00:00  
				
					
						
							
							
								 
						
							
								a0e49f2ead 
								
							 
						 
						
							
							
								
								push bytecode decompressor out through APIs.  Now the bytecode reader  
							
							... 
							
							
							
							api's look like this:
ModuleProvider *getBytecodeModuleProvider(
  const std::string &Filename,  ///< Name of file to be read
  BCDecompressor_t *BCDC = Compressor::decompressToNewBuffer,
  std::string* ErrMsg = 0,      ///< Optional error message holder
  BytecodeHandler* H = 0        ///< Optional handler for reader events
);
This is ugly, but allows a client to say:
  getBytecodeModuleProvider("foo", 0);
If they do this, there is no dependency on the compression libraries, saving
codesize.
llvm-svn: 34012 
							
						 
						
							2007-02-07 21:41:02 +00:00  
				
					
						
							
							
								 
						
							
								1241d6d5ab 
								
							 
						 
						
							
							
								
								For PR411:  
							
							... 
							
							
							
							Adjust to changes in Module interface:
getMainFunction() -> getFunction("main")
getNamedFunction(X) -> getFunction(X)
llvm-svn: 33922 
							
						 
						
							2007-02-05 21:19:13 +00:00  
				
					
						
							
							
								 
						
							
								e05182cd1e 
								
							 
						 
						
							
							
								
								fix atexit.  This is an overcomplex way of calling exit, but it is required,  
							
							... 
							
							
							
							as the jit intercepts exit calls to implement atexit handlers.  This
fixes SingleSource/UnitTests/2003-05-14-AtExit
llvm-svn: 33008 
							
						 
						
							2007-01-08 07:36:34 +00:00  
				
					
						
							
							
								 
						
							
								bc3ffdda4c 
								
							 
						 
						
							
							
								
								this is an overcomplex way to call exit :)  
							
							... 
							
							
							
							llvm-svn: 32978 
							
						 
						
							2007-01-07 06:43:08 +00:00  
				
					
						
							
							
								 
						
							
								eb14edc646 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							Convert signed integer types to signless.
llvm-svn: 32790 
							
						 
						
							2006-12-31 06:02:26 +00:00  
				
					
						
							
							
								 
						
							
								6161452b67 
								
							 
						 
						
							
							
								
								make statistics and timing info print even if the JIT'd program calls exit  
							
							... 
							
							
							
							instead of returning from main.
llvm-svn: 32414 
							
						 
						
							2006-12-10 19:01:52 +00:00  
				
					
						
							
							
								 
						
							
								76d4632d92 
								
							 
						 
						
							
							
								
								make all llvm tools call llvm_shutdown when they exit, static'ify some stuff.  
							
							... 
							
							
							
							With this change, I can now move -stats to print when llvm_shutdown is called.
llvm-svn: 32250 
							
						 
						
							2006-12-06 01:18:01 +00:00  
				
					
						
							
							
								 
						
							
								3f0ffd31cf 
								
							 
						 
						
							
							
								
								add a new (hidden) -disable-core-files option  
							
							... 
							
							
							
							llvm-svn: 30318 
							
						 
						
							2006-09-14 06:17:09 +00:00  
				
					
						
							
							
								 
						
							
								f25aebf8cf 
								
							 
						 
						
							
							
								
								For PR797:  
							
							... 
							
							
							
							Remove exception throwing/handling from lib/Bytecode, and adjust its users
to compensate for changes in the interface.
llvm-svn: 29875 
							
						 
						
							2006-08-25 17:43:11 +00:00  
				
					
						
							
							
								 
						
							
								5af6a3ffdb 
								
							 
						 
						
							
							
								
								Fix the build on case-sensitive filesystems :(  
							
							... 
							
							
							
							llvm-svn: 29457 
							
						 
						
							2006-08-01 22:34:35 +00:00  
				
					
						
							
							
								 
						
							
								95eda5b1f3 
								
							 
						 
						
							
							
								
								Introducing plugable register allocators and instruction schedulers.  
							
							... 
							
							
							
							llvm-svn: 29434 
							
						 
						
							2006-08-01 14:21:23 +00:00  
				
					
						
							
							
								 
						
							
								0eafbc3593 
								
							 
						 
						
							
							
								
								Get JIT/Interpreter working on Windows again.  
							
							... 
							
							
							
							llvm-svn: 27037 
							
						 
						
							2006-03-24 02:53:49 +00:00  
				
					
						
							
							
								 
						
							
								d0eb1d12d2 
								
							 
						 
						
							
							
								
								Fit to 80 columns.  
							
							... 
							
							
							
							Add support for running static ctor/dtors that aren't handled by __main.
This fixes programs with the JIT and the new CFE, such as HBD.
llvm-svn: 26620 
							
						 
						
							2006-03-08 18:43:36 +00:00  
				
					
						
							
							
								 
						
							
								78e9e10b53 
								
							 
						 
						
							
							
								
								rename option  
							
							... 
							
							
							
							llvm-svn: 24732 
							
						 
						
							2005-12-16 05:19:18 +00:00  
				
					
						
							
							
								 
						
							
								76766cb880 
								
							 
						 
						
							
							
								
								provide an option to override the target triple in a module from the commandline.  
							
							... 
							
							
							
							llvm-svn: 24730 
							
						 
						
							2005-12-16 05:00:21 +00:00  
				
					
						
							
							
								 
						
							
								352630141c 
								
							 
						 
						
							
							
								
								Revert my previous patch which broke due to lazy streaming of functions  
							
							... 
							
							
							
							from .bc files.
llvm-svn: 24575 
							
						 
						
							2005-12-02 19:00:22 +00:00  
				
					
						
							
							
								 
						
							
								ef2d8ca0b6 
								
							 
						 
						
							
							
								
								If a module has a main, but it is defined externally, refuse to run it.  
							
							... 
							
							
							
							Attempting to run it will find lli's main, which isn't the desired effect.
llvm-svn: 24569 
							
						 
						
							2005-12-01 22:48:23 +00:00  
				
					
						
							
							
								 
						
							
								11e26b52b2 
								
							 
						 
						
							
							
								
								When a function takes a variable number of pointer arguments, with a zero  
							
							... 
							
							
							
							pointer marking the end of the list, the zero *must* be cast to the pointer
type.  An un-cast zero is a 32-bit int, and at least on x86_64, gcc will
not extend the zero to 64 bits, thus allowing the upper 32 bits to be
random junk.
The new END_WITH_NULL macro may be used to annotate a such a function
so that GCC (version 4 or newer) will detect the use of un-casted zero
at compile time.
llvm-svn: 23888 
							
						 
						
							2005-10-23 04:37:20 +00:00  
				
					
						
							
							
								 
						
							
								650ba8eb56 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							... 
							
							
							
							llvm-svn: 21428 
							
						 
						
							2005-04-22 00:00:37 +00:00  
				
					
						
							
							
								 
						
							
								996ec72d48 
								
							 
						 
						
							
							
								
								For PR351:  
							
							... 
							
							
							
							* Place a try/catch block around the entire tool to Make sure std::string
  exceptions are caught and printed before exiting the tool.
* Make sure we catch unhandled exceptions at the top level so that we don't
  abort with a useless message but indicate than an unhandled exception was
  generated.
llvm-svn: 19192 
							
						 
						
							2004-12-30 05:36:08 +00:00  
				
					
						
							
							
								 
						
							
								7c16caa336 
								
							 
						 
						
							
							
								
								Changes For Bug 352  
							
							... 
							
							
							
							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 
							
						 
						
							2004-09-01 22:55:40 +00:00  
				
					
						
							
							
								 
						
							
								e3263ecaf0 
								
							 
						 
						
							
							
								
								The functions in Signal.h are now in the llvm::sys namespace - adjust  
							
							... 
							
							
							
							llvm-svn: 16091 
							
						 
						
							2004-08-29 19:28:55 +00:00  
				
					
						
							
							
								 
						
							
								4b6cdab582 
								
							 
						 
						
							
							
								
								Add a -load option  
							
							... 
							
							
							
							llvm-svn: 14739 
							
						 
						
							2004-07-11 01:06:59 +00:00  
				
					
						
							
							
								 
						
							
								f0ebb25d2b 
								
							 
						 
						
							
							
								
								Add #include <iostream> since Value.h does not include it any more.  
							
							... 
							
							
							
							llvm-svn: 14623 
							
						 
						
							2004-07-04 12:20:55 +00:00  
				
					
						
							
							
								 
						
							
								278f5152d3 
								
							 
						 
						
							
							
								
								Header file moved  
							
							... 
							
							
							
							llvm-svn: 13813 
							
						 
						
							2004-05-27 05:41:36 +00:00  
				
					
						
							
							
								 
						
							
								69e896bdcf 
								
							 
						 
						
							
							
								
								Make sure to print a stack trace whenever an error signal is delivered to  
							
							... 
							
							
							
							the tool.
llvm-svn: 11633 
							
						 
						
							2004-02-19 20:32:39 +00:00  
				
					
						
							
							
								 
						
							
								dabec3ba96 
								
							 
						 
						
							
							
								
								Pass extra arguments around n stuph  
							
							... 
							
							
							
							llvm-svn: 10631 
							
						 
						
							2003-12-28 09:51:04 +00:00  
				
					
						
							
							
								 
						
							
								99958ce7bb 
								
							 
						 
						
							
							
								
								Factor out code to ExecutionEngine  
							
							... 
							
							
							
							llvm-svn: 10614 
							
						 
						
							2003-12-26 06:49:53 +00:00  
				
					
						
							
							
								 
						
							
								e005b754f3 
								
							 
						 
						
							
							
								
								Simplify code  
							
							... 
							
							
							
							llvm-svn: 10613 
							
						 
						
							2003-12-26 06:36:20 +00:00  
				
					
						
							
							
								 
						
							
								079f4d5e71 
								
							 
						 
						
							
							
								
								* eliminate the -f argument to lli, as it was silly and never useful anyway  
							
							... 
							
							
							
							* Inline callMain function
* Remove hack from the ExecutionEngines where the 'run' method would automatically
  run atExit functions.  Fixing this requires explicitly calling exit if main returns
llvm-svn: 10611 
							
						 
						
							2003-12-26 06:14:47 +00:00  
				
					
						
							
							
								 
						
							
								141ea3a052 
								
							 
						 
						
							
							
								
								update comment  
							
							... 
							
							
							
							llvm-svn: 10607 
							
						 
						
							2003-12-26 05:07:35 +00:00  
				
					
						
							
							
								 
						
							
								1f147379b7 
								
							 
						 
						
							
							
								
								Add an assertion to make sure we are at least getting argv[0] right.  
							
							... 
							
							
							
							Use a clearer error message when we fail to load a program.
llvm-svn: 10414 
							
						 
						
							2003-12-12 00:47:19 +00:00  
				
					
						
							
							
								 
						
							
								960707c335 
								
							 
						 
						
							
							
								
								Put all LLVM code into the llvm namespace, as per bug 109.  
							
							... 
							
							
							
							llvm-svn: 9903 
							
						 
						
							2003-11-11 22:41:34 +00:00  
				
					
						
							
							
								 
						
							
								5564406f6e 
								
							 
						 
						
							
							
								
								Add the ability for users to specify a specific argv[0] to pass into the  
							
							... 
							
							
							
							program
llvm-svn: 9565 
							
						 
						
							2003-10-28 22:51:44 +00:00  
				
					
						
							
							
								 
						
							
								055148bdc1 
								
							 
						 
						
							
							
								
								TraceMode, as you may have heard, is history.  
							
							... 
							
							
							
							ExecutionEngine::create no longer takes a TraceMode argument.
llvm-svn: 9495 
							
						 
						
							2003-10-24 20:00:17 +00:00  
				
					
						
							
							
								 
						
							
								567fe2f312 
								
							 
						 
						
							
							
								
								Removed extraneous comment line.  
							
							... 
							
							
							
							llvm-svn: 9308 
							
						 
						
							2003-10-20 20:40:30 +00:00  
				
					
						
							
							
								 
						
							
								09344dcf97 
								
							 
						 
						
							
							
								
								Added copyright header to all C++ source files.  
							
							... 
							
							
							
							llvm-svn: 9291 
							
						 
						
							2003-10-20 17:47:21 +00:00  
				
					
						
							
							
								 
						
							
								5b255e59ac 
								
							 
						 
						
							
							
								
								Enabling incremental bytecode loading in the JIT:  
							
							... 
							
							
							
							* Use the incremental bytecode reader interface to speed up execution
llvm-svn: 9127 
							
						 
						
							2003-10-14 21:39:53 +00:00  
				
					
						
							
							
								 
						
							
								c2186e3110 
								
							 
						 
						
							
							
								
								To be consistent with the rest of LLVM codebase (and the rest of this file):  
							
							... 
							
							
							
							* Changed tabs to spaces
* Removed a space between a function call and its arguments (...)
llvm-svn: 8712 
							
						 
						
							2003-09-25 18:10:34 +00:00  
				
					
						
							
							
								 
						
							
								ad48131254 
								
							 
						 
						
							
							
								
								Reorder #includes to follow LLVM conventions  
							
							... 
							
							
							
							llvm-svn: 8375 
							
						 
						
							2003-09-05 20:08:15 +00:00  
				
					
						
							
							
								 
						
							
								e99ca44153 
								
							 
						 
						
							
							
								
								Interpreter, JIT moved to lib/ExecutionEngine (includes -> llvm/ExecutionEngine)  
							
							... 
							
							
							
							Build lli using executionengine library
llvm-svn: 8372 
							
						 
						
							2003-09-05 19:42:34 +00:00  
				
					
						
							
							
								 
						
							
								a7669038fc 
								
							 
						 
						
							
							
								
								Make CreateArgv part of lli rather than part of ExecutionEngine.  
							
							... 
							
							
							
							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 
							
						 
						
							2003-09-05 18:42:01 +00:00  
				
					
						
							
							
								 
						
							
								92f8b30d24 
								
							 
						 
						
							
							
								
								Move EE dtor where it belongs  
							
							... 
							
							
							
							llvm-svn: 8345 
							
						 
						
							2003-09-04 22:57:27 +00:00  
				
					
						
							
							
								 
						
							
								e80e5ba7f8 
								
							 
						 
						
							
							
								
								Interpreter cleanups:  
							
							... 
							
							
							
							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 
							
						 
						
							2003-09-04 22:21:24 +00:00  
				
					
						
							
							
								 
						
							
								4bd3bd5b5a 
								
							 
						 
						
							
							
								
								ExecutionEngine.cpp: Move execution engine creation stuff into a new  
							
							... 
							
							
							
							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 
							
						 
						
							2003-09-03 20:34:19 +00:00  
				
					
						
							
							
								 
						
							
								5c13c941de 
								
							 
						 
						
							
							
								
								Remove some long-dead code  
							
							... 
							
							
							
							llvm-svn: 8135 
							
						 
						
							2003-08-24 19:52:02 +00:00  
				
					
						
							
							
								 
						
							
								4d4f424f0c 
								
							 
						 
						
							
							
								
								Targets now configure themselves based on the source module, not on the  
							
							... 
							
							
							
							ad-hoc "Config" flags
llvm-svn: 8134 
							
						 
						
							2003-08-24 19:50:53 +00:00  
				
					
						
							
							
								 
						
							
								479854091a 
								
							 
						 
						
							
							
								
								Add preliminary support for "any" pointersize/endianness.  This will need  
							
							... 
							
							
							
							to change soon though.
llvm-svn: 8123 
							
						 
						
							2003-08-24 14:02:47 +00:00  
				
					
						
							
							
								 
						
							
								71c3e6236f 
								
							 
						 
						
							
							
								
								The JIT now passes the environment pointer to the main() function when it  
							
							... 
							
							
							
							starts a program.  This allows the GNU env program to compile and JIT under
LLVM.
llvm-svn: 8022 
							
						 
						
							2003-08-21 21:12:30 +00:00  
				
					
						
							
							
								 
						
							
								b752116230 
								
							 
						 
						
							
							
								
								Remove ".bc" from the end of InputFile if it is there, in  
							
							... 
							
							
							
							tools/lli/lli.cpp:main().
llvm-svn: 6317 
							
						 
						
							2003-05-23 20:28:07 +00:00  
				
					
						
							
							
								 
						
							
								966e1a20ce 
								
							 
						 
						
							
							
								
								The JIT is the default mode for LLI now  
							
							... 
							
							
							
							llvm-svn: 6118 
							
						 
						
							2003-05-12 14:31:57 +00:00  
				
					
						
							
							
								 
						
							
								cebde8d74c 
								
							 
						 
						
							
							
								
								Build the appropriate target machine for the input pointer size and endianness  
							
							... 
							
							
							
							llvm-svn: 5838 
							
						 
						
							2003-04-22 18:10:32 +00:00  
				
					
						
							
							
								 
						
							
								5aa5663353 
								
							 
						 
						
							
							
								
								Fixes to compile with GCC 3.2  
							
							... 
							
							
							
							llvm-svn: 5134 
							
						 
						
							2002-12-24 00:39:16 +00:00  
				
					
						
							
							
								 
						
							
								a0d7b084ef 
								
							 
						 
						
							
							
								
								Substantial changes to refactor LLI to incorporate both the Jello JIT and  
							
							... 
							
							
							
							the traditional LLI interpreter
llvm-svn: 5125 
							
						 
						
							2002-12-23 23:59:41 +00:00  
				
					
						
							
							
								 
						
							
								4f96aa450e 
								
							 
						 
						
							
							
								
								Add support to count the number of dynamic instructions executed by LLI  
							
							... 
							
							
							
							llvm-svn: 4955 
							
						 
						
							2002-12-08 05:51:08 +00:00  
				
					
						
							
							
								 
						
							
								6d044b588b 
								
							 
						 
						
							
							
								
								Namespace correctness is good  
							
							... 
							
							
							
							llvm-svn: 3088 
							
						 
						
							2002-07-25 16:39:56 +00:00  
				
					
						
							
							
								 
						
							
								ba614ba122 
								
							 
						 
						
							
							
								
								REmove extra blank lines  
							
							... 
							
							
							
							llvm-svn: 3084 
							
						 
						
							2002-07-25 15:40:38 +00:00  
				
					
						
							
							
								 
						
							
								f5cad15a67 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 2985 
							
						 
						
							2002-07-22 02:10:13 +00:00  
				
					
						
							
							
								 
						
							
								5de2204fe8 
								
							 
						 
						
							
							
								
								Create a new #include "Support/..." directory structure to move things  
							
							... 
							
							
							
							from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400 
							
						 
						
							2001-11-27 00:03:19 +00:00  
				
					
						
							
							
								 
						
							
								921875394f 
								
							 
						 
						
							
							
								
								Fix problem where lli < foo.bc would have argc = 0  
							
							... 
							
							
							
							llvm-svn: 1393 
							
						 
						
							2001-11-26 19:20:38 +00:00  
				
					
						
							
							
								 
						
							
								3f741a560a 
								
							 
						 
						
							
							
								
								Initialize map for purify  
							
							... 
							
							
							
							llvm-svn: 1049 
							
						 
						
							2001-10-30 20:28:46 +00:00  
				
					
						
							
							
								 
						
							
								c6503e8a2f 
								
							 
						 
						
							
							
								
								Oops, accidentally broke reading from stdin when doing command line arguments  
							
							... 
							
							
							
							llvm-svn: 1026 
							
						 
						
							2001-10-29 14:00:48 +00:00  
				
					
						
							
							
								 
						
							
								009f8108bc 
								
							 
						 
						
							
							
								
								Implement a -trace command line option and a trace option in the interpreter.  
							
							... 
							
							
							
							llvm-svn: 989 
							
						 
						
							2001-10-27 08:43:52 +00:00  
				
					
						
							
							
								 
						
							
								6642eec003 
								
							 
						 
						
							
							
								
								Provide argv for commands  
							
							... 
							
							
							
							llvm-svn: 987 
							
						 
						
							2001-10-27 05:54:31 +00:00  
				
					
						
							
							
								 
						
							
								d299dbac0e 
								
							 
						 
						
							
							
								
								Enhancements to pass argc & argv to main if required  
							
							... 
							
							
							
							llvm-svn: 909 
							
						 
						
							2001-10-18 21:55:32 +00:00  
				
					
						
							
							
								 
						
							
								c62e2e5bf7 
								
							 
						 
						
							
							
								
								Implement global variables.  Struct and Pointer initializers are not implemented yet though  
							
							... 
							
							
							
							llvm-svn: 818 
							
						 
						
							2001-10-15 05:51:48 +00:00  
				
					
						
							
							
								 
						
							
								d7ff578767 
								
							 
						 
						
							
							
								
								Initial checkin of interpreter  
							
							... 
							
							
							
							llvm-svn: 361 
							
						 
						
							2001-08-23 17:05:04 +00:00