66966403ce 
								
							 
						 
						
							
							
								
								Pass argc by value, not by reference, since it isn't modified.  
							
							... 
							
							
							
							llvm-svn: 42788 
							
						 
						
							2007-10-09 16:04:57 +00:00  
				
					
						
							
							
								 
						
							
								5c50f59690 
								
							 
						 
						
							
							
								
								Change a #include into a forward declaration  
							
							... 
							
							
							
							llvm-svn: 42781 
							
						 
						
							2007-10-09 03:40:30 +00:00  
				
					
						
							
							
								 
						
							
								2c6a821fd7 
								
							 
						 
						
							
							
								
								Move the space in overview output for commands out of each of the  
							
							... 
							
							
							
							commands and into the common code.
llvm-svn: 42752 
							
						 
						
							2007-10-08 15:45:12 +00:00  
				
					
						
							
							
								 
						
							
								49c6aab7b8 
								
							 
						 
						
							
							
								
								Use APInt::tcExtract.  It's cleaner, and works :)  
							
							... 
							
							
							
							llvm-svn: 42746 
							
						 
						
							2007-10-08 14:39:42 +00:00  
				
					
						
							
							
								 
						
							
								b618216e56 
								
							 
						 
						
							
							
								
								Add a new function tcExtract for extracting a bignum from an  
							
							... 
							
							
							
							arbitrary range of bits embedded in the middle of another bignum.
This kind of operation is desirable in many cases of software
floating point, e.g. converting bignum integers to floating point
numbers of fixed precision (you want to extract the precision most
significant bits).
Elsewhere, add an assertion, and exit the shift functions early if
the shift count is zero.
llvm-svn: 42745 
							
						 
						
							2007-10-08 13:47:12 +00:00  
				
					
						
							
							
								 
						
							
								03f58ab706 
								
							 
						 
						
							
							
								
								Add back convertFromSignExtendedInteger.  
							
							... 
							
							
							
							llvm-svn: 42735 
							
						 
						
							2007-10-07 12:15:41 +00:00  
				
					
						
							
							
								 
						
							
								ba205229e7 
								
							 
						 
						
							
							
								
								Now that convertFromUnsignedParts has a sane, constant interface,  
							
							... 
							
							
							
							convertFromZeroExtendedInteger can be simplified as it doesn't need
to make a copy of the source bignum.
llvm-svn: 42734 
							
						 
						
							2007-10-07 12:10:57 +00:00  
				
					
						
							
							
								 
						
							
								6c1c8588ae 
								
							 
						 
						
							
							
								
								Reimplement convertFromUnsignedInteger so it is passed a const bignum.  
							
							... 
							
							
							
							It used to modify its argument in-place.
This interface is saner and the implementation more efficient.  It will
be needed for decimal->binary conversion.
llvm-svn: 42733 
							
						 
						
							2007-10-07 12:07:53 +00:00  
				
					
						
							
							
								 
						
							
								5f00973393 
								
							 
						 
						
							
							
								
								convertFromInteger, as originally written, expected sign-extended  
							
							... 
							
							
							
							input.  APInt unfortunately zero-extends signed integers, so Dale
modified the function to expect zero-extended input.  Make this
assumption explicit in the function name.
llvm-svn: 42732 
							
						 
						
							2007-10-07 11:45:55 +00:00  
				
					
						
							
							
								 
						
							
								d3985924f4 
								
							 
						 
						
							
							
								
								combineLostFractions does not need to be a member function  
							
							... 
							
							
							
							llvm-svn: 42729 
							
						 
						
							2007-10-07 08:51:21 +00:00  
				
					
						
							
							
								 
						
							
								32897f5eb0 
								
							 
						 
						
							
							
								
								Cleaner, more general exponent output.  
							
							... 
							
							
							
							llvm-svn: 42690 
							
						 
						
							2007-10-06 07:29:25 +00:00  
				
					
						
							
							
								 
						
							
								2a9bcb9ea7 
								
							 
						 
						
							
							
								
								silence warnings in no-assert build.  
							
							... 
							
							
							
							llvm-svn: 42687 
							
						 
						
							2007-10-06 06:13:42 +00:00  
				
					
						
							
							
								 
						
							
								c8b650ab14 
								
							 
						 
						
							
							
								
								Fix and clarify some comments.  
							
							... 
							
							
							
							llvm-svn: 42670 
							
						 
						
							2007-10-06 00:43:45 +00:00  
				
					
						
							
							
								 
						
							
								0ea72a9a91 
								
							 
						 
						
							
							
								
								Generalize tcFullMultiply so that the operands can be of differing  
							
							... 
							
							
							
							part widths.  Also, return the number of parts actually required to
hold the result's value.
Remove an over-cautious condition from rounding of float->hex conversion.
llvm-svn: 42669 
							
						 
						
							2007-10-06 00:24:48 +00:00  
				
					
						
							
							
								 
						
							
								8f1946fa22 
								
							 
						 
						
							
							
								
								Add APFloat -> hexadecimal string conversion, as per %a and %A in C99.  
							
							... 
							
							
							
							Useful for diagnostics and debugging.
llvm-svn: 42598 
							
						 
						
							2007-10-03 22:26:02 +00:00  
				
					
						
							
							
								 
						
							
								99f6ab7e4c 
								
							 
						 
						
							
							
								
								Add initial iterator support for folding set.  
							
							... 
							
							
							
							llvm-svn: 42589 
							
						 
						
							2007-10-03 21:12:09 +00:00  
				
					
						
							
							
								 
						
							
								8c41ed61d1 
								
							 
						 
						
							
							
								
								Simplify implementation of the FoldingSet circular list, a necessary step  
							
							... 
							
							
							
							to giving it iterators.
llvm-svn: 42586 
							
						 
						
							2007-10-03 20:45:43 +00:00  
				
					
						
							
							
								 
						
							
								1ca1f80b38 
								
							 
						 
						
							
							
								
								Tweak RoundAwayFromZero the bit number below which is truncated, and make  
							
							... 
							
							
							
							it const.
Preparation for APFloat -> hexadecimal string conversion.
llvm-svn: 42576 
							
						 
						
							2007-10-03 15:16:41 +00:00  
				
					
						
							
							
								 
						
							
								28a2c4a9c4 
								
							 
						 
						
							
							
								
								Simplify and fix signed int -> FP conversions.  
							
							... 
							
							
							
							llvm-svn: 42483 
							
						 
						
							2007-09-30 18:17:01 +00:00  
				
					
						
							
							
								 
						
							
								9acbf5aaf9 
								
							 
						 
						
							
							
								
								Whitespace and compiler warning cleanup.  
							
							... 
							
							
							
							llvm-svn: 42373 
							
						 
						
							2007-09-26 21:33:42 +00:00  
				
					
						
							
							
								 
						
							
								e7439eff5a 
								
							 
						 
						
							
							
								
								Make APFloat->int conversions deterministic even in  
							
							... 
							
							
							
							cases with undefined behavior.
llvm-svn: 42328 
							
						 
						
							2007-09-25 23:07:07 +00:00  
				
					
						
							
							
								 
						
							
								4f55d9fe0f 
								
							 
						 
						
							
							
								
								Fix long double<->shorter FP type conversions  
							
							... 
							
							
							
							of zero, infinity, and NaNs.
llvm-svn: 42298 
							
						 
						
							2007-09-25 17:25:00 +00:00  
				
					
						
							
							
								 
						
							
								a8d7269269 
								
							 
						 
						
							
							
								
								Handle storage complications of float->float conversions.  
							
							... 
							
							
							
							llvm-svn: 42220 
							
						 
						
							2007-09-22 02:56:19 +00:00  
				
					
						
							
							
								 
						
							
								4230512f32 
								
							 
						 
						
							
							
								
								Change APFloat::convertFromInteger to take the incoming  
							
							... 
							
							
							
							bit width instead of number of words allocated, which
makes it actually work for int->APF conversions.
Adjust callers.  Add const to one of the APInt constructors
to prevent surprising match when called with const
argument.
llvm-svn: 42210 
							
						 
						
							2007-09-21 22:09:37 +00:00  
				
					
						
							
							
								 
						
							
								146a0ea071 
								
							 
						 
						
							
							
								
								Fix PR 1688.  See comments there.  
							
							... 
							
							
							
							llvm-svn: 42181 
							
						 
						
							2007-09-20 23:47:58 +00:00  
				
					
						
							
							
								 
						
							
								00064e1bab 
								
							 
						 
						
							
							
								
								Do not hide APInt::dump() inside #ifndef NDEBUG.  
							
							... 
							
							
							
							llvm-svn: 42068 
							
						 
						
							2007-09-17 22:24:00 +00:00  
				
					
						
							
							
								 
						
							
								6395e5060d 
								
							 
						 
						
							
							
								
								fix a gcc warning: comparison between signed and unsigned integer expressions  
							
							... 
							
							
							
							llvm-svn: 41972 
							
						 
						
							2007-09-14 22:57:00 +00:00  
				
					
						
							
							
								 
						
							
								98d3a08d8f 
								
							 
						 
						
							
							
								
								Remove the assumption that FP's are either float or  
							
							... 
							
							
							
							double from some of the many places in the optimizers
it appears, and do something reasonable with x86
long double.
Make APInt::dump() public, remove newline, use it to
dump ConstantSDNode's.
Allow APFloats in FoldingSet.
Expand X86 backend handling of long doubles (conversions
to/from int, mostly).
llvm-svn: 41967 
							
						 
						
							2007-09-14 22:26:36 +00:00  
				
					
						
							
							
								 
						
							
								14cf78cde5 
								
							 
						 
						
							
							
								
								And an FoldingSetImpl::NodeID::AddInteger overload for int64_t, to avoid  
							
							... 
							
							
							
							ambiguity.
llvm-svn: 41960 
							
						 
						
							2007-09-14 20:48:42 +00:00  
				
					
						
							
							
								 
						
							
								58c468fb09 
								
							 
						 
						
							
							
								
								Remove spurious consts. This fixes warnings with compilers that  
							
							... 
							
							
							
							are strict about such things.
llvm-svn: 41956 
							
						 
						
							2007-09-14 20:08:19 +00:00  
				
					
						
							
							
								 
						
							
								521988b604 
								
							 
						 
						
							
							
								
								Compensate for partCount change in Bogus definition  
							
							... 
							
							
							
							(could break hash table in ConstantFP)
llvm-svn: 41874 
							
						 
						
							2007-09-12 01:22:05 +00:00  
				
					
						
							
							
								 
						
							
								245dceb06d 
								
							 
						 
						
							
							
								
								Add APInt interfaces to APFloat (allows directly  
							
							... 
							
							
							
							access to bits).  Use them in place of float and
double interfaces where appropriate.
First bits of x86 long double constants handling 
(untested, probably does not work).
llvm-svn: 41858 
							
						 
						
							2007-09-11 18:32:33 +00:00  
				
					
						
							
							
								 
						
							
								ee8d9a0e81 
								
							 
						 
						
							
							
								
								Smarter Reset(). Instead of deallocating all memory regions and reallocate the  
							
							... 
							
							
							
							first region, just deallocate all but the last region in the list.
llvm-svn: 41782 
							
						 
						
							2007-09-08 00:02:17 +00:00  
				
					
						
							
							
								 
						
							
								3dba41bf37 
								
							 
						 
						
							
							
								
								Added Reset() to free all allocated memory regions and reset state to be the same as right after ctor.  
							
							... 
							
							
							
							llvm-svn: 41728 
							
						 
						
							2007-09-05 21:41:34 +00:00  
				
					
						
							
							
								 
						
							
								728687c423 
								
							 
						 
						
							
							
								
								Fix mod so it actually works.  Fix conversions to  
							
							... 
							
							
							
							native types to handle denormals correctly.
llvm-svn: 41726 
							
						 
						
							2007-09-05 20:39:49 +00:00  
				
					
						
							
							
								 
						
							
								689d17d282 
								
							 
						 
						
							
							
								
								Oops, should be part of 41664; won't work very well without this piece.  
							
							... 
							
							
							
							llvm-svn: 41665 
							
						 
						
							2007-08-31 23:35:31 +00:00  
				
					
						
							
							
								 
						
							
								3cf889f75e 
								
							 
						 
						
							
							
								
								Enhance APFloat to retain bits of NaNs (fixes oggenc).  
							
							... 
							
							
							
							Use APFloat interfaces for more references, mostly
of ConstantFPSDNode.
llvm-svn: 41632 
							
						 
						
							2007-08-31 04:03:46 +00:00  
				
					
						
							
							
								 
						
							
								d246b2ca5c 
								
							 
						 
						
							
							
								
								Change LegalFPImmediates to use APFloat.  
							
							... 
							
							
							
							Add APFloat interfaces to ConstantFP, SelectionDAG.
Fix integer bit in double->APFloat conversion.
Convert LegalizeDAG to use APFloat interface in
ConstantFPSDNode uses.
llvm-svn: 41587 
							
						 
						
							2007-08-30 00:23:21 +00:00  
				
					
						
							
							
								 
						
							
								bdea32d812 
								
							 
						 
						
							
							
								
								Poison APFloat::operator==.  Replace existing uses with bitwiseIsEqual.  
							
							... 
							
							
							
							This means backing out the preceding change to Constants.cpp, alas.
llvm-svn: 41378 
							
						 
						
							2007-08-24 22:09:56 +00:00  
				
					
						
							
							
								 
						
							
								918c33c67a 
								
							 
						 
						
							
							
								
								Revised per review feedback from previous patch.  
							
							... 
							
							
							
							llvm-svn: 41353 
							
						 
						
							2007-08-24 05:08:11 +00:00  
				
					
						
							
							
								 
						
							
								3da18eb22a 
								
							 
						 
						
							
							
								
								silence some warnings in an optimized build.  
							
							... 
							
							
							
							llvm-svn: 41352 
							
						 
						
							2007-08-24 03:02:34 +00:00  
				
					
						
							
							
								 
						
							
								a719a60609 
								
							 
						 
						
							
							
								
								Change internal representation of ConstantFP to use APFloat.  
							
							... 
							
							
							
							Interface to rest of the compiler unchanged, as yet.
llvm-svn: 41348 
							
						 
						
							2007-08-24 00:56:33 +00:00  
				
					
						
							
							
								 
						
							
								b0f158cfdf 
								
							 
						 
						
							
							
								
								rename APInt::toString -> toStringUnsigned for symmetry with toStringSigned()  
							
							... 
							
							
							
							Add an APSInt::toString() method.
llvm-svn: 41309 
							
						 
						
							2007-08-23 05:15:32 +00:00  
				
					
						
							
							
								 
						
							
								fe02c1f97f 
								
							 
						 
						
							
							
								
								initial checkin of Neil's APFloat work.  
							
							... 
							
							
							
							llvm-svn: 41203 
							
						 
						
							2007-08-20 22:49:32 +00:00  
				
					
						
							
							
								 
						
							
								6b69568f85 
								
							 
						 
						
							
							
								
								This adds a bunch of static functions that implement unsigned  
							
							... 
							
							
							
							two's complement bignum arithmetic.  They could be used to
implement much of APInt, but the idea is they are enough to
implement APFloat as well, which the current APInt interface
is not suited for.
Patch by Neil Booth!
llvm-svn: 41124 
							
						 
						
							2007-08-16 15:56:55 +00:00  
				
					
						
							
							
								 
						
							
								b61c63ecd0 
								
							 
						 
						
							
							
								
								Properly use const qualifiers  
							
							... 
							
							
							
							llvm-svn: 41111 
							
						 
						
							2007-08-15 21:12:30 +00:00  
				
					
						
							
							
								 
						
							
								155533cf73 
								
							 
						 
						
							
							
								
								Make getSTDIN return null if the standard input is empty, as the header file  
							
							... 
							
							
							
							documentation implies and as its uses depend.
llvm-svn: 40939 
							
						 
						
							2007-08-08 20:01:58 +00:00  
				
					
						
							
							
								 
						
							
								f13bcdc4a4 
								
							 
						 
						
							
							
								
								Escape some escapes that confuse doxygen.  
							
							... 
							
							
							
							llvm-svn: 40850 
							
						 
						
							2007-08-05 19:33:11 +00:00  
				
					
						
							
							
								 
						
							
								44f7d3aa0b 
								
							 
						 
						
							
							
								
								When clearing a SmallPtrSet, if the set had a huge capacity, but the  
							
							... 
							
							
							
							contents of the set were small, deallocate and shrink the set.  This
avoids having us to memset as much data, significantly speeding up
some pathological cases.  For example, this speeds up the verifier
from 0.3899s to 0.0763 (5.1x) on the testcase from PR1432 in a 
release build.
llvm-svn: 40837 
							
						 
						
							2007-08-05 07:32:14 +00:00  
				
					
						
							
							
								 
						
							
								49f037ac29 
								
							 
						 
						
							
							
								
								Allow SmallPtrSet to hold pointers to const data.  
							
							... 
							
							
							
							llvm-svn: 40556 
							
						 
						
							2007-07-27 18:07:02 +00:00  
				
					
						
							
							
								 
						
							
								4c54024319 
								
							 
						 
						
							
							
								
								Make the copy constructor of SmallPtrSet much faster.  
							
							... 
							
							
							
							llvm-svn: 40474 
							
						 
						
							2007-07-24 21:31:23 +00:00  
				
					
						
							
							
								 
						
							
								ee99010782 
								
							 
						 
						
							
							
								
								Remember to free the heap allocated array if we're not going to use it.  
							
							... 
							
							
							
							llvm-svn: 40043 
							
						 
						
							2007-07-19 06:45:33 +00:00  
				
					
						
							
							
								 
						
							
								e21f270858 
								
							 
						 
						
							
							
								
								Fix an issue where assignments that caused a SmallPtrSet to become non-small  
							
							... 
							
							
							
							would result in calling realloc() on a null pointer.  Instead, if we encounter
this situation, make a normal call to malloc().
llvm-svn: 40014 
							
						 
						
							2007-07-18 19:54:15 +00:00  
				
					
						
							
							
								 
						
							
								5060fd0fa3 
								
							 
						 
						
							
							
								
								Unbreak the build by putting calls to free into the implementation file and  
							
							... 
							
							
							
							having that implementation file #include <cstdlib>.
llvm-svn: 39952 
							
						 
						
							2007-07-17 02:16:12 +00:00  
				
					
						
							
							
								 
						
							
								81990a3fc3 
								
							 
						 
						
							
							
								
								Use realloc() to (potentially) resize the contents of SmallPtrSet in place.  
							
							... 
							
							
							
							llvm-svn: 39926 
							
						 
						
							2007-07-16 21:27:44 +00:00  
				
					
						
							
							
								 
						
							
								ddc2f9ba57 
								
							 
						 
						
							
							
								
								Clarify the language. Pointed out by Duncan Sands.  
							
							... 
							
							
							
							llvm-svn: 39857 
							
						 
						
							2007-07-14 17:41:03 +00:00  
				
					
						
							
							
								 
						
							
								61b4a265ee 
								
							 
						 
						
							
							
								
								Add alternate ConstantRange intersection algorithm.  
							
							... 
							
							
							
							llvm-svn: 39851 
							
						 
						
							2007-07-14 02:51:34 +00:00  
				
					
						
							
							
								 
						
							
								e33356b18e 
								
							 
						 
						
							
							
								
								Make the assignment operator for SmallPtrSet much faster for normal cases.  
							
							... 
							
							
							
							llvm-svn: 38474 
							
						 
						
							2007-07-09 22:27:20 +00:00  
				
					
						
							
							
								 
						
							
								3364abbb36 
								
							 
						 
						
							
							
								
								Make the assignment operator for SmallPtrSet return a reference, and fix a long-standing bug in the copy  
							
							... 
							
							
							
							ctor while I'm at it.
Thanks to Chris Lattner for help with this patch.
llvm-svn: 38470 
							
						 
						
							2007-07-09 20:59:01 +00:00  
				
					
						
							
							
								 
						
							
								aee901745d 
								
							 
						 
						
							
							
								
								Fix an error in the assignment operator that was causing an infinite loop in GVNPRE.cpp.  
							
							... 
							
							
							
							Patch by Chis Lattner.
llvm-svn: 38467 
							
						 
						
							2007-07-09 18:51:15 +00:00  
				
					
						
							
							
								 
						
							
								85049a470e 
								
							 
						 
						
							
							
								
								implement operator= for smallptrset  
							
							... 
							
							
							
							llvm-svn: 38460 
							
						 
						
							2007-07-09 16:54:03 +00:00  
				
					
						
							
							
								 
						
							
								e16561cd5d 
								
							 
						 
						
							
							
								
								Here is the bulk of the sanitizing.  
							
							... 
							
							
							
							Almost all occurrences of "bytecode" in the sources have been eliminated.
llvm-svn: 37913 
							
						 
						
							2007-07-05 17:07:56 +00:00  
				
					
						
							
							
								 
						
							
								5105adfcd1 
								
							 
						 
						
							
							
								
								Fix undefined behaviour reported by the new --enable-expensive-checks option.  
							
							... 
							
							
							
							llvm-svn: 37829 
							
						 
						
							2007-07-01 03:06:30 +00:00  
				
					
						
							
							
								 
						
							
								6d7b6f1ab8 
								
							 
						 
						
							
							
								
								Fix a bug in SmallPtrSet that was causing GVNPRE to enter an infinite loop.  
							
							... 
							
							
							
							llvm-svn: 37697 
							
						 
						
							2007-06-22 00:11:18 +00:00  
				
					
						
							
							
								 
						
							
								836e8f3f39 
								
							 
						 
						
							
							
								
								Two changes:  
							
							... 
							
							
							
							1. Make SmallPtrSet::erase faster in the small case by replacing a memmove
    with a pointer copy.
 2. Fix a bug where the null terminator at the end of the array in the small
    case was not copied
llvm-svn: 37696 
							
						 
						
							2007-06-21 23:23:32 +00:00  
				
					
						
							
							
								 
						
							
								d18b16034a 
								
							 
						 
						
							
							
								
								Fix edge case.  
							
							... 
							
							
							
							llvm-svn: 37532 
							
						 
						
							2007-06-09 04:20:33 +00:00  
				
					
						
							
							
								 
						
							
								82810c8a13 
								
							 
						 
						
							
							
								
								Make tail merging the default, except on powerPC.  There was no prior art  
							
							... 
							
							
							
							for a target-dependent default with a command-line override; this way
should be generally usable.
llvm-svn: 37285 
							
						 
						
							2007-05-22 17:14:46 +00:00  
				
					
						
							
							
								 
						
							
								b6af1aae35 
								
							 
						 
						
							
							
								
								Fix an assertion introduced by my last change to the toString method. We  
							
							... 
							
							
							
							can't use getZExtValue() to extract the low order bits for each digit.
Instead, we need to access the low order word directly.
llvm-svn: 37242 
							
						 
						
							2007-05-19 00:29:55 +00:00  
				
					
						
							
							
								 
						
							
								5c138133b7 
								
							 
						 
						
							
							
								
								Get rid of leading zeros in the output of toString.  
							
							... 
							
							
							
							llvm-svn: 37175 
							
						 
						
							2007-05-17 19:23:02 +00:00  
				
					
						
							
							
								 
						
							
								fffdf10566 
								
							 
						 
						
							
							
								
								For lshr by 0 bits, just return *this as a short cut. This also prevents  
							
							... 
							
							
							
							undefined behavior when the width > 64 bits.
llvm-svn: 37153 
							
						 
						
							2007-05-17 06:26:29 +00:00  
				
					
						
							
							
								 
						
							
								a93c981f66 
								
							 
						 
						
							
							
								
								Fix a bug in the "fromString" method where radix 2,8 and 16 values were  
							
							... 
							
							
							
							not being generated correctly because the shl operator does not mutate its
object but returns a new value. Also, make the distinction between radix
16 and the others more clear.
llvm-svn: 37111 
							
						 
						
							2007-05-16 19:18:22 +00:00  
				
					
						
							
							
								 
						
							
								98ed7db7ab 
								
							 
						 
						
							
							
								
								Make the results for the rotate functions correct when rotateAmt == 0.  
							
							... 
							
							
							
							llvm-svn: 37026 
							
						 
						
							2007-05-14 00:15:28 +00:00  
				
					
						
							
							
								 
						
							
								4c50b52f63 
								
							 
						 
						
							
							
								
								Add some things needed by the llvm-gcc version supporting bit accurate integer  
							
							... 
							
							
							
							types:
1. Functions to compute div/rem at the same time.
2. Further assurance that an APInt with 0 bitwidth cannot be constructed.
3. Left and right rotate operations.
4. An exactLogBase2 function which requires an exact power of two or it
   returns -1.
llvm-svn: 37025 
							
						 
						
							2007-05-13 23:44:59 +00:00  
				
					
						
							
							
								 
						
							
								81ee020f64 
								
							 
						 
						
							
							
								
								Fix shl to produce the correct result when the bitwidth is > 64 and the  
							
							... 
							
							
							
							shift amount is 0. Previously this code would do a lshr by the bit width
which can lead to incorrect results.
llvm-svn: 37010 
							
						 
						
							2007-05-12 18:01:57 +00:00  
				
					
						
							
							
								 
						
							
								436370bac8 
								
							 
						 
						
							
							
								
								fix a memory leak  
							
							... 
							
							
							
							llvm-svn: 36981 
							
						 
						
							2007-05-11 00:43:26 +00:00  
				
					
						
							
							
								 
						
							
								b6e144cffe 
								
							 
						 
						
							
							
								
								Unbreak VC++ build.  
							
							... 
							
							
							
							llvm-svn: 36901 
							
						 
						
							2007-05-07 15:21:46 +00:00  
				
					
						
							
							
								 
						
							
								275757a05e 
								
							 
						 
						
							
							
								
								Enhance MemoryBuffer to return error messages in strings if they occur.  
							
							... 
							
							
							
							llvm-svn: 36899 
							
						 
						
							2007-05-06 23:32:36 +00:00  
				
					
						
							
							
								 
						
							
								4211c20988 
								
							 
						 
						
							
							
								
								remove this file for now, we can bring it back from cvs if we need it in  
							
							... 
							
							
							
							the future (and integrate it with membuffer, etc)
llvm-svn: 36876 
							
						 
						
							2007-05-06 19:10:47 +00:00  
				
					
						
							
							
								 
						
							
								2fce8c5df8 
								
							 
						 
						
							
							
								
								remove libbzip2, it is dead  
							
							... 
							
							
							
							llvm-svn: 36875 
							
						 
						
							2007-05-06 19:05:34 +00:00  
				
					
						
							
							
								 
						
							
								d2517d6767 
								
							 
						 
						
							
							
								
								don't build bzip2 for now  
							
							... 
							
							
							
							llvm-svn: 36871 
							
						 
						
							2007-05-06 09:31:32 +00:00  
				
					
						
							
							
								 
						
							
								1761e05c5b 
								
							 
						 
						
							
							
								
								disable this for now  
							
							... 
							
							
							
							llvm-svn: 36870 
							
						 
						
							2007-05-06 09:31:06 +00:00  
				
					
						
							
							
								 
						
							
								5db36d3d82 
								
							 
						 
						
							
							
								
								Fix MemoryBuffer::getFile to return null if it has an error opening the  
							
							... 
							
							
							
							file instead of aborting.
llvm-svn: 36858 
							
						 
						
							2007-05-06 07:24:46 +00:00  
				
					
						
							
							
								 
						
							
								357882d27c 
								
							 
						 
						
							
							
								
								This is a patch to fix a compile error in STLExtras.h, and  
							
							... 
							
							
							
							a bug in GraphWriter.cpp.
Patch by Florian Brandner
llvm-svn: 36684 
							
						 
						
							2007-05-03 18:32:10 +00:00  
				
					
						
							
							
								 
						
							
								dad2d0939c 
								
							 
						 
						
							
							
								
								silence some annoying gcc 4.3 warnings  
							
							... 
							
							
							
							llvm-svn: 36680 
							
						 
						
							2007-05-03 18:15:36 +00:00  
				
					
						
							
							
								 
						
							
								990a58f242 
								
							 
						 
						
							
							
								
								Fix MemoryBuffer breakage correctly.  
							
							... 
							
							
							
							llvm-svn: 36561 
							
						 
						
							2007-04-29 14:43:31 +00:00  
				
					
						
							
							
								 
						
							
								50b2d2c6e3 
								
							 
						 
						
							
							
								
								Unbreak build.  
							
							... 
							
							
							
							llvm-svn: 36559 
							
						 
						
							2007-04-29 14:21:44 +00:00  
				
					
						
							
							
								 
						
							
								ee2d1f1ed2 
								
							 
						 
						
							
							
								
								Add a new memorybuffer class, to unify all the file reading code in the system  
							
							... 
							
							
							
							llvm-svn: 36553 
							
						 
						
							2007-04-29 06:58:52 +00:00  
				
					
						
							
							
								 
						
							
								3178736d50 
								
							 
						 
						
							
							
								
								Using APInt more efficiently.  
							
							... 
							
							
							
							llvm-svn: 36475 
							
						 
						
							2007-04-26 16:42:07 +00:00  
				
					
						
							
							
								 
						
							
								e7ce8f23f6 
								
							 
						 
						
							
							
								
								Fix PR1329.  
							
							... 
							
							
							
							llvm-svn: 36016 
							
						 
						
							2007-04-14 21:50:21 +00:00  
				
					
						
							
							
								 
						
							
								67378b22bb 
								
							 
						 
						
							
							
								
								We want the number of bits needed, not the power of 2.  
							
							... 
							
							
							
							llvm-svn: 35977 
							
						 
						
							2007-04-14 00:00:10 +00:00  
				
					
						
							
							
								 
						
							
								9329e7b626 
								
							 
						 
						
							
							
								
								Implement a getBitsNeeded method to determine how many bits are needed to  
							
							... 
							
							
							
							represent a string in binary form by an APInt.
llvm-svn: 35968 
							
						 
						
							2007-04-13 19:19:07 +00:00  
				
					
						
							
							
								 
						
							
								01c175ec52 
								
							 
						 
						
							
							
								
								Make the apint construction more effective.  
							
							... 
							
							
							
							llvm-svn: 35960 
							
						 
						
							2007-04-13 05:57:32 +00:00  
				
					
						
							
							
								 
						
							
								af039c53c0 
								
							 
						 
						
							
							
								
								improve the patch for PR1318 to also support grouped options with custom  
							
							... 
							
							
							
							handlers (like the pass list).  My previous fix only supported *new* command
line options, not additions to old ones.
This fixes test/Feature/load_module.ll
llvm-svn: 35935 
							
						 
						
							2007-04-12 00:36:29 +00:00  
				
					
						
							
							
								 
						
							
								83b53a5964 
								
							 
						 
						
							
							
								
								Fix PR1318 by reacting appropriately to a mutating option list.  
							
							... 
							
							
							
							llvm-svn: 35905 
							
						 
						
							2007-04-11 15:35:18 +00:00  
				
					
						
							
							
								 
						
							
								c49f2ef236 
								
							 
						 
						
							
							
								
								Fix an approximate calculation in an assertion not to give false negatives.  
							
							... 
							
							
							
							llvm-svn: 35901 
							
						 
						
							2007-04-11 13:00:04 +00:00  
				
					
						
							
							
								 
						
							
								21b76a9b99 
								
							 
						 
						
							
							
								
								For PR1291:  
							
							... 
							
							
							
							Change uses of sys::Path class to sys::PathWithStatus in those places where
the file status information is needed.
llvm-svn: 35743 
							
						 
						
							2007-04-07 18:53:16 +00:00  
				
					
						
							
							
								 
						
							
								b89804f246 
								
							 
						 
						
							
							
								
								Add signExtend to ConstantRange, to complement zeroExtend and truncate.  
							
							... 
							
							
							
							llvm-svn: 35733 
							
						 
						
							2007-04-07 15:41:33 +00:00  
				
					
						
							
							
								 
						
							
								0e1c1d4ae3 
								
							 
						 
						
							
							
								
								Fix a bug in my earlier commit which exposed positional options backwards.  
							
							... 
							
							
							
							This fixes llvm-ar.
llvm-svn: 35727 
							
						 
						
							2007-04-07 05:38:53 +00:00  
				
					
						
							
							
								 
						
							
								5247f60d20 
								
							 
						 
						
							
							
								
								rearchitect the registration mechanism used by the command line option stuff.  
							
							... 
							
							
							
							This dramatically reduce the amount of memory allocated by the commandline stuff
at static init time, changing it to build local data structures when ParseCommandLineOptions
is called.  In a dummy empty program that links some llvm libraries, this reduces
the number of malloc'd bytes from 4864 to 3360 on entry to main.  Most of that
memory is now allocated by non-commandline related stuff.
llvm-svn: 35701 
							
						 
						
							2007-04-06 21:06:55 +00:00  
				
					
						
							
							
								 
						
							
								2031b02faf 
								
							 
						 
						
							
							
								
								remove the dead removeArgument method, rename Options to OptionsMap.  
							
							... 
							
							
							
							llvm-svn: 35690 
							
						 
						
							2007-04-05 21:58:17 +00:00