aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Analysis
Commit message (Collapse)AuthorAgeFilesLines
* Merge with LLVM upstream r135568 (Jul 20th 2011)Logan Chien2011-07-2017-242/+264
|\ | | | | | | | | | | | | Conflicts: lib/Bitcode/Reader/BitcodeReader.cpp Change-Id: Iebed76d2f7d281e742947e31d9a0b78174daf2d6
| * Distinguish between two copies of one inlined variable.Devang Patel2011-07-191-0/+11
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135528 91177308-0d34-0410-b5e6-96231b3b80d8
| * Reapply r135457. This needs llvm-gcc change, that I forgot to check-in ↵Devang Patel2011-07-192-2/+19
| | | | | | | | | | | | yesterday. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135504 91177308-0d34-0410-b5e6-96231b3b80d8
| * Revert "Make a provision to encode inline location in a variable. This will ↵Bob Wilson2011-07-192-19/+2
| | | | | | | | | | | | | | | | enable dwarf writer to easily distinguish between two instances of a inlined variable in one basic block." This reverts commit 9fec5e346efdf744b151ae6604f912908315fa7a. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135486 91177308-0d34-0410-b5e6-96231b3b80d8
| * Convert SimplifyGEPInst to use ArrayRef.Jay Foad2011-07-192-9/+10
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135482 91177308-0d34-0410-b5e6-96231b3b80d8
| * Convert TargetData::getIndexedOffset to use ArrayRef.Jay Foad2011-07-192-8/+6
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135478 91177308-0d34-0410-b5e6-96231b3b80d8
| * Use ArrayRef in ConstantFoldInstOperands and ConstantFoldCall.Jay Foad2011-07-193-35/+33
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135477 91177308-0d34-0410-b5e6-96231b3b80d8
| * Make a provision to encode inline location in a variable. This will enable ↵Devang Patel2011-07-192-2/+19
| | | | | | | | | | | | dwarf writer to easily distinguish between two instances of a inlined variable in one basic block. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135457 91177308-0d34-0410-b5e6-96231b3b80d8
| * Migrate LLVM and Clang to use the new makeArrayRef(...) functions where ↵Frits van Bommel2011-07-181-6/+3
| | | | | | | | | | | | | | | | | | previously explicit non-default constructors were used. Mostly mechanical with some manual reformatting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135390 91177308-0d34-0410-b5e6-96231b3b80d8
| * land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner2011-07-1814-185/+185
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
* | Merge upstream to r135360 at Sun. 17th July 2011.Nowar Gu2011-07-172-5/+9
|\ \ | |/
| * Silence compiler warnings.Benjamin Kramer2011-07-161-5/+4
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135358 91177308-0d34-0410-b5e6-96231b3b80d8
| * Remove "LoopInfo.h" include from BranchProbabilityInfo.h.Jakub Staszak2011-07-161-0/+5
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135353 91177308-0d34-0410-b5e6-96231b3b80d8
* | Merge upstream to r135343 at Sat. 16th July 2011.Nowar Gu2011-07-167-56/+59
|\ \ | |/
| * Fix SCEVEXpander to handle arbitrary phi expansion. Includes twoAndrew Trick2011-07-161-7/+18
| | | | | | | | | | | | | | | | related bug fixes and corresponding assertions for uninitialized data and missing NULL check. Test cases will be included with the new LFTR. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135333 91177308-0d34-0410-b5e6-96231b3b80d8
| * Fix pointer heuristic. Check whether predicator is ICMP_NE instead of if it isJakub Staszak2011-07-151-2/+2
| | | | | | | | | | | | | | not isEquality(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135296 91177308-0d34-0410-b5e6-96231b3b80d8
| * Convert CallInst and InvokeInst APIs to use ArrayRef.Jay Foad2011-07-151-5/+5
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135265 91177308-0d34-0410-b5e6-96231b3b80d8
| * Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef.Jay Foad2011-07-133-38/+32
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135040 91177308-0d34-0410-b5e6-96231b3b80d8
| * stop using WriteTypeSymbolic.Chris Lattner2011-07-091-3/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134833 91177308-0d34-0410-b5e6-96231b3b80d8
| * Preserve debug loc.Devang Patel2011-07-051-1/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134441 91177308-0d34-0410-b5e6-96231b3b80d8
* | Merge upstream to r134306 at Sat. 2nd July 2011.Nowar Gu2011-07-021-7/+10
|\ \ | |/
| * Teach IVUsers to stop at non-affine expressions unless they are bothDan Gohman2011-07-011-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | outside the loop and reducible. This more completely hides them from LSR, which isn't usually able to do anything meaningful with non-affine expressions anyway, and this consequently hides them from SCEVExpander, which is acutely unprepared for non-affine expressions. Replace test/CodeGen/X86/lsr-nonaffine.ll with a new test that tests the new behavior. This works around the bug in PR10117 / rdar://problem/9633149, and is generally an improvement besides. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134268 91177308-0d34-0410-b5e6-96231b3b80d8
* | Fix Android.mk.Nowar Gu2011-07-021-0/+1
| |
* | Merge upstream to r134237 at Fri. 1st July 2011.Nowar Gu2011-07-018-24/+87
|\ \ | |/ | | | | | | Conflicts: lib/Target/ARM/ARMCodeEmitter.cpp
| * Improve constant folding of undef for cmp and select operators.Dan Gohman2011-07-011-4/+4
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134223 91177308-0d34-0410-b5e6-96231b3b80d8
| * Cleanup. Fix a stupid variable name.Andrew Trick2011-06-281-3/+3
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133995 91177308-0d34-0410-b5e6-96231b3b80d8
| * SCEVExpander: give new insts a name that identifies the reponsible pass.Andrew Trick2011-06-281-3/+4
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133992 91177308-0d34-0410-b5e6-96231b3b80d8
| * indvars --disable-iv-rewrite: sever ties with IVUsers.Andrew Trick2011-06-281-15/+0
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133988 91177308-0d34-0410-b5e6-96231b3b80d8
| * Move onlyUsedByLifetimeMarkers to ValueTracking so that it can be used by otherNick Lewycky2011-06-271-0/+16
| | | | | | | | | | | | | | passes as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133904 91177308-0d34-0410-b5e6-96231b3b80d8
| * Fix struct member's scope. Patch by Xi Wang.Devang Patel2011-06-241-2/+2
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133828 91177308-0d34-0410-b5e6-96231b3b80d8
| * Calculate backedge probability correctly.Jakub Staszak2011-06-231-24/+0
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133776 91177308-0d34-0410-b5e6-96231b3b80d8
| * Missing files for the BlockFrequency analysis added.Jakub Staszak2011-06-231-0/+59
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133767 91177308-0d34-0410-b5e6-96231b3b80d8
| * Introduce BlockFrequency analysis for BasicBlocks.Jakub Staszak2011-06-233-0/+26
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133766 91177308-0d34-0410-b5e6-96231b3b80d8
| * Revert "revert 133714"Rafael Espindola2011-06-232-58/+1
| | | | | | | | | | | | | | | | This reverts commit e8e00f5efb4a22238f2407bf813de4606f30c5aa. The cmake build on OS X is still broken. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133718 91177308-0d34-0410-b5e6-96231b3b80d8
| * revert 133714Dylan Noblesmith2011-06-232-1/+58
| | | | | | | | | | | | | | | | It broke the build worse. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133716 91177308-0d34-0410-b5e6-96231b3b80d8
| * 133713 broke the build, revert it.Rafael Espindola2011-06-232-58/+1
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133714 91177308-0d34-0410-b5e6-96231b3b80d8
| * Support: make floating-exception header privateDylan Noblesmith2011-06-232-1/+58
| | | | | | | | | | | | | | | | | | | | It has only one user. This eliminates the last include of config.h from the public headers -- ideally, config.h shouldn't even be installed by `make install` anymore. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133713 91177308-0d34-0410-b5e6-96231b3b80d8
* | Merge upstream to r133679 at Thu. 23th Jun 2011.Nowar Gu2011-06-235-36/+32
|\ \ | |/
| * New binops need debug loc.Devang Patel2011-06-221-1/+3
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133642 91177308-0d34-0410-b5e6-96231b3b80d8
| * IVUsers no longer needs to record the phis.Andrew Trick2011-06-211-8/+7
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133518 91177308-0d34-0410-b5e6-96231b3b80d8
| * Revamp the "ConstantStruct::get" methods. Previously, these were scatteredChris Lattner2011-06-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | all over the place in different styles and variants. Standardize on two preferred entrypoints: one that takes a StructType and ArrayRef, and one that takes StructType and varargs. In cases where there isn't a struct type convenient, we now add a ConstantStruct::getAnon method (whose name will make more sense after a few more patches land). It would be "really really nice" if the ConstantStruct::get and ConstantVector::get methods didn't make temporary std::vectors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133412 91177308-0d34-0410-b5e6-96231b3b80d8
| * simplify some code.Chris Lattner2011-06-181-8/+3
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133362 91177308-0d34-0410-b5e6-96231b3b80d8
| * Simplify code. No functionality change.Benjamin Kramer2011-06-181-18/+18
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133351 91177308-0d34-0410-b5e6-96231b3b80d8
* | Fix source list of Android.mk.Nowar Gu2011-06-201-1/+2
| |
* | Merge upstream to r133240 at Fri. 17th Jun 2011.Nowar Gu2011-06-2031-335/+1403
|\ \ | |/ | | | | | | | | Conflicts: lib/CodeGen/AsmPrinter/AsmPrinter.cpp lib/Target/ARM/ARMCodeEmitter.cpp
| * Introduce MachineBranchProbabilityInfo class, which has similar API toJakub Staszak2011-06-161-1/+1
| | | | | | | | | | | | | | | | | | BranchProbabilityInfo (expect setEdgeWeight which is not available here). Branch Weights are kept in MachineBasicBlocks. To turn off this analysis set -use-mbpi=false. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133184 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add a limit to the number of instructions memdep will scan in a single ↵Eli Friedman2011-06-151-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | block. This prevents (at least in some cases) O(N^2) runtime in passes like DSE. The limit in this patch is probably too high, but it is enough to stop DSE from going completely insane on a testcase I have (which has a single block with around 50,000 non-aliasing stores in it). rdar://9471075 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133111 91177308-0d34-0410-b5e6-96231b3b80d8
| * Add "unknown" results for memdep, which mean "I don't know whether a ↵Eli Friedman2011-06-152-32/+37
| | | | | | | | | | | | dependence for the given instruction exists in the given block". This cleans up all the existing hacks in memdep which represent this concept by returning clobber with various unrelated instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133031 91177308-0d34-0410-b5e6-96231b3b80d8
| * Move class into an anonymous namespace.Benjamin Kramer2011-06-131-1/+2
| | | | | | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132925 91177308-0d34-0410-b5e6-96231b3b80d8
| * Branch profiling: floating-point avoidance.Andrew Trick2011-06-111-54/+63
| | | | | | | | | | | | | | | | | | | | Patch by: Jakub Staszak! Introduces BranchProbability. Changes unsigned to uint32_t all over and uint64_t only when overflow is expected. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132867 91177308-0d34-0410-b5e6-96231b3b80d8