c473d8e431 
								
							 
						 
						
							
							
								
								Privatize StructLayout::MemberOffsets, adding an accessor  
							
							... 
							
							
							
							llvm-svn: 34156 
							
						 
						
							2007-02-10 19:55:17 +00:00  
				
					
						
							
							
								 
						
							
								0690d442ab 
								
							 
						 
						
							
							
								
								For PR1188:  
							
							... 
							
							
							
							Compute BitMask correctly.
Patch by Leo (wenwenti@hotmail.com ).
llvm-svn: 34026 
							
						 
						
							2007-02-08 00:29:31 +00:00  
				
					
						
							
							
								 
						
							
								2341c22ec7 
								
							 
						 
						
							
							
								
								Changes to support making the shift instructions be true BinaryOperators.  
							
							... 
							
							
							
							This feature is needed in order to support shifts of more than 255 bits
on large integer types.  This changes the syntax for llvm assembly to
make shl, ashr and lshr instructions look like a binary operator:
   shl i32 %X, 1
instead of
   shl i32 %X, i8 1
Additionally, this should help a few passes perform additional optimizations.
llvm-svn: 33776 
							
						 
						
							2007-02-02 02:16:23 +00:00  
				
					
						
							
							
								 
						
							
								5301e7c605 
								
							 
						 
						
							
							
								
								For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid  
							
							... 
							
							
							
							confusion with external linkage types.
llvm-svn: 33663 
							
						 
						
							2007-01-30 20:08:39 +00:00  
				
					
						
							
							
								 
						
							
								42b2c08e3a 
								
							 
						 
						
							
							
								
								Remove tabs.  
							
							... 
							
							
							
							llvm-svn: 33620 
							
						 
						
							2007-01-29 17:55:50 +00:00  
				
					
						
							
							
								 
						
							
								1e960cd4fd 
								
							 
						 
						
							
							
								
								Implement use of new IntrinsicLowering interface.  
							
							... 
							
							
							
							llvm-svn: 33619 
							
						 
						
							2007-01-29 17:51:02 +00:00  
				
					
						
							
							
								 
						
							
								3ac38e99b9 
								
							 
						 
						
							
							
								
								For PR761:  
							
							... 
							
							
							
							The Module::setEndianness and Module::setPointerSize methods have been
removed. Instead you can get/set the DataLayout. Adjust thise accordingly.
llvm-svn: 33530 
							
						 
						
							2007-01-26 08:11:39 +00:00  
				
					
						
							
							
								 
						
							
								2eadb5310d 
								
							 
						 
						
							
							
								
								For PR970:  
							
							... 
							
							
							
							Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!
llvm-svn: 33415 
							
						 
						
							2007-01-21 00:29:26 +00:00  
				
					
						
							
							
								 
						
							
								fff2797349 
								
							 
						 
						
							
							
								
								Implement the signed icmp instructions properly. To do this we introduce  
							
							... 
							
							
							
							a small inline function to sign extend a uint64_t value based on its
type's bitwidth. This function is then used in both executeSExtInst and
the various executeICMP_S** functions.
llvm-svn: 33403 
							
						 
						
							2007-01-20 20:12:29 +00:00  
				
					
						
							
							
								 
						
							
								3615cdf957 
								
							 
						 
						
							
							
								
								Implement bit-accurate sext instruction.  
							
							... 
							
							
							
							This patch fixes test/Integer/2007-01-17-TruncSext.ll
llvm-svn: 33394 
							
						 
						
							2007-01-20 08:32:52 +00:00  
				
					
						
							
							
								 
						
							
								f854f95a17 
								
							 
						 
						
							
							
								
								Use the new maskToBitWidth function to ensure that the results of  
							
							... 
							
							
							
							computations do not overflow the intended bit width.
llvm-svn: 33326 
							
						 
						
							2007-01-18 02:12:51 +00:00  
				
					
						
							
							
								 
						
							
								10fe0e0d48 
								
							 
						 
						
							
							
								
								Add an inline helper function that masks a GenericValue to a specified  
							
							... 
							
							
							
							bit width.
llvm-svn: 33325 
							
						 
						
							2007-01-18 02:12:10 +00:00  
				
					
						
							
							
								 
						
							
								300e7fcb55 
								
							 
						 
						
							
							
								
								Make shl instruction mask its result to the correct bitsize. This is  
							
							... 
							
							
							
							sufficient to get llvm-test/SingleSource/UnitTests/Integer/general-test.ll
working with lli in interpreter mode.
llvm-svn: 33321 
							
						 
						
							2007-01-18 01:32:46 +00:00  
				
					
						
							
							
								 
						
							
								fab44b682e 
								
							 
						 
						
							
							
								
								Two changes:  
							
							... 
							
							
							
							1. Fix logic for executeGEP. Only 32-bit and 64-bit integer types are
   acceptable as indices.
2. Ensure that all integer cast operations truncate their result to the
   integer size of the operand.
llvm-svn: 33318 
							
						 
						
							2007-01-18 01:25:42 +00:00  
				
					
						
							
							
								 
						
							
								03c4953cdd 
								
							 
						 
						
							
							
								
								rename Type::isIntegral to Type::isInteger, eliminating the old Type::isInteger.  
							
							... 
							
							
							
							rename Type::getIntegralTypeMask to Type::getIntegerTypeMask.
This makes naming much more consistent.  For example, there are now no longer any
instances of IntegerType that are not considered isInteger! :)
llvm-svn: 33225 
							
						 
						
							2007-01-15 02:27:26 +00:00  
				
					
						
							
							
								 
						
							
								c69c6c4db2 
								
							 
						 
						
							
							
								
								eliminate calls to Type::isInteger, preferring isIntegral instead.  
							
							... 
							
							
							
							llvm-svn: 33222 
							
						 
						
							2007-01-15 02:03:16 +00:00  
				
					
						
							
							
								 
						
							
								7a9c62baa6 
								
							 
						 
						
							
							
								
								For PR1064:  
							
							... 
							
							
							
							Implement the arbitrary bit-width integer feature. The feature allows
integers of any bitwidth (up to 64) to be defined instead of just 1, 8,
16, 32, and 64 bit integers.
This change does several things:
1. Introduces a new Derived Type, IntegerType, to represent the number of
   bits in an integer. The Type classes SubclassData field is used to
   store the number of bits. This allows 2^23 bits in an integer type.
2. Removes the five integer Type::TypeID values for the 1, 8, 16, 32 and
   64-bit integers. These are replaced with just IntegerType which is not
   a primitive any more.
3. Adjust the rest of LLVM to account for this change.
Note that while this incremental change lays the foundation for arbitrary
bit-width integers, LLVM has not yet been converted to actually deal with
them in any significant way. Most optimization passes, for example, will
still only deal with the byte-width integer types.  Future increments
will rectify this situation.
llvm-svn: 33113 
							
						 
						
							2007-01-12 07:05:14 +00:00  
				
					
						
							
							
								 
						
							
								542964f55b 
								
							 
						 
						
							
							
								
								Rename BoolTy as Int1Ty. Patch by Sheng Zhou.  
							
							... 
							
							
							
							llvm-svn: 33076 
							
						 
						
							2007-01-11 18:21:29 +00:00  
				
					
						
							
							
								 
						
							
								0d54e78a39 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							Convert signed integer types to signless ones.
llvm-svn: 32787 
							
						 
						
							2006-12-31 05:51:36 +00:00  
				
					
						
							
							
								 
						
							
								266e42b312 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.
llvm-svn: 32751 
							
						 
						
							2006-12-23 06:05:41 +00:00  
				
					
						
							
							
								 
						
							
								e712a5a1d2 
								
							 
						 
						
							
							
								
								elimiante Statistic static ctors  
							
							... 
							
							
							
							llvm-svn: 32702 
							
						 
						
							2006-12-19 22:56:53 +00:00  
				
					
						
							
							
								 
						
							
								22e978a736 
								
							 
						 
						
							
							
								
								Removing even more <iostream> includes.  
							
							... 
							
							
							
							llvm-svn: 32320 
							
						 
						
							2006-12-07 20:04:42 +00:00  
				
					
						
							
							
								 
						
							
								f3baad3ee1 
								
							 
						 
						
							
							
								
								Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are  
							
							... 
							
							
							
							now cerr, cout, and NullStream resp.
llvm-svn: 32298 
							
						 
						
							2006-12-07 01:30:32 +00:00  
				
					
						
							
							
								 
						
							
								700b873130 
								
							 
						 
						
							
							
								
								Detemplatize the Statistic class.  The only type it is instantiated with  
							
							... 
							
							
							
							is 'unsigned'.
llvm-svn: 32279 
							
						 
						
							2006-12-06 17:46:33 +00:00  
				
					
						
							
							
								 
						
							
								cc08c83186 
								
							 
						 
						
							
							
								
								Unbreak VC++ build.  
							
							... 
							
							
							
							llvm-svn: 32113 
							
						 
						
							2006-12-02 02:22:01 +00:00  
				
					
						
							
							
								 
						
							
								5834fdb371 
								
							 
						 
						
							
							
								
								Removed #include <iostream> and replaced streams with llvm streams.  
							
							... 
							
							
							
							llvm-svn: 31949 
							
						 
						
							2006-11-27 23:54:50 +00:00  
				
					
						
							
							
								 
						
							
								6c38f0bb07 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.
llvm-svn: 31931 
							
						 
						
							2006-11-27 01:05:10 +00:00  
				
					
						
							
							
								 
						
							
								2775aba51d 
								
							 
						 
						
							
							
								
								Simplify IntrinsicLowering and clarify that it is only for use by the  
							
							... 
							
							
							
							CBE and interpreter.
llvm-svn: 31755 
							
						 
						
							2006-11-15 18:00:10 +00:00  
				
					
						
							
							
								 
						
							
								61feeb90f9 
								
							 
						 
						
							
							
								
								Remove redundant <cmath>.  
							
							... 
							
							
							
							llvm-svn: 31561 
							
						 
						
							2006-11-08 19:16:44 +00:00  
				
					
						
							
							
								 
						
							
								fdff938a7e 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							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 
							
						 
						
							2006-11-08 06:47:33 +00:00  
				
					
						
							
							
								 
						
							
								b20b6857f3 
								
							 
						 
						
							
							
								
								Remove a function prototype that is no longer needed (REM patch missed it)  
							
							... 
							
							
							
							llvm-svn: 31374 
							
						 
						
							2006-11-02 08:12:02 +00:00  
				
					
						
							
							
								 
						
							
								7eb55b395f 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							Replace the REM instruction with UREM, SREM and FREM.
llvm-svn: 31369 
							
						 
						
							2006-11-02 01:53:59 +00:00  
				
					
						
							
							
								 
						
							
								5e2e0cb9aa 
								
							 
						 
						
							
							
								
								Remove unnecessary sign conversions made possible by last patch.  
							
							... 
							
							
							
							llvm-svn: 31339 
							
						 
						
							2006-11-01 03:45:43 +00:00  
				
					
						
							
							
								 
						
							
								f84930746e 
								
							 
						 
						
							
							
								
								Fix a bug in the interpreter where divides of unmatched signed operands  
							
							... 
							
							
							
							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 
							
						 
						
							2006-11-01 03:41:05 +00:00  
				
					
						
							
							
								 
						
							
								7e80b0b31e 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							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 
							
						 
						
							2006-10-26 06:15:43 +00:00  
				
					
						
							
							
								 
						
							
								e0fc4dfc22 
								
							 
						 
						
							
							
								
								For PR950:  
							
							... 
							
							
							
							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 
							
						 
						
							2006-10-20 07:07:24 +00:00  
				
					
						
							
							
								 
						
							
								0621caef44 
								
							 
						 
						
							
							
								
								initial changes to support JIT'ing from multiple module providers, implicitly  
							
							... 
							
							
							
							linking the program on the fly.
llvm-svn: 29721 
							
						 
						
							2006-08-16 01:24:12 +00:00  
				
					
						
							
							
								 
						
							
								6c79005b0d 
								
							 
						 
						
							
							
								
								Simplify TargetData ctor call  
							
							... 
							
							
							
							llvm-svn: 28832 
							
						 
						
							2006-06-16 18:24:38 +00:00  
				
					
						
							
							
								 
						
							
								91f228b291 
								
							 
						 
						
							
							
								
								Simplify interpreter construction.  
							
							... 
							
							
							
							llvm-svn: 28826 
							
						 
						
							2006-06-16 18:08:38 +00:00  
				
					
						
							
							
								 
						
							
								e1ade0a523 
								
							 
						 
						
							
							
								
								Fix -pedantic warnings  
							
							... 
							
							
							
							llvm-svn: 28635 
							
						 
						
							2006-06-01 17:27:11 +00:00  
				
					
						
							
							
								 
						
							
								6e64180f03 
								
							 
						 
						
							
							
								
								For PR786:  
							
							... 
							
							
							
							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 
							
						 
						
							2006-05-24 19:21:13 +00:00  
				
					
						
							
							
								 
						
							
								20a631fde7 
								
							 
						 
						
							
							
								
								Refactor TargetMachine, pushing handling of TargetData into the target-specific subclasses.  This has one caller-visible change: getTargetData() now returns a pointer instead of a reference.  
							
							... 
							
							
							
							This fixes PR 759.
llvm-svn: 28074 
							
						 
						
							2006-05-03 01:29:57 +00:00  
				
					
						
							
							
								 
						
							
								0eafbc3593 
								
							 
						 
						
							
							
								
								Get JIT/Interpreter working on Windows again.  
							
							... 
							
							
							
							llvm-svn: 27037 
							
						 
						
							2006-03-24 02:53:49 +00:00  
				
					
						
							
							
								 
						
							
								0b2de9f2d4 
								
							 
						 
						
							
							
								
								remove the intrinsiclowering hook  
							
							... 
							
							
							
							llvm-svn: 26970 
							
						 
						
							2006-03-23 05:22:51 +00:00  
				
					
						
							
							
								 
						
							
								2d52c1b8b9 
								
							 
						 
						
							
							
								
								Eliminate the dependency of ExecutionEngine on the JIT/Interpreter libraries.  
							
							... 
							
							
							
							Now you can build a tool with just the JIT or just the interpreter.
llvm-svn: 26946 
							
						 
						
							2006-03-22 06:07:50 +00:00  
				
					
						
							
							
								 
						
							
								2439669c6f 
								
							 
						 
						
							
							
								
								The interpreter assumes that the caller of runFunction() must be lli, and  
							
							... 
							
							
							
							therefore the function being called must be a main() returning an int.  The
consequences when these assumptions are false are not good, so don't assume
them.
llvm-svn: 26031 
							
						 
						
							2006-02-07 05:29:44 +00:00  
				
					
						
							
							
								 
						
							
								5f4ef3c5a8 
								
							 
						 
						
							
							
								
								Eliminate all remaining tabs and trailing spaces.  
							
							... 
							
							
							
							llvm-svn: 22523 
							
						 
						
							2005-07-27 06:12:32 +00:00  
				
					
						
							
							
								 
						
							
								9144ec4764 
								
							 
						 
						
							
							
								
								core changes for varargs  
							
							... 
							
							
							
							llvm-svn: 22254 
							
						 
						
							2005-06-18 18:34:52 +00:00  
				
					
						
							
							
								 
						
							
								5191b4b2d0 
								
							 
						 
						
							
							
								
								Convert tabs to spaces  
							
							... 
							
							
							
							llvm-svn: 21440 
							
						 
						
							2005-04-22 04:08:30 +00:00  
				
					
						
							
							
								 
						
							
								91fb9ab60b 
								
							 
						 
						
							
							
								
								* Remove trailing whitespace  
							
							... 
							
							
							
							* Convert tabs to spaces
llvm-svn: 21421 
							
						 
						
							2005-04-21 22:43:08 +00:00  
				
					
						
							
							
								 
						
							
								531f9e92d4 
								
							 
						 
						
							
							
								
								This mega patch converts us from using Function::a{iterator|begin|end} to  
							
							... 
							
							
							
							using Function::arg_{iterator|begin|end}.  Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597 
							
						 
						
							2005-03-15 04:54:21 +00:00  
				
					
						
							
							
								 
						
							
								28edd69eb4 
								
							 
						 
						
							
							
								
								If the interpreter tries to execute an external function, kill it.  Of course  
							
							... 
							
							
							
							since we are dirty, special case __main.  This should fix the infinite loop
horrible stuff that happens on linux-alpha when configuring llvm-gcc.  It
might also help cygwin, who knows??
llvm-svn: 19729 
							
						 
						
							2005-01-21 19:59:37 +00:00  
				
					
						
							
							
								 
						
							
								cebb964fef 
								
							 
						 
						
							
							
								
								Improve compatiblity with HPUX on Itanium, patch by Duraid Madina  
							
							... 
							
							
							
							llvm-svn: 19586 
							
						 
						
							2005-01-16 01:31:31 +00:00  
				
					
						
							
							
								 
						
							
								4588542d39 
								
							 
						 
						
							
							
								
								Silence warnings  
							
							... 
							
							
							
							llvm-svn: 19392 
							
						 
						
							2005-01-08 20:13:44 +00:00  
				
					
						
							
							
								 
						
							
								feeab9f753 
								
							 
						 
						
							
							
								
								Silence VS warnings  
							
							... 
							
							
							
							llvm-svn: 19389 
							
						 
						
							2005-01-08 20:05:34 +00:00  
				
					
						
							
							
								 
						
							
								70e37278cb 
								
							 
						 
						
							
							
								
								Use System/DynamicLibrary instead of Support/DynamicLinker  
							
							... 
							
							
							
							llvm-svn: 18357 
							
						 
						
							2004-11-29 14:11:29 +00:00  
				
					
						
							
							
								 
						
							
								624685d9a1 
								
							 
						 
						
							
							
								
								Implement ExecutionEngine::freeMachineCodeForFunction()  
							
							... 
							
							
							
							llvm-svn: 17601 
							
						 
						
							2004-11-07 23:58:46 +00:00  
				
					
						
							
							
								 
						
							
								c833eddfe6 
								
							 
						 
						
							
							
								
								Fix library name.  
							
							... 
							
							
							
							llvm-svn: 17307 
							
						 
						
							2004-10-28 05:37:24 +00:00  
				
					
						
							
							
								 
						
							
								f9676539bb 
								
							 
						 
						
							
							
								
								Changes to support rand48 tests  
							
							... 
							
							
							
							llvm-svn: 17284 
							
						 
						
							2004-10-27 23:03:44 +00:00  
				
					
						
							
							
								 
						
							
								c1c320c335 
								
							 
						 
						
							
							
								
								We won't use automake  
							
							... 
							
							
							
							llvm-svn: 17155 
							
						 
						
							2004-10-22 03:35:04 +00:00  
				
					
						
							
							
								 
						
							
								6a11a75f31 
								
							 
						 
						
							
							
								
								Initial automake generated Makefile template  
							
							... 
							
							
							
							llvm-svn: 17136 
							
						 
						
							2004-10-18 23:55:41 +00:00  
				
					
						
							
							
								 
						
							
								98e541457b 
								
							 
						 
						
							
							
								
								Add support for unreachable  
							
							... 
							
							
							
							llvm-svn: 17056 
							
						 
						
							2004-10-16 18:21:33 +00:00  
				
					
						
							
							
								 
						
							
								ace94df71f 
								
							 
						 
						
							
							
								
								Update to reflect changes in Makefile rules.  
							
							... 
							
							
							
							llvm-svn: 16950 
							
						 
						
							2004-10-13 11:46:52 +00:00  
				
					
						
							
							
								 
						
							
								b84cbf2725 
								
							 
						 
						
							
							
								
								Initial version of automake Makefile.am file.  
							
							... 
							
							
							
							llvm-svn: 16885 
							
						 
						
							2004-10-10 20:43:57 +00:00  
				
					
						
							
							
								 
						
							
								6614946443 
								
							 
						 
						
							
							
								
								Convert code to compile with vc7.1.  
							
							... 
							
							
							
							Patch contributed by Paolo Invernizzi. Thanks Paolo!
llvm-svn: 16368 
							
						 
						
							2004-09-15 17:06:42 +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  
				
					
						
							
							
								 
						
							
								5c4de70691 
								
							 
						 
						
							
							
								
								Fixes for PR341  
							
							... 
							
							
							
							llvm-svn: 14848 
							
						 
						
							2004-07-15 02:51:32 +00:00  
				
					
						
							
							
								 
						
							
								60a7dd16c4 
								
							 
						 
						
							
							
								
								Fixes for PR341  
							
							... 
							
							
							
							llvm-svn: 14847 
							
						 
						
							2004-07-15 02:51:31 +00:00  
				
					
						
							
							
								 
						
							
								eb04d9bcb4 
								
							 
						 
						
							
							
								
								Add #include <iostream> since Value.h does not #include it any more.  
							
							... 
							
							
							
							llvm-svn: 14622 
							
						 
						
							2004-07-04 12:19:56 +00:00  
				
					
						
							
							
								 
						
							
								bcdadf3765 
								
							 
						 
						
							
							
								
								Move the IntrinsicLowering header into the CodeGen directory, as per PR346  
							
							... 
							
							
							
							llvm-svn: 14266 
							
						 
						
							2004-06-20 07:49:54 +00:00  
				
					
						
							
							
								 
						
							
								6b7275996c 
								
							 
						 
						
							
							
								
								Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID()  
							
							... 
							
							
							
							llvm-svn: 14201 
							
						 
						
							2004-06-17 18:19:28 +00:00  
				
					
						
							
							
								 
						
							
								3b9474ecd7 
								
							 
						 
						
							
							
								
								Add int ferror(FILE *)  
							
							... 
							
							
							
							llvm-svn: 14194 
							
						 
						
							2004-06-16 02:56:40 +00:00  
				
					
						
							
							
								 
						
							
								cb9ccac8a7 
								
							 
						 
						
							
							
								
								These #includes are long dead  
							
							... 
							
							
							
							llvm-svn: 13856 
							
						 
						
							2004-05-27 21:24:38 +00:00  
				
					
						
							
							
								 
						
							
								7b8a3b550a 
								
							 
						 
						
							
							
								
								Get rid of a wart: useless getFILE function is now a cast macro.  
							
							... 
							
							
							
							llvm-svn: 13747 
							
						 
						
							2004-05-25 08:46:15 +00:00  
				
					
						
							
							
								 
						
							
								2d7efbbb93 
								
							 
						 
						
							
							
								
								Generalize the strlen size_t hack, for the benefit of the other external  
							
							... 
							
							
							
							functions with wrappers that either take or return size_ts.
llvm-svn: 13296 
							
						 
						
							2004-05-01 06:42:15 +00:00  
				
					
						
							
							
								 
						
							
								ad373c8576 
								
							 
						 
						
							
							
								
								Go back to the interpreter main loop after performing intrinsic lowering,  
							
							... 
							
							
							
							because 1) the first instruction might not be a call site, and
2) CS and SF.Caller were not getting set to point to the new call site
anyway (resulting in a crash on e.g. call %llvm.memset).
llvm-svn: 13122 
							
						 
						
							2004-04-23 18:05:28 +00:00  
				
					
						
							
							
								 
						
							
								2b2d7a99be 
								
							 
						 
						
							
							
								
								Add support for the select instruction  
							
							... 
							
							
							
							llvm-svn: 13076 
							
						 
						
							2004-04-20 16:43:21 +00:00  
				
					
						
							
							
								 
						
							
								ca76d11a81 
								
							 
						 
						
							
							
								
								Adjust to new interface  
							
							... 
							
							
							
							llvm-svn: 12646 
							
						 
						
							2004-04-04 19:47:06 +00:00  
				
					
						
							
							
								 
						
							
								092d260fc1 
								
							 
						 
						
							
							
								
								Adjust to new gep_type_iterator prototypes.  
							
							... 
							
							
							
							llvm-svn: 12644 
							
						 
						
							2004-04-04 17:30:06 +00:00  
				
					
						
							
							
								 
						
							
								071a5e5649 
								
							 
						 
						
							
							
								
								Rename the intrinsic enum values for llvm.va_* from Intrinsic::va_* to  
							
							... 
							
							
							
							Intrinsic::va*.  This avoid conflicting with macros in the stdlib.h file.
llvm-svn: 12356 
							
						 
						
							2004-03-13 00:24:00 +00:00  
				
					
						
							
							
								 
						
							
								234a2d4f19 
								
							 
						 
						
							
							
								
								remove obsolete comment  
							
							... 
							
							
							
							llvm-svn: 11872 
							
						 
						
							2004-02-26 07:59:22 +00:00  
				
					
						
							
							
								 
						
							
								7b4be13f94 
								
							 
						 
						
							
							
								
								Represent va_list in interpreter as a (ec-stack-depth . var-arg-index)  
							
							... 
							
							
							
							pair, and look up varargs in the execution stack every time, instead of
just pushing iterators (which can be invalidated during callFunction())
around.  (union GenericValue now has a "pair of uints" member, to support
this mechanism.) Fixes Bug 234.
llvm-svn: 11845 
							
						 
						
							2004-02-25 23:01:48 +00:00  
				
					
						
							
							
								 
						
							
								242ebf2523 
								
							 
						 
						
							
							
								
								Fix off-by-one in Interpreter::getFirstVarArg(), which was punishing  
							
							... 
							
							
							
							any attempts by LLI to use varargs (possibly left over from the introduction
of IntrinsicLowering??)
llvm-svn: 11370 
							
						 
						
							2004-02-13 06:18:39 +00:00  
				
					
						
							
							
								 
						
							
								51f100753c 
								
							 
						 
						
							
							
								
								The Interpreter was failing the AtExit UnitTest. This fixes it.  
							
							... 
							
							
							
							llvm-svn: 11367 
							
						 
						
							2004-02-13 05:48:00 +00:00  
				
					
						
							
							
								 
						
							
								fa829be4d3 
								
							 
						 
						
							
							
								
								Start using the new and improve interface to FunctionType arguments  
							
							... 
							
							
							
							llvm-svn: 11224 
							
						 
						
							2004-02-09 04:14:01 +00:00  
				
					
						
							
							
								 
						
							
								fae8ab3088 
								
							 
						 
						
							
							
								
								rename the "exceptional" destination of an invoke instruction to the 'unwind' dest  
							
							... 
							
							
							
							llvm-svn: 11202 
							
						 
						
							2004-02-08 21:44:31 +00:00  
				
					
						
							
							
								 
						
							
								1c0133ffd9 
								
							 
						 
						
							
							
								
								Don't pass anything to the IntrinsicLowering class that is not_intrinsic,  
							
							... 
							
							
							
							because that makes it abort. Also, fix a typo in a comment.
This checkin brought to you by the "It only takes about 30 seconds to run
ENABLE_LLI tests on Shootout on zion, even if they all dump core" fund.
llvm-svn: 10844 
							
						 
						
							2004-01-14 06:02:53 +00:00  
				
					
						
							
							
								 
						
							
								5d236005b0 
								
							 
						 
						
							
							
								
								Clean up a lot of the code I added yesterday by exposing the IntrinsicLowering  
							
							... 
							
							
							
							implementation from the TargetMachine directly.
llvm-svn: 10636 
							
						 
						
							2003-12-28 21:23:38 +00:00  
				
					
						
							
							
								 
						
							
								c8c6c03dda 
								
							 
						 
						
							
							
								
								Pass around IntrinsicLowering instances as appropriate.  
							
							... 
							
							
							
							Reimplement the Interpreters implementation of va_* to be more direct.
llvm-svn: 10627 
							
						 
						
							2003-12-28 09:44:37 +00:00  
				
					
						
							
							
								 
						
							
								d94296c620 
								
							 
						 
						
							
							
								
								No longer run atExit functions from run()  
							
							... 
							
							
							
							rename run to runFunction
llvm-svn: 10609 
							
						 
						
							2003-12-26 06:13:05 +00:00  
				
					
						
							
							
								 
						
							
								1809966189 
								
							 
						 
						
							
							
								
								Finegrainify namespacification  
							
							... 
							
							
							
							llvm-svn: 10465 
							
						 
						
							2003-12-14 23:25:48 +00:00  
				
					
						
							
							
								 
						
							
								13a2e54e0c 
								
							 
						 
						
							
							
								
								Dynamically get the right-sized member of a GenericValue to hold a size_t, and  
							
							... 
							
							
							
							use it to return the result of strlen.
llvm-svn: 10433 
							
						 
						
							2003-12-12 15:38:06 +00:00  
				
					
						
							
							
								 
						
							
								8657acc07e 
								
							 
						 
						
							
							
								
								Since we are using a gep_type_iterator, we apparently must get the type  
							
							... 
							
							
							
							index by using I.getOperand() here. This was failing an assertion on
basically every struct access.
llvm-svn: 10426 
							
						 
						
							2003-12-12 05:13:05 +00:00  
				
					
						
							
							
								 
						
							
								2bba152fb8 
								
							 
						 
						
							
							
								
								Fix typo in comment.  Add prototype for getConstantExprValue().  
							
							... 
							
							
							
							llvm-svn: 10390 
							
						 
						
							2003-12-11 00:23:28 +00:00  
				
					
						
							
							
								 
						
							
								5a8ec7d5f6 
								
							 
						 
						
							
							
								
								Add support for --debug-only=interpreter, to print out instrs before  
							
							... 
							
							
							
							interpreting them.
Move support for getting the value of a ConstantExpr into
getConstantExprValue(), and add support for the rest of the different
kinds of ConstantExprs.  (I don't think I like ConstantExprs!)
This requires separate procedures executeShlInst() and executeShrInst().
Reduce the number of references to TheEE.
Get rid of an old comment mentioning annotations.
Fix exitCalled(), which was crashing the Interpreter. This was a
leftover from the return-value code refactoring.
llvm-svn: 10389 
							
						 
						
							2003-12-11 00:22:59 +00:00  
				
					
						
							
							
								 
						
							
								86ad4c05d0 
								
							 
						 
						
							
							
								
								implement method  
							
							... 
							
							
							
							llvm-svn: 10321 
							
						 
						
							2003-12-08 08:23:04 +00:00  
				
					
						
							
							
								 
						
							
								f078808a2b 
								
							 
						 
						
							
							
								
								Do not depend on structure elements being of type UByteTy  
							
							... 
							
							
							
							llvm-svn: 10224 
							
						 
						
							2003-11-25 20:44:56 +00:00  
				
					
						
							
							
								 
						
							
								d81ca471dd 
								
							 
						 
						
							
							
								
								Change LLI's internal representation of va_list to a pointer to the next  
							
							... 
							
							
							
							argument to be returned by va_arg. This allows va_lists to be passed
between different LLVM procedures (though it is unlikely that an LLI
va_list would make sense to an external function, except by chance.)
llvm-svn: 9965 
							
						 
						
							2003-11-13 06:06:01 +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  
				
					
						
							
							
								 
						
							
								9ef636c698 
								
							 
						 
						
							
							
								
								Implement vaarg instruction. This is not quite perfect: 2003-08-11-VaListArg  
							
							... 
							
							
							
							still causes a crash. But it's better than before.
llvm-svn: 9794 
							
						 
						
							2003-11-07 21:20:47 +00:00  
				
					
						
							
							
								 
						
							
								85baf8c65a 
								
							 
						 
						
							
							
								
								popStackAndReturnValueToCaller() must advance instruction pointer to normal  
							
							... 
							
							
							
							destination, if returning from an invoke.
Implement 'unwind' instruction.
llvm-svn: 9792 
							
						 
						
							2003-11-07 20:44:58 +00:00  
				
					
						
							
							
								 
						
							
								6d145eb65f 
								
							 
						 
						
							
							
								
								Add stub version of unwind support  
							
							... 
							
							
							
							llvm-svn: 9789 
							
						 
						
							2003-11-07 20:07:06 +00:00  
				
					
						
							
							
								 
						
							
								a6454d3532 
								
							 
						 
						
							
							
								
								visitCallInst --> visitCallSite.  
							
							... 
							
							
							
							Use visitCallSite to implement both CallInsts and InvokeInsts.
llvm-svn: 9788 
							
						 
						
							2003-11-07 20:04:22 +00:00  
				
					
						
							
							
								 
						
							
								a6d48e4db2 
								
							 
						 
						
							
							
								
								Make the operation of visitCallInst() only depend on the CallSite.  
							
							... 
							
							
							
							llvm-svn: 9787 
							
						 
						
							2003-11-07 19:59:08 +00:00  
				
					
						
							
							
								 
						
							
								18b59578c9 
								
							 
						 
						
							
							
								
								Use CallSites for call sites, instead of CallInsts. A revolutionary concept.  
							
							... 
							
							
							
							llvm-svn: 9784 
							
						 
						
							2003-11-07 19:26:23 +00:00  
				
					
						
							
							
								 
						
							
								65cac90a92 
								
							 
						 
						
							
							
								
								Refactor the return-from-function code into popStackAndReturnValueToCaller().  
							
							... 
							
							
							
							Make external function calls slightly less special; now they get a stack frame.
llvm-svn: 9765 
							
						 
						
							2003-11-07 05:22:49 +00:00  
				
					
						
							
							
								 
						
							
								b5b9ba6ff6 
								
							 
						 
						
							
							
								
								Be friendly to gcc 3.4... good compiler.  Nice compiler.  
							
							... 
							
							
							
							llvm-svn: 9726 
							
						 
						
							2003-11-05 06:20:27 +00:00  
				
					
						
							
							
								 
						
							
								4e106f0649 
								
							 
						 
						
							
							
								
								Abort when the user program calls abort, instead of printing a funny message and calling exit(1).  
							
							... 
							
							
							
							llvm-svn: 9716 
							
						 
						
							2003-11-05 01:18:49 +00:00  
				
					
						
							
							
								 
						
							
								221827ab07 
								
							 
						 
						
							
							
								
								Use regular old malloc to emulate malloc/alloca instructions.  
							
							... 
							
							
							
							llvm-svn: 9713 
							
						 
						
							2003-11-05 01:02:14 +00:00  
				
					
						
							
							
								 
						
							
								175018317e 
								
							 
						 
						
							
							
								
								Remove a comment which no longer applies.  
							
							... 
							
							
							
							llvm-svn: 9712 
							
						 
						
							2003-11-05 00:59:28 +00:00  
				
					
						
							
							
								 
						
							
								37edb43831 
								
							 
						 
						
							
							
								
								Unbreak the build  
							
							... 
							
							
							
							llvm-svn: 9502 
							
						 
						
							2003-10-25 16:18:03 +00:00  
				
					
						
							
							
								 
						
							
								b77e589bd1 
								
							 
						 
						
							
							
								
								ExecutionEngine::create no longer takes a TraceMode argument.  
							
							... 
							
							
							
							CurFrame, TraceMode, and the CachedWriter are history.
The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.
ExecutionContext now keeps Values for each stack frame in a std::map.
printValue() and print() are history.
executeInstruction() is now part of run().
llvm-svn: 9493 
							
						 
						
							2003-10-24 19:59:37 +00:00  
				
					
						
							
							
								 
						
							
								65c60e24cd 
								
							 
						 
						
							
							
								
								ExecutionEngine::create no longer takes a TraceMode argument.  
							
							... 
							
							
							
							CurFrame, TraceMode, and the CachedWriter are history.
llvm-svn: 9492 
							
						 
						
							2003-10-24 19:59:28 +00:00  
				
					
						
							
							
								 
						
							
								759ba76905 
								
							 
						 
						
							
							
								
								The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.  
							
							... 
							
							
							
							llvm-svn: 9490 
							
						 
						
							2003-10-24 19:59:18 +00:00  
				
					
						
							
							
								 
						
							
								e278c22380 
								
							 
						 
						
							
							
								
								Reduce the number of #includes.  
							
							... 
							
							
							
							CurFrame, TraceMode, and the CachedWriter are history.
ArrayChecksEnabled and non-QuietMode are history.
The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.
ExecutionContext now keeps Values for each stack frame in a std::map.
Stop pre-initializing Values on the stack to 42.
Remove some dead variables, excess whitespace and commented-out code.
executeInstruction() is now part of run().
printValue() and print() are history.
llvm-svn: 9489 
							
						 
						
							2003-10-24 19:59:01 +00:00  
				
					
						
							
							
								 
						
							
								29265fe981 
								
							 
						 
						
							
							
								
								Added LLVM copyright header.  
							
							... 
							
							
							
							llvm-svn: 9321 
							
						 
						
							2003-10-21 15:17:13 +00:00  
				
					
						
							
							
								 
						
							
								4436c49787 
								
							 
						 
						
							
							
								
								Added LLVM copyright notice to Makefiles.  
							
							... 
							
							
							
							llvm-svn: 9312 
							
						 
						
							2003-10-20 22:26:57 +00:00  
				
					
						
							
							
								 
						
							
								482202a601 
								
							 
						 
						
							
							
								
								Added LLVM project notice to the top of every C++ source file.  
							
							... 
							
							
							
							Header files will be on the way.
llvm-svn: 9298 
							
						 
						
							2003-10-20 19:43:21 +00:00  
				
					
						
							
							
								 
						
							
								fefd3bebc4 
								
							 
						 
						
							
							
								
								Interpret the new varargs intrinsics correctly  
							
							... 
							
							
							
							llvm-svn: 9222 
							
						 
						
							2003-10-18 05:55:25 +00:00  
				
					
						
							
							
								 
						
							
								1d2d8ec853 
								
							 
						 
						
							
							
								
								Order #includes as per the style guide.  
							
							... 
							
							
							
							llvm-svn: 9128 
							
						 
						
							2003-10-14 21:42:11 +00:00  
				
					
						
							
							
								 
						
							
								cc31fddf13 
								
							 
						 
						
							
							
								
								Don't include Config/stdio.h or <stdio.h>.  
							
							... 
							
							
							
							llvm-svn: 9031 
							
						 
						
							2003-10-10 18:46:29 +00:00  
				
					
						
							
							
								 
						
							
								aa7d26c8c8 
								
							 
						 
						
							
							
								
								Fix spelling.  
							
							... 
							
							
							
							llvm-svn: 9021 
							
						 
						
							2003-10-10 17:42:19 +00:00  
				
					
						
							
							
								 
						
							
								20c65741d0 
								
							 
						 
						
							
							
								
								Never set any signal handlers.  
							
							... 
							
							
							
							Never call setjmp(), longjmp() or strsignal().
llvm-svn: 9014 
							
						 
						
							2003-10-10 17:03:22 +00:00  
				
					
						
							
							
								 
						
							
								6cc20deac1 
								
							 
						 
						
							
							
								
								Rewrite head-of-file comment.  
							
							... 
							
							
							
							In lookupFunction():
 Change to use "F" for Function argument instead of ancient "M".
 Remove commented-out code.
 Change to use GetAddressOfSymbol instead of dlsym.
llvm-svn: 9013 
							
						 
						
							2003-10-10 17:03:10 +00:00  
				
					
						
							
							
								 
						
							
								93cb392a33 
								
							 
						 
						
							
							
								
								Do not read past the end of the contained type list  
							
							... 
							
							
							
							llvm-svn: 8986 
							
						 
						
							2003-10-09 20:31:18 +00:00  
				
					
						
							
							
								 
						
							
								2caaaba3e9 
								
							 
						 
						
							
							
								
								Squelch warning  
							
							... 
							
							
							
							llvm-svn: 8659 
							
						 
						
							2003-09-22 20:33:34 +00:00  
				
					
						
							
							
								 
						
							
								a28e1f281a 
								
							 
						 
						
							
							
								
								Change FunctionInfo from being an annotation put on Functions to be  
							
							... 
							
							
							
							something which is mapped from functions.
llvm-svn: 8580 
							
						 
						
							2003-09-17 17:26:22 +00:00  
				
					
						
							
							
								 
						
							
								ad48131254 
								
							 
						 
						
							
							
								
								Reorder #includes to follow LLVM conventions  
							
							... 
							
							
							
							llvm-svn: 8375 
							
						 
						
							2003-09-05 20:08:15 +00:00  
				
					
						
							
							
								 
						
							
								f3a300d578 
								
							 
						 
						
							
							
								
								ExecutionEngine.h, GenericValue.h --> include/llvm/ExecutionEngine/  
							
							... 
							
							
							
							Build ExecutionEngine as library.
llvm-svn: 8370 
							
						 
						
							2003-09-05 19:39:22 +00:00  
				
					
						
							
							
								 
						
							
								9b518bc0be 
								
							 
						 
						
							
							
								
								Make getOperandValue and executeCastOperation methods of Interpreter.  
							
							... 
							
							
							
							This lets us protect a few more ExecutionEngine methods.
llvm-svn: 8367 
							
						 
						
							2003-09-05 18:55:03 +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  
				
					
						
							
							
								 
						
							
								33d98aebe7 
								
							 
						 
						
							
							
								
								Remove printOperandInfo(), and simplify run().  
							
							... 
							
							
							
							llvm-svn: 8362 
							
						 
						
							2003-09-05 05:22:08 +00:00  
				
					
						
							
							
								 
						
							
								ed9917b3f8 
								
							 
						 
						
							
							
								
								Remove support for printing values from a module by name, only used  
							
							... 
							
							
							
							w/ interactive keyboard entry of names.
With that, Support.cpp is history.
llvm-svn: 8360 
							
						 
						
							2003-09-05 05:04:32 +00:00  
				
					
						
							
							
								 
						
							
								8421765778 
								
							 
						 
						
							
							
								
								Remove support for interactive (step finish next) instructions.  
							
							... 
							
							
							
							Remove printCurrentInstruction, printStackFrame and infoValue
 (only used interactively) and other unused methods of Interpreter.
Fold UserInput.cpp containing only callMainFunction() into Interpreter.cpp.
Remove unused Profile flag.
llvm-svn: 8359 
							
						 
						
							2003-09-05 04:46:26 +00:00  
				
					
						
							
							
								 
						
							
								411281cc82 
								
							 
						 
						
							
							
								
								Remove support for breakpoints (not used).  
							
							... 
							
							
							
							Remove some dead code and whitespace.
llvm-svn: 8346 
							
						 
						
							2003-09-04 23:15:40 +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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								7eb05a170a 
								
							 
						 
						
							
							
								
								Spell `necessary' correctly.  
							
							... 
							
							
							
							llvm-svn: 7944 
							
						 
						
							2003-08-18 14:43:39 +00:00  
				
					
						
							
							
								 
						
							
								aa58664639 
								
							 
						 
						
							
							
								
								Deconstify parameter to getPointerToFunction().  
							
							... 
							
							
							
							llvm-svn: 7822 
							
						 
						
							2003-08-13 18:17:54 +00:00  
				
					
						
							
							
								 
						
							
								625eef3e41 
								
							 
						 
						
							
							
								
								Remove redundant const qualifier  
							
							... 
							
							
							
							llvm-svn: 7254 
							
						 
						
							2003-07-23 15:30:32 +00:00  
				
					
						
							
							
								 
						
							
								3ef61afb76 
								
							 
						 
						
							
							
								
								Merged in autoconf branch.  This provides configuration via the autoconf  
							
							... 
							
							
							
							system.
llvm-svn: 7014 
							
						 
						
							2003-06-30 21:59:07 +00:00  
				
					
						
							
							
								 
						
							
								fcd72643fa 
								
							 
						 
						
							
							
								
								Include <cmath> instead of <math.h>  
							
							... 
							
							
							
							Remove isnan; it's too unportable to handle cleanly at this point.
llvm-svn: 6866 
							
						 
						
							2003-06-23 19:41:55 +00:00  
				
					
						
							
							
								 
						
							
								44a4adfad2 
								
							 
						 
						
							
							
								
								Use std::isnan instead of isnan.  Brought back to you from the  
							
							... 
							
							
							
							future, by the reconciliation of the C++ and C99 standards. Someday.
llvm-svn: 6751 
							
						 
						
							2003-06-17 19:59:17 +00:00  
				
					
						
							
							
								 
						
							
								4a5bb95729 
								
							 
						 
						
							
							
								
								Add support for atexit function, remove support for __main function  
							
							... 
							
							
							
							llvm-svn: 6194 
							
						 
						
							2003-05-14 14:21:30 +00:00  
				
					
						
							
							
								 
						
							
								b78244f9e1 
								
							 
						 
						
							
							
								
								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!
llvm-svn: 6105 
							
						 
						
							2003-05-12 02:14:34 +00:00  
				
					
						
							
							
								 
						
							
								185045c494 
								
							 
						 
						
							
							
								
								switch main LLI core execution to use an InstVisitor instead of a switch statement  
							
							... 
							
							
							
							llvm-svn: 6081 
							
						 
						
							2003-05-10 21:22:39 +00:00  
				
					
						
							
							
								 
						
							
								bd6771cb25 
								
							 
						 
						
							
							
								
								Fix testcase: SingleSource/UnitTests/2003-05-02-DependantPHI.c  
							
							... 
							
							
							
							llvm-svn: 6074 
							
						 
						
							2003-05-10 20:21:16 +00:00  
				
					
						
							
							
								 
						
							
								525e251c4e 
								
							 
						 
						
							
							
								
								Implement varargs support for LLI!  
							
							... 
							
							
							
							llvm-svn: 6043 
							
						 
						
							2003-05-08 16:52:43 +00:00  
				
					
						
							
							
								 
						
							
								470754e3ca 
								
							 
						 
						
							
							
								
								A large number of simple changes:  
							
							... 
							
							
							
							* s/Method/Function
  * Kill some obsolete (external) functions that used to be to support tracing
llvm-svn: 6041 
							
						 
						
							2003-05-08 16:18:31 +00:00  
				
					
						
							
							
								 
						
							
								22e90434f3 
								
							 
						 
						
							
							
								
								Add support for recording arguments passed through the ... of a varargs function  
							
							... 
							
							
							
							llvm-svn: 6040 
							
						 
						
							2003-05-08 16:06:52 +00:00  
				
					
						
							
							
								 
						
							
								4f6cdbdf81 
								
							 
						 
						
							
							
								
								Remove two fields from TargetData which are target specific.  
							
							... 
							
							
							
							llvm-svn: 5963 
							
						 
						
							2003-04-26 20:11:09 +00:00  
				
					
						
							
							
								 
						
							
								01971e1267 
								
							 
						 
						
							
							
								
								Only do the %ld -> %lld promotion when running a 64 bit bytecode on a 32 bit host  
							
							... 
							
							
							
							llvm-svn: 5942 
							
						 
						
							2003-04-25 18:28:44 +00:00  
				
					
						
							
							
								 
						
							
								4c5245b144 
								
							 
						 
						
							
							
								
								Add __strdup  
							
							... 
							
							
							
							llvm-svn: 5941 
							
						 
						
							2003-04-25 18:23:38 +00:00  
				
					
						
							
							
								 
						
							
								6fac66e2cc 
								
							 
						 
						
							
							
								
								MAke sure that LLI properly configures align_of(double)  
							
							... 
							
							
							
							llvm-svn: 5938 
							
						 
						
							2003-04-25 06:15:05 +00:00  
				
					
						
							
							
								 
						
							
								ba90675054 
								
							 
						 
						
							
							
								
								Fix problem where we would read 64 bits worth of pointer information, even on 32 bit targets!  
							
							... 
							
							
							
							llvm-svn: 5930 
							
						 
						
							2003-04-25 04:21:19 +00:00  
				
					
						
							
							
								 
						
							
								487bb80496 
								
							 
						 
						
							
							
								
								Add memcpy  
							
							... 
							
							
							
							llvm-svn: 5887 
							
						 
						
							2003-04-23 20:23:16 +00:00  
				
					
						
							
							
								 
						
							
								ed27f84ed9 
								
							 
						 
						
							
							
								
								Fix a problem with setcc instructions and pointers  
							
							... 
							
							
							
							llvm-svn: 5886 
							
						 
						
							2003-04-23 19:55:35 +00:00  
				
					
						
							
							
								 
						
							
								93f4ff73a6 
								
							 
						 
						
							
							
								
								Implement a bunch of new external functions  
							
							... 
							
							
							
							llvm-svn: 5885 
							
						 
						
							2003-04-23 19:55:24 +00:00  
				
					
						
							
							
								 
						
							
								7881fc8704 
								
							 
						 
						
							
							
								
								Implement &|^ on bool values  
							
							... 
							
							
							
							llvm-svn: 5884 
							
						 
						
							2003-04-23 19:21:00 +00:00  
				
					
						
							
							
								 
						
							
								26a4a1f5ca 
								
							 
						 
						
							
							
								
								Add support for _IO_getc function used on linux  
							
							... 
							
							
							
							llvm-svn: 5883 
							
						 
						
							2003-04-23 19:20:50 +00:00  
				
					
						
							
							
								 
						
							
								aee56b8d34 
								
							 
						 
						
							
							
								
								Kill using declarations  
							
							... 
							
							
							
							Kill code for invalid operations on pointers
llvm-svn: 5856 
							
						 
						
							2003-04-22 21:22:33 +00:00  
				
					
						
							
							
								 
						
							
								bbd1157f71 
								
							 
						 
						
							
							
								
								Implement cast to bool  
							
							... 
							
							
							
							llvm-svn: 5855 
							
						 
						
							2003-04-22 21:15:56 +00:00  
				
					
						
							
							
								 
						
							
								fa5fc55f83 
								
							 
						 
						
							
							
								
								Get rid of extraneous arguments to implementation functions  
							
							... 
							
							
							
							llvm-svn: 5852 
							
						 
						
							2003-04-22 20:37:39 +00:00  
				
					
						
							
							
								 
						
							
								d215af03a3 
								
							 
						 
						
							
							
								
								Add support to LLI for switch instruction  
							
							... 
							
							
							
							llvm-svn: 5851 
							
						 
						
							2003-04-22 20:34:47 +00:00  
				
					
						
							
							
								 
						
							
								f11d8a35ab 
								
							 
						 
						
							
							
								
								Fix wierd idiom  
							
							... 
							
							
							
							llvm-svn: 5831 
							
						 
						
							2003-04-21 22:43:32 +00:00  
				
					
						
							
							
								 
						
							
								1610666ea5 
								
							 
						 
						
							
							
								
								fprintf CAN take exactly 2 args  
							
							... 
							
							
							
							llvm-svn: 5830 
							
						 
						
							2003-04-21 22:43:20 +00:00  
				
					
						
							
							
								 
						
							
								d31837154d 
								
							 
						 
						
							
							
								
								Implement scanf and fix sscanf to actually endian swap the results correctly  
							
							... 
							
							
							
							llvm-svn: 5763 
							
						 
						
							2003-03-31 22:12:37 +00:00  
				
					
						
							
							
								 
						
							
								13b3e5bdab 
								
							 
						 
						
							
							
								
								Fix typeo  
							
							... 
							
							
							
							llvm-svn: 5624 
							
						 
						
							2003-02-25 21:14:59 +00:00  
				
					
						
							
							
								 
						
							
								d49518c534 
								
							 
						 
						
							
							
								
								* Wrap at 80 columns  
							
							... 
							
							
							
							* Fix a ton of warnings
* Implement puts
llvm-svn: 5254 
							
						 
						
							2003-01-13 00:59:47 +00:00  
				
					
						
							
							
								 
						
							
								4e7aa44644 
								
							 
						 
						
							
							
								
								Handle value promotion properly to work with tracing better  
							
							... 
							
							
							
							llvm-svn: 5253 
							
						 
						
							2003-01-13 00:58:52 +00:00  
				
					
						
							
							
								 
						
							
								996fe01028 
								
							 
						 
						
							
							
								
								Initial checkin of new LLI with JIT compiler  
							
							... 
							
							
							
							llvm-svn: 5126 
							
						 
						
							2002-12-24 00:01:05 +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  
				
					
						
							
							
								 
						
							
								677671d1af 
								
							 
						 
						
							
							
								
								Add support for isnan  
							
							... 
							
							
							
							llvm-svn: 5111 
							
						 
						
							2002-12-20 04:18:13 +00:00  
				
					
						
							
							
								 
						
							
								3552d79ac1 
								
							 
						 
						
							
							
								
								Namespacify more  
							
							... 
							
							
							
							llvm-svn: 4956 
							
						 
						
							2002-12-08 06:01:34 +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  
				
					
						
							
							
								 
						
							
								98cf1f5d64 
								
							 
						 
						
							
							
								
								- Eliminated the deferred symbol table stuff in Module & Function, it really  
							
							... 
							
							
							
							wasn't an optimization and it was causing lots of bugs.
llvm-svn: 4779 
							
						 
						
							2002-11-20 18:36:02 +00:00  
				
					
						
							
							
								 
						
							
								7a1da7c850 
								
							 
						 
						
							
							
								
								Implement feof  
							
							... 
							
							
							
							llvm-svn: 4627 
							
						 
						
							2002-11-08 19:10:26 +00:00  
				
					
						
							
							
								 
						
							
								a41a195374 
								
							 
						 
						
							
							
								
								Implement freopen for burg  
							
							... 
							
							
							
							llvm-svn: 4606 
							
						 
						
							2002-11-07 19:33:50 +00:00  
				
					
						
							
							
								 
						
							
								a2b4c6cc49 
								
							 
						 
						
							
							
								
								Make command line arguments setup be endian correct!!  
							
							... 
							
							
							
							llvm-svn: 4605 
							
						 
						
							2002-11-07 19:29:31 +00:00  
				
					
						
							
							
								 
						
							
								c3a84099a9 
								
							 
						 
						
							
							
								
								Implement fprintf  
							
							... 
							
							
							
							llvm-svn: 4585 
							
						 
						
							2002-11-06 23:05:03 +00:00  
				
					
						
							
							
								 
						
							
								8529020770 
								
							 
						 
						
							
							
								
								Implement fputc and ungetc to allow burg to run in lli  
							
							... 
							
							
							
							llvm-svn: 4584 
							
						 
						
							2002-11-06 22:59:28 +00:00  
				
					
						
							
							
								 
						
							
								61596ad266 
								
							 
						 
						
							
							
								
								Fix two problems:  
							
							... 
							
							
							
							* Load Implementation can cause unaligned memory accesses, which caused
    problems for sparc.
  * cast from pointer to pointer would zero the upper 32 bits of the pointer
    which obviously causes problems on 64 bit hosts.
llvm-svn: 4454 
							
						 
						
							2002-10-30 21:47:57 +00:00  
				
					
						
							
							
								 
						
							
								7fe1f7c931 
								
							 
						 
						
							
							
								
								Fix a major bug in lli  
							
							... 
							
							
							
							llvm-svn: 4289 
							
						 
						
							2002-10-26 01:57:15 +00:00  
				
					
						
							
							
								 
						
							
								6a1a65f9de 
								
							 
						 
						
							
							
								
								- Fix LLI so that it simulates the endianness of the target machine  
							
							... 
							
							
							
							correctly, despite the fact that the host machine might not be the same.
llvm-svn: 4180 
							
						 
						
							2002-10-15 20:34:05 +00:00  
				
					
						
							
							
								 
						
							
								0313db6b02 
								
							 
						 
						
							
							
								
								* Implement the getc() function  
							
							... 
							
							
							
							* Support usage of stdin, stdout & stderr correctly in LLI!
llvm-svn: 4022 
							
						 
						
							2002-10-02 21:12:13 +00:00  
				
					
						
							
							
								 
						
							
								8b952fa7ae 
								
							 
						 
						
							
							
								
								Cleanup #includes, expose module  
							
							... 
							
							
							
							llvm-svn: 4021 
							
						 
						
							2002-10-02 21:11:16 +00:00  
				
					
						
							
							
								 
						
							
								dabbf17b47 
								
							 
						 
						
							
							
								
								Expose TD to ExternalFunctions.cpp  
							
							... 
							
							
							
							llvm-svn: 4020 
							
						 
						
							2002-10-02 21:10:48 +00:00  
				
					
						
							
							
								 
						
							
								bd0d2eab64 
								
							 
						 
						
							
							
								
								* Fix a bug that was causing lli to misrun:  
							
							... 
							
							
							
							test/Regression/Transforms/DecomposeMultiDimRefs/mixedindices.c
* Eliminate unneccesary #include
llvm-svn: 3712 
							
						 
						
							2002-09-13 23:30:42 +00:00  
				
					
						
							
							
								 
						
							
								f78e050e93 
								
							 
						 
						
							
							
								
								Another portability patch graciously provided by Casey Carter  
							
							... 
							
							
							
							llvm-svn: 3698 
							
						 
						
							2002-09-13 14:41:38 +00:00  
				
					
						
							
							
								 
						
							
								e314bf5264 
								
							 
						 
						
							
							
								
								- Change getelementptr instruction to use long indexes instead of uint  
							
							... 
							
							
							
							indexes for sequential types.
llvm-svn: 3683 
							
						 
						
							2002-09-11 01:21:35 +00:00  
				
					
						
							
							
								 
						
							
								b0b412e66e 
								
							 
						 
						
							
							
								
								- Renamed Type::isIntegral() to Type::isInteger()  
							
							... 
							
							
							
							- Added new method Type::isIntegral() that is the same as isInteger, but
    also accepts bool.
llvm-svn: 3574 
							
						 
						
							2002-09-03 01:08:28 +00:00  
				
					
						
							
							
								 
						
							
								c837dbc39f 
								
							 
						 
						
							
							
								
								Implement ConstantPointerRef support, & ConstantExpr support for Cast, GEP & Add.  
							
							... 
							
							
							
							llvm-svn: 3516 
							
						 
						
							2002-08-27 22:33:45 +00:00  
				
					
						
							
							
								 
						
							
								dfb3a2cd07 
								
							 
						 
						
							
							
								
								Eliminated the MemAccessInst class, folding contents into GEP class.  
							
							... 
							
							
							
							llvm-svn: 3487 
							
						 
						
							2002-08-22 23:37:20 +00:00  
				
					
						
							
							
								 
						
							
								cd709cbf53 
								
							 
						 
						
							
							
								
								Load & StoreInst no longer derive from MemAccessInst, so we don't have  
							
							... 
							
							
							
							to handle indexing anymore
llvm-svn: 3485 
							
						 
						
							2002-08-22 22:49:05 +00:00  
				
					
						
							
							
								 
						
							
								b3c2af69fe 
								
							 
						 
						
							
							
								
								Remove support for NOT instruction  
							
							... 
							
							
							
							llvm-svn: 3313 
							
						 
						
							2002-08-14 17:45:39 +00:00  
				
					
						
							
							
								 
						
							
								42f596feda 
								
							 
						 
						
							
							
								
								Minor change to make lli print out characters numerically as well as symbolically  
							
							... 
							
							
							
							llvm-svn: 3303 
							
						 
						
							2002-08-13 20:45:11 +00:00  
				
					
						
							
							
								 
						
							
								33b3b9660b 
								
							 
						 
						
							
							
								
								Fix problem where lli would not print out a 64 bit value when the client code  
							
							... 
							
							
							
							uses the modifier "%ld".  Now lli passes off "%lld" to the underlying runtime
library in this case.
llvm-svn: 3230 
							
						 
						
							2002-08-02 23:08:32 +00:00  
				
					
						
							
							
								 
						
							
								600ba8fa6d 
								
							 
						 
						
							
							
								
								Fix one real nasty bug  
							
							... 
							
							
							
							llvm-svn: 3227 
							
						 
						
							2002-08-02 22:06:04 +00:00  
				
					
						
							
							
								 
						
							
								6dd03356a6 
								
							 
						 
						
							
							
								
								Fix gcc 3.1 complaint  
							
							... 
							
							
							
							llvm-svn: 3091 
							
						 
						
							2002-07-25 17:37:05 +00:00  
				
					
						
							
							
								 
						
							
								f5cad15a67 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							... 
							
							
							
							llvm-svn: 2985 
							
						 
						
							2002-07-22 02:10:13 +00:00  
				
					
						
							
							
								 
						
							
								f6d3cb95cf 
								
							 
						 
						
							
							
								
								Implementing shift left & shift right on pointers  
							
							... 
							
							
							
							llvm-svn: 2844 
							
						 
						
							2002-07-09 18:42:36 +00:00  
				
					
						
							
							
								 
						
							
								7076ff29ed 
								
							 
						 
						
							
							
								
								MEGAPATCH checkin.  
							
							... 
							
							
							
							For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2778 
							
						 
						
							2002-06-25 16:13:21 +00:00  
				
					
						
							
							
								 
						
							
								1319429f4d 
								
							 
						 
						
							
							
								
								Remove explicit support for tracing code.  It should be linked into the  
							
							... 
							
							
							
							executable just like everything else.
llvm-svn: 2674 
							
						 
						
							2002-05-20 21:17:16 +00:00  
				
					
						
							
							
								 
						
							
								a77150b977 
								
							 
						 
						
							
							
								
								Added external functions for hashing pointers to sequence numbers.  
							
							... 
							
							
							
							llvm-svn: 2659 
							
						 
						
							2002-05-19 15:59:25 +00:00  
				
					
						
							
							
								 
						
							
								7608a46cbe 
								
							 
						 
						
							
							
								
								Updates to move some header files out of include/llvm/Transforms into  
							
							... 
							
							
							
							the Scalar and Utils subdirectories
llvm-svn: 2523 
							
						 
						
							2002-05-07 18:36:35 +00:00  
				
					
						
							
							
								 
						
							
								3ad34b9c3c 
								
							 
						 
						
							
							
								
								Change usage of isPointerType to use isa  
							
							... 
							
							
							
							llvm-svn: 2487 
							
						 
						
							2002-05-06 16:15:49 +00:00  
				
					
						
							
							
								 
						
							
								79baf91f17 
								
							 
						 
						
							
							
								
								Implement the NOT operator.  
							
							... 
							
							
							
							llvm-svn: 2455 
							
						 
						
							2002-05-03 19:52:30 +00:00  
				
					
						
							
							
								 
						
							
								45243fa9b7 
								
							 
						 
						
							
							
								
								Implement cast operations on booleans to allow casting bools to ints, f.e.  
							
							... 
							
							
							
							llvm-svn: 2437 
							
						 
						
							2002-05-02 19:28:45 +00:00  
				
					
						
							
							
								 
						
							
								9c0b187463 
								
							 
						 
						
							
							
								
								Fix #include broken by iMemory.h not including DerivedTypes.h  
							
							... 
							
							
							
							llvm-svn: 2407 
							
						 
						
							2002-04-29 18:56:45 +00:00  
				
					
						
							
							
								 
						
							
								0ebb7930c9 
								
							 
						 
						
							
							
								
								FIXME removed: malloc/alloca ALWAYS have a size argument  
							
							... 
							
							
							
							llvm-svn: 2389 
							
						 
						
							2002-04-28 21:57:33 +00:00  
				
					
						
							
							
								 
						
							
								ca14237696 
								
							 
						 
						
							
							
								
								Split ConstantVals.h into Constant.h and Constants.h  
							
							... 
							
							
							
							llvm-svn: 2378 
							
						 
						
							2002-04-28 19:55:58 +00:00  
				
					
						
							
							
								 
						
							
								ccd1df0144 
								
							 
						 
						
							
							
								
								Eliminate use of SymTabValue class  
							
							... 
							
							
							
							llvm-svn: 2357 
							
						 
						
							2002-04-28 04:55:14 +00:00  
				
					
						
							
							
								 
						
							
								d6010abae8 
								
							 
						 
						
							
							
								
								Fix a bug printing out %c formated characters.  
							
							... 
							
							
							
							llvm-svn: 2277 
							
						 
						
							2002-04-17 17:43:01 +00:00  
				
					
						
							
							
								 
						
							
								87b84e474f 
								
							 
						 
						
							
							
								
								Move FunctionArgument out of iOther.h into Argument.h and rename class to  
							
							... 
							
							
							
							be 'Argument' instead of FunctionArgument.
llvm-svn: 2217 
							
						 
						
							2002-04-09 19:59:31 +00:00  
				
					
						
							
							
								 
						
							
								7104f1564b 
								
							 
						 
						
							
							
								
								Update comment to reflect class name change.  
							
							... 
							
							
							
							llvm-svn: 2213 
							
						 
						
							2002-04-09 19:40:40 +00:00  
				
					
						
							
							
								 
						
							
								4a317367e9 
								
							 
						 
						
							
							
								
								Remove extranous #include  
							
							... 
							
							
							
							llvm-svn: 2183 
							
						 
						
							2002-04-08 22:05:10 +00:00  
				
					
						
							
							
								 
						
							
								62b7fd136e 
								
							 
						 
						
							
							
								
								Change references to the Method class to be references to the Function  
							
							... 
							
							
							
							class.  The Method class is obsolete (renamed) and all references to it
are being converted over to Function.
llvm-svn: 2144 
							
						 
						
							2002-04-07 20:49:59 +00:00  
				
					
						
							
							
								 
						
							
								f94811af13 
								
							 
						 
						
							
							
								
								s/Method/Function  
							
							... 
							
							
							
							llvm-svn: 2036 
							
						 
						
							2002-03-29 03:57:15 +00:00  
				
					
						
							
							
								 
						
							
								af83890436 
								
							 
						 
						
							
							
								
								Change from Method to Function  
							
							... 
							
							
							
							llvm-svn: 1992 
							
						 
						
							2002-03-26 18:02:30 +00:00  
				
					
						
							
							
								 
						
							
								4cf0079e29 
								
							 
						 
						
							
							
								
								Do not link in runtime library anymore, assume that user manually links in  
							
							... 
							
							
							
							libraries.  Code should be generalized to allow lli to take -lc -lm arguments
in the future (todo)
llvm-svn: 1852 
							
						 
						
							2002-03-11 17:52:43 +00:00  
				
					
						
							
							
								 
						
							
								5dec460017 
								
							 
						 
						
							
							
								
								Implement a bunch of new functions to support the SPECINT mcf  
							
							... 
							
							
							
							benchmark
llvm-svn: 1841 
							
						 
						
							2002-03-08 22:51:07 +00:00  
				
					
						
							
							
								 
						
							
								fb55ba00e1 
								
							 
						 
						
							
							
								
								Keep track of memory allocated by alloca so that it is freed appropriately  
							
							... 
							
							
							
							llvm-svn: 1776 
							
						 
						
							2002-02-19 18:50:09 +00:00  
				
					
						
							
							
								 
						
							
								568a770742 
								
							 
						 
						
							
							
								
								Implement exp function  
							
							... 
							
							
							
							llvm-svn: 1774 
							
						 
						
							2002-02-18 19:06:25 +00:00  
				
					
						
							
							
								 
						
							
								60a6591d83 
								
							 
						 
						
							
							
								
								Method.h no longer includes BasicBlock.h  
							
							... 
							
							
							
							Method::inst_* is now in llvm/Support/InstIterator.h
GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h
llvm-svn: 1746 
							
						 
						
							2002-02-12 21:07:25 +00:00  
				
					
						
							
							
								 
						
							
								2787a4edea 
								
							 
						 
						
							
							
								
								Add new abort-on-exceptions flag  
							
							... 
							
							
							
							llvm-svn: 1737 
							
						 
						
							2002-02-12 15:47:23 +00:00  
				
					
						
							
							
								 
						
							
								7a79cfa2af 
								
							 
						 
						
							
							
								
								Make array bound checks optional and disabled by default.  
							
							... 
							
							
							
							llvm-svn: 1725 
							
						 
						
							2002-02-11 20:19:16 +00:00  
				
					
						
							
							
								 
						
							
								8f52ffd3ce 
								
							 
						 
						
							
							
								
								Implement the clock() function  
							
							... 
							
							
							
							llvm-svn: 1573 
							
						 
						
							2002-01-23 21:38:07 +00:00  
				
					
						
							
							
								 
						
							
								7f74a56e24 
								
							 
						 
						
							
							
								
								Changes to build successfully with GCC 3.02  
							
							... 
							
							
							
							llvm-svn: 1503 
							
						 
						
							2002-01-20 22:54:45 +00:00  
				
					
						
							
							
								 
						
							
								24404f8223 
								
							 
						 
						
							
							
								
								* Support the new -q flag for automated tests  
							
							... 
							
							
							
							* Remove unsized array support
* Add pointer indexing support
llvm-svn: 1477 
							
						 
						
							2001-12-14 16:49:29 +00:00  
				
					
						
							
							
								 
						
							
								60a9a23aba 
								
							 
						 
						
							
							
								
								Implement sprintf  
							
							... 
							
							
							
							llvm-svn: 1445 
							
						 
						
							2001-12-13 00:43:47 +00:00  
				
					
						
							
							
								 
						
							
								2413b160ec 
								
							 
						 
						
							
							
								
								Renamed inst_const_iterator -> const_inst_iterator  
							
							... 
							
							
							
							Renamed op_const_iterator   -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
llvm-svn: 1408 
							
						 
						
							2001-12-04 00:03:30 +00:00  
				
					
						
							
							
								 
						
							
								3462ae3ad7 
								
							 
						 
						
							
							
								
								Rename ConstPoolVal -> Constant  
							
							... 
							
							
							
							Rename ConstPool*   -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
llvm-svn: 1407 
							
						 
						
							2001-12-03 22:26:30 +00:00  
				
					
						
							
							
								 
						
							
								fb5ae02e1a 
								
							 
						 
						
							
							
								
								Split the PHINode class out from the iOther.h file into the iPHINode.h file  
							
							... 
							
							
							
							llvm-svn: 1405 
							
						 
						
							2001-12-03 18:02:31 +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  
				
					
						
							
							
								 
						
							
								f679703feb 
								
							 
						 
						
							
							
								
								Move DataTypes.h from llvm/Support to just Support  
							
							... 
							
							
							
							llvm-svn: 1399 
							
						 
						
							2001-11-26 23:04:08 +00:00  
				
					
						
							
							
								 
						
							
								56f1f594fd 
								
							 
						 
						
							
							
								
								Use pointertype where appropriate  
							
							... 
							
							
							
							llvm-svn: 1392 
							
						 
						
							2001-11-26 19:20:16 +00:00  
				
					
						
							
							
								 
						
							
								e977e5d973 
								
							 
						 
						
							
							
								
								Remove invalid,unneccesary ## token  
							
							... 
							
							
							
							llvm-svn: 1391 
							
						 
						
							2001-11-26 19:19:27 +00:00  
				
					
						
							
							
								 
						
							
								5ba757369c 
								
							 
						 
						
							
							
								
								* Implement array indexing in lli  
							
							... 
							
							
							
							* Add external atoi method as well as floor, and srand
llvm-svn: 1355 
							
						 
						
							2001-11-26 18:18:18 +00:00  
				
					
						
							
							
								 
						
							
								af84e627fd 
								
							 
						 
						
							
							
								
								Rename cruft  
							
							... 
							
							
							
							llvm-svn: 1299 
							
						 
						
							2001-11-14 11:28:18 +00:00  
				
					
						
							
							
								 
						
							
								9754aba7f0 
								
							 
						 
						
							
							
								
								Implement some more rand functions for em3d benchmark  
							
							... 
							
							
							
							llvm-svn: 1291 
							
						 
						
							2001-11-13 05:46:08 +00:00  
				
					
						
							
							
								 
						
							
								747f016184 
								
							 
						 
						
							
							
								
								Print percentages for profiling info better  
							
							... 
							
							
							
							llvm-svn: 1274 
							
						 
						
							2001-11-12 20:13:14 +00:00  
				
					
						
							
							
								 
						
							
								a7482e05d0 
								
							 
						 
						
							
							
								
								Print profile info if exit() is called  
							
							... 
							
							
							
							llvm-svn: 1268 
							
						 
						
							2001-11-12 16:28:48 +00:00  
				
					
						
							
							
								 
						
							
								e32deb455b 
								
							 
						 
						
							
							
								
								Hack a structure profiling option together  
							
							... 
							
							
							
							llvm-svn: 1267 
							
						 
						
							2001-11-12 16:19:45 +00:00  
				
					
						
							
							
								 
						
							
								b1f672812b 
								
							 
						 
						
							
							
								
								Correct problem that allows indirect function calls  
							
							... 
							
							
							
							llvm-svn: 1179 
							
						 
						
							2001-11-07 20:12:30 +00:00  
				
					
						
							
							
								 
						
							
								31e9e4d219 
								
							 
						 
						
							
							
								
								* Switch to operation on pointers with PointerTy more consistently  
							
							... 
							
							
							
							* Fix misspeling
* Catch SIGFPE for traps
* info XXX now prints the raw contents of the GenericValue
* Switch to calloc instead of malloc (temporarily I hope) to bandaid Olden benchmarks
* Implement binary And & Or
* Convert expressions like this:
     PointerTy SrcPtr = getOperandValue(I->getPtrOperand(), SF).PointerVal;
  to:
    GenericValue SRC = getOperandValue(I->getPtrOperand(), SF);
    PointerTy SrcPtr = SRC.PointerVal;
  because the prior way confuses purify.
* Taint the initial values of the value planes
* Handling 'print bb4' in the interpreter without crashing
* Print nicer stack frames with concise return type
* printf doesn't suck nearly as badly as it used to
llvm-svn: 1177 
							
						 
						
							2001-11-07 19:46:27 +00:00  
				
					
						
							
							
								 
						
							
								eaec4ede57 
								
							 
						 
						
							
							
								
								*Print Stack traces better.  
							
							... 
							
							
							
							* Use the cache writer for all it's problems.
* print arguments to methods in stack traces.
*Print the current stack from for up/down commands.
llvm-svn: 1170 
							
						 
						
							2001-11-07 05:31:27 +00:00  
				
					
						
							
							
								 
						
							
								1f01726487 
								
							 
						 
						
							
							
								
								* Use cached writer to speed up printing and get symbolic types more consistently  
							
							... 
							
							
							
							* When a segfault or bus error occurs, stop the program, print a stack trace, and dump the user in the debugger mode
llvm-svn: 1169 
							
						 
						
							2001-11-07 04:23:00 +00:00