Misha Brukman 
							
						 
					 
					
						
						
							
						
						cf614a32d5 
					 
					
						
						
							
							Removed debug print statement.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6641  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-06 00:00:54 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						3a55e8aae4 
					 
					
						
						
							
							* Institute a hack for the Sparc call to mmap() to get our generated code to be  
						
						... 
						
						
						
						laid out closer to the VM so that calls to library functions (e.g. puts()) and
  callback (e.g.  JITResolver::CompilationCallback) fit into 30 bits of the call
  instruction.
* Abort if architecture is not yet supported (not X86 or Sparc) because it
  likely requires a different set of parameters to mmap() .
* Stop using hard-coded values for page size; use sysconf(_SC_PAGESIZE) instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6610  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-04 19:45:25 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						88fe358f8a 
					 
					
						
						
							
							Sparc's dlsym() requires the special operand RTLD_SELF to find a symbol in the  
						
						... 
						
						
						
						currently-running process.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6592  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-04 01:57:22 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						906f5fa5c8 
					 
					
						
						
							
							* Removed SparcEmitter.cpp; rolled into lib/Target/Sparc/SparcV9CodeEmitter.cpp  
						
						... 
						
						
						
						* No more createX86Emitter() vs. createSparcEmitter() -- there can be only one
* As a result, the memory management semantics must be handled according to
  platform -- the parameters to mmap() are particularly sensitive to the host
  architecture.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6527  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-02 03:23:16 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						24a26e58ef 
					 
					
						
						
							
							The flag modifications weren't picking up the old values of the  
						
						... 
						
						
						
						flags before. Save them in a temporary variable, then restore them from the
temporary after creating the new constant.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6520  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-02 02:10:31 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d5af63f325 
					 
					
						
						
							
							Remove obsolete code  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6518  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-02 00:09:00 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bba1b6df9a 
					 
					
						
						
							
							Move target specific code to target files.  The new MachineCodeEmitter  
						
						... 
						
						
						
						class is actually target independent!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6517  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-01 23:24:36 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						63b99f91c9 
					 
					
						
						
							
							Fix induction variable name clash in for loops, in finishFunction().  
						
						... 
						
						
						
						Modify new MachineOperand so that its flags match the old MachineOperand's
 flags, for the flags that matter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6513  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-06-01 22:08:29 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						f86d635e20 
					 
					
						
						
							
							Fixed rewriting of branches -- they now work forward and backward.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6463  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-31 06:26:48 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						417a7c06e8 
					 
					
						
						
							
							Since malloc is no longer used, no need to free() memory.  
						
						... 
						
						
						
						Fixed BasicBlock patching by supplying correct type for the displacement.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6453  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-30 20:39:37 +00:00 
						 
				 
			
				
					
						
							
							
								Brian Gaeke 
							
						 
					 
					
						
						
							
						
						6607fbec94 
					 
					
						
						
							
							Fix call to mmap, so that it can be used on sparc.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6424  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-30 03:37:13 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						8e5bf70dff 
					 
					
						
						
							
							mmap() seems to be failing on Sparc, so just use malloc()/free() .  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6387  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-28 18:44:38 +00:00 
						 
				 
			
				
					
						
							
							
								Misha Brukman 
							
						 
					 
					
						
						
							
						
						abb027cf41 
					 
					
						
						
							
							Allow for specification of which JIT to run on the commandline.  
						
						... 
						
						
						
						`lli -march=x86' or `lli -march=sparc' will forcefully select the JIT even on a
different platform. Running lli without the -march option will select the JIT
for the platform that it's currently running on.
Pro: can test Sparc JIT (debug printing mode) on X86 -- faster to compile/link
LLVM source base to test changes.
Con: Linking lli on x86 now pulls in all the Sparc libs -> longer link time
(but X86 can bear it, right?)
In the future, perhaps this should be a ./configure option to enable/disable
target JITting...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6360  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-27 21:40:39 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						22080f9f16 
					 
					
						
						
							
							Add support for atexit handlers to the JIT, fixing 2003-05-14-AtExit.c  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6193  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-14 13:53:40 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1b72216a71 
					 
					
						
						
							
							Fix compilation problems with previous checking *blush*  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6191  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-14 13:27:36 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6701a8603f 
					 
					
						
						
							
							Add a framework for intercepting system calls  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6190  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-14 13:26:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						56adf152f6 
					 
					
						
						
							
							Make sure that globals are emitted AFTER the passmanager is set up for the JIT,  
						
						... 
						
						
						
						because the globals may refer to functions that need to be compiled!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6105  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-12 02:14:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						6125fddb52 
					 
					
						
						
							
							Add support for function stubs, which allow calling functions which need to  
						
						... 
						
						
						
						have an address available, but have not yet been code generated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6059  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-09 03:30:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						eb5a93b86b 
					 
					
						
						
							
							Minor speedup by avoiding callbacks to functions already generated  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6052  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-08 21:44:21 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						c309a7627c 
					 
					
						
						
							
							Improve efficiency of JIT by having it use direct function calls instead of  
						
						... 
						
						
						
						signals to regain control from the executing code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6051  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-08 21:34:11 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						66a8494e98 
					 
					
						
						
							
							assert early instead of late for unimplemented feature  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6050  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-05-08 21:08:43 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						910687ec55 
					 
					
						
						
							
							Fix warnings on sparc  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5427  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-01-29 18:02:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0d448c03f3 
					 
					
						
						
							
							Add support for named functions  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5258  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-01-13 01:00:48 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f1dd28d89e 
					 
					
						
						
							
							Dead file  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5257  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-01-13 01:00:28 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						1cc08381f1 
					 
					
						
						
							
							Add support for new types of values  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5256  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-01-13 01:00:12 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						61253a9c93 
					 
					
						
						
							
							Bad segvs actually cause a segv now  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5255  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2003-01-13 01:00:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						836f675c49 
					 
					
						
						
							
							Initial checkin  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5127  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-12-24 00:01:22 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						bd199fb114 
					 
					
						
						
							
							Initial checkin of new LLI with JIT compiler  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5126  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2002-12-24 00:01:05 +00:00