summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis
Commit message (Collapse)AuthorAgeFilesLines
* For PR1043:Reid Spencer2007-01-192-1/+2
| | | | | | | | | | | | | | This is the final patch for this PR. It implements some minor cleanup in the use of IntegerType, to wit: 1. Type::getIntegerTypeMask -> IntegerType::getBitMask 2. Type::Int*Ty changed to IntegerType* from Type* 3. ConstantInt::getType() returns IntegerType* now, not Type* This also fixes PR1120. Patch by Sheng Zhou. llvm-svn: 33370
* Add CGPassManager.Devang Patel2007-01-171-0/+124
| | | | llvm-svn: 33309
* Unbreak VC++ build.Jeff Cohen2007-01-151-1/+1
| | | | llvm-svn: 33242
* Constant fold llvm.powi.*. This speeds up tramp3d--v4 by 9.5%Chris Lattner2007-01-151-1/+12
| | | | llvm-svn: 33229
* rename Type::isIntegral to Type::isInteger, eliminating the old Type::isInteger.Chris Lattner2007-01-153-16/+16
| | | | | | | | | 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
* Update code to eliminate calls to isInteger, calling isIntegral instead.Chris Lattner2007-01-152-17/+12
| | | | llvm-svn: 33220
* Fix correlated exprs regressionsChris Lattner2007-01-151-2/+2
| | | | llvm-svn: 33214
* fit to 80 cols.Chris Lattner2007-01-141-8/+6
| | | | | | | | | Remove now-extraneous checks for ptr->ptr bitcasts. Fix PR1109 and Analysis/BasicAA/2007-01-13-BasePointerBadNoAlias.ll. We need to consider arbitrary sized objects when checking for nested GEP offsets. llvm-svn: 33195
* Fix PR1101 and Analysis/ScalarEvolution/trip-count.llChris Lattner2007-01-141-3/+5
| | | | llvm-svn: 33193
* don't discriminate against boolChris Lattner2007-01-121-1/+1
| | | | llvm-svn: 33128
* remove unneeded special casesChris Lattner2007-01-121-7/+0
| | | | llvm-svn: 33127
* GEP operands can't be boolsChris Lattner2007-01-121-6/+3
| | | | llvm-svn: 33125
* Implement review feedback for the ConstantBool->ConstantInt merge. ChrisReid Spencer2007-01-123-8/+8
| | | | | | | | recommended that getBoolValue be replaced with getZExtValue and that get(bool) be replaced by get(const Type*, uint64_t). This implements those changes. llvm-svn: 33110
* Rename BoolTy as Int1Ty. Patch by Sheng Zhou.Reid Spencer2007-01-113-9/+9
| | | | llvm-svn: 33076
* For PR1043:Zhou Sheng2007-01-114-45/+50
| | | | | | | Merge ConstantIntegral and ConstantBool into ConstantInt. Remove ConstantIntegral and ConstantBool from LLVM. llvm-svn: 33073
* Fix a bug in an assert that would never trigger.Reid Spencer2007-01-081-1/+1
| | | | llvm-svn: 33005
* Convert uses of getPrimitiveSize that should be getPrimitiveSizeInBits.Reid Spencer2007-01-082-15/+14
| | | | llvm-svn: 33003
* remove llvm.isunorderedChris Lattner2007-01-071-5/+0
| | | | llvm-svn: 32991
* Fix PR1015 and Transforms/IndVarsSimplify/2007-01-06-TripCount.ll, aChris Lattner2007-01-071-1/+15
| | | | | | miscompilation of Qt. llvm-svn: 32974
* cast of int to bool no longer does a compare, rendering this fixmeChris Lattner2007-01-071-1/+0
| | | | | | obsolete llvm-svn: 32972
* For PR950:Reid Spencer2006-12-313-68/+21
| | | | | | | | | | | | | This patch replaces signed integer types with signless ones: 1. [US]Byte -> Int8 2. [U]Short -> Int16 3. [U]Int -> Int32 4. [U]Long -> Int64. 5. Removal of isSigned, isUnsigned, getSignedVersion, getUnsignedVersion and other methods related to signedness. In a few places this warranted identifying the signedness information from other sources. llvm-svn: 32785
* For PR950:Reid Spencer2006-12-237-204/+226
| | | | | | | | 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
* Add a FIXME about signedness.Reid Spencer2006-12-211-0/+2
| | | | llvm-svn: 32732
* Add some comments about things that can go away once signless types are in.Reid Spencer2006-12-211-1/+8
| | | | llvm-svn: 32727
* eliminate static ctors from StatisticsChris Lattner2006-12-194-56/+41
| | | | llvm-svn: 32697
* Fix a bug in GetConstantFactor for affine expressions, in which the existingChris Lattner2006-12-191-5/+9
| | | | | | code was wrong for things like 3+4*i. llvm-svn: 32662
* Added an automatic cast to "std::ostream*" etc. from OStream. We then canBill Wendling2006-12-172-5/+4
| | | | | | | rework the hacks that had us passing OStream in. We pass in std::ostream* instead, check for null, and then dispatch to the correct print() method. llvm-svn: 32636
* Changed from PARALLEL_DIRS to DIRS since we're only building one directory.John Criswell2006-12-131-1/+1
| | | | | | Thanks Reid. llvm-svn: 32551
* Remove DSA.John Criswell2006-12-1314-7235/+0
| | | | llvm-svn: 32550
* Remove DSA.John Criswell2006-12-131-1/+1
| | | | llvm-svn: 32542
* Change the interface to SCEVExpander::InsertCastOfTo to take a cast opcodeReid Spencer2006-12-131-19/+2
| | | | | | | so the decision of which opcode to use is pushed upward to the caller. Adjust the callers to pass the expected opcode. llvm-svn: 32535
* Replace inferred getCast(V,Ty) calls with more strict variants.Reid Spencer2006-12-124-21/+42
| | | | | | | Rename getZeroExtend and getSignExtend to getZExt and getSExt to match the the casting mnemonics in the rest of LLVM. llvm-svn: 32514
* Get even more accurate on the casting.Reid Spencer2006-12-121-8/+5
| | | | llvm-svn: 32478
* Change inferred getCast into specific getCast. Passes all tests.Reid Spencer2006-12-121-3/+9
| | | | llvm-svn: 32469
* teach scev to analyze X*4|1 like X*4+c. This allows us to produce:Chris Lattner2006-12-121-1/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | LBB1_1: #bb movdqa (%esi), %xmm2 movaps %xmm2, %xmm3 punpcklbw %xmm0, %xmm3 movaps %xmm3, %xmm4 punpcklwd %xmm0, %xmm4 cvtdq2ps %xmm4, %xmm4 mulps %xmm1, %xmm4 movaps %xmm4, (%edi) leal 1(,%eax,4), %ebx shll $4, %ebx punpckhwd %xmm0, %xmm3 cvtdq2ps %xmm3, %xmm3 mulps %xmm1, %xmm3 movaps %xmm3, (%edx,%ebx) leal 2(,%eax,4), %ebx shll $4, %ebx punpckhbw %xmm0, %xmm2 movaps %xmm2, %xmm3 punpcklwd %xmm0, %xmm3 cvtdq2ps %xmm3, %xmm3 mulps %xmm1, %xmm3 movaps %xmm3, (%edx,%ebx) leal 3(,%eax,4), %ebx shll $4, %ebx punpckhwd %xmm0, %xmm2 cvtdq2ps %xmm2, %xmm2 mulps %xmm1, %xmm2 movaps %xmm2, (%edx,%ebx) addl $64, %edi incl %eax addl $16, %esi cmpl %ecx, %eax jne LBB1_1 #bb instead of: LBB1_1: #bb movdqa (%esi), %xmm2 movaps %xmm2, %xmm3 punpcklbw %xmm0, %xmm3 movaps %xmm3, %xmm4 punpcklwd %xmm0, %xmm4 cvtdq2ps %xmm4, %xmm4 mulps %xmm1, %xmm4 movaps %xmm4, (%edi) leal 1(,%eax,4), %ebx shll $4, %ebx punpckhwd %xmm0, %xmm3 cvtdq2ps %xmm3, %xmm3 mulps %xmm1, %xmm3 movaps %xmm3, (%edx,%ebx) leal 2(,%eax,4), %ebx shll $4, %ebx punpckhbw %xmm0, %xmm2 movaps %xmm2, %xmm3 punpcklwd %xmm0, %xmm3 cvtdq2ps %xmm3, %xmm3 mulps %xmm1, %xmm3 movaps %xmm3, (%edx,%ebx) leal 3(,%eax,4), %ebx shll $4, %ebx punpckhwd %xmm0, %xmm2 cvtdq2ps %xmm2, %xmm2 mulps %xmm1, %xmm2 movaps %xmm2, (%edx,%ebx) addl $64, %edi incl %eax addl $16, %esi cmpl %ecx, %eax jne LBB1_1 #bb for a testcase. llvm-svn: 32463
* clarify some comments, simplify some checks, fix:Chris Lattner2006-12-111-7/+7
| | | | | | Regression/Transforms/IndVarsSimplify/2006-12-10-BitCast.ll llvm-svn: 32420
* Removed more <iostream> includesBill Wendling2006-12-073-13/+10
| | | | llvm-svn: 32321
* Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling2006-12-0724-174/+166
| | | | | | now cerr, cout, and NullStream resp. llvm-svn: 32298
* Adjust to new ConstantIntegral interface for Max/Min tests.Reid Spencer2006-12-061-10/+56
| | | | llvm-svn: 32289
* Detemplatize the Statistic class. The only type it is instantiated withChris Lattner2006-12-0613-46/+46
| | | | | | is 'unsigned'. llvm-svn: 32279
* Simplify codeChris Lattner2006-12-061-10/+4
| | | | llvm-svn: 32270
* Remove the 'printname' argument to WriteAsOperand. It is always true, andChris Lattner2006-12-065-11/+11
| | | | | | passing false would make the asmprinter fail anyway. llvm-svn: 32264
* Finally get the casting right in this file. Also, remove some unnecessaryReid Spencer2006-12-051-7/+6
| | | | | | casting because sdiv doesn't require operand signs to match any more. llvm-svn: 32240
* straighten out various memory ownership issues in the callgraph stuff.Chris Lattner2006-12-051-3/+2
| | | | | | This fixes Regression/Other/2002-01-31-CallGraph.ll. llvm-svn: 32237
* Bail on the getInferredCast idea. Remove the function and convertReid Spencer2006-12-051-9/+10
| | | | | | remaining uses to more specific casts. llvm-svn: 32231
* Fix comment grammaroReid Spencer2006-12-041-2/+2
| | | | llvm-svn: 32198
* Add a comment and fix a memory leak. Thanks to Vikram for pointing this out.Chris Lattner2006-12-041-4/+5
| | | | llvm-svn: 32196
* Fix inferred casts.Reid Spencer2006-12-041-6/+9
| | | | llvm-svn: 32180
* Fix 80 cols violationReid Spencer2006-12-041-2/+3
| | | | llvm-svn: 32179
* Change inferred casts to explicit casts.Reid Spencer2006-12-041-9/+5
| | | | llvm-svn: 32165
OpenPOWER on IntegriCloud