aboutsummaryrefslogtreecommitdiffstats
path: root/lib/VMCore/ConstantFold.cpp
Commit message (Expand)AuthorAgeFilesLines
* Constant fold x == undef to undef.Dan Gohman2010-06-281-1/+8
* Use A.append(...) instead of A.insert(A.end(), ...) when A is aDan Gohman2010-06-211-1/+1
* getFoldedOffsetOf no longer does anything special with vector types.Dan Gohman2010-06-051-1/+1
* Make the 'icmp pred trunc(ext(X)), CST --> icmp pred X, ext(trunc(CST))'Nick Lewycky2010-03-041-24/+5
* fix incorrect folding of icmp with undef, PR6481.Chris Lattner2010-03-031-1/+1
* Teach the constant folder about union types.Dan Gohman2010-02-251-0/+34
* Remove code which assumes it knows how vectors are stored in memory.Dan Gohman2010-02-251-12/+2
* Canonicalize ConstantInts to the right operand of commutativeDan Gohman2010-02-221-0/+4
* Use Instruction::isCommutative instead of duplicating it.Dan Gohman2010-02-221-24/+1
* Introduce isOpaqueTy and use it rather than isa<OpaqueType>. Also, move someDuncan Sands2010-02-161-1/+1
* There are two ways of checking for a given type, for example isa<PointerType>(T)Duncan Sands2010-02-161-9/+9
* Uniformize the names of type predicates: rather than having isFloatTy andDuncan Sands2010-02-151-13/+13
* Add support for a union type in LLVM IR. Patch by Talin!Chris Lattner2010-02-121-0/+6
* Canonicalize sizeof and alignof on pointer types to a canonicalDan Gohman2010-02-101-0/+19
* Factor out alignof expression folding into a separate function andDan Gohman2010-02-021-26/+69
* eliminate a bunch of pointless LLVMContext arguments.Chris Lattner2010-02-011-151/+124
* Fix typo "of" -> "or" and change the way a line was formatted to fitDuncan Sands2010-02-011-2/+2
* fix PR6195, a bug constant folding scalar -> vector compares.Chris Lattner2010-02-011-3/+5
* fix PR6197 - infinite recursion in ipsccp due to block addressesChris Lattner2010-02-011-19/+47
* Generalize target-independent folding rules for sizeof to handle moreDan Gohman2010-02-011-24/+169
* Remove the folding ruleDan Gohman2010-01-281-22/+0
* Remove SCEVAllocSizeExpr and SCEVFieldOffsetExpr, and in their placeDan Gohman2010-01-281-2/+31
* Fix a crasher trying to fold each element in a comparison between two vectorsNick Lewycky2010-01-211-2/+3
* Move remaining stuff to the isInteger predicate.Benjamin Kramer2010-01-051-4/+4
* Convert a ton of simple integer type equality tests to the new predicate.Benjamin Kramer2010-01-051-2/+2
* Aggressively flip compare constant expressions where appropriate; constantEli Friedman2009-12-171-3/+5
* Previously, all operands to Constant were themselves constant.Chris Lattner2009-10-281-16/+23
* Teach vm core to more aggressively fold 'trunc' constantexprs,Chris Lattner2009-10-171-9/+160
* strength reduce a ton of type equality tests to check the typeid (ThroughChris Lattner2009-10-051-9/+10
* Peer through zext and sext to eliminate them when it is safe to do so.Nick Lewycky2009-09-201-0/+16
* Fold 'icmp eq (icmp), true' into an xor(icmp).Nick Lewycky2009-09-201-0/+14
* Correct the comment; this applies to fcmp too.Nick Lewycky2009-09-201-1/+1
* Remove tab, again.Nick Lewycky2009-09-201-1/+1
* Teach the constant folder how to not a cmpinst.Nick Lewycky2009-09-201-0/+14
* Try turning icmp(bitcast(x), bitcast(y)) into icmp(bitcast(bitcast(x)), y) inNick Lewycky2009-09-201-0/+10
* Remove tabs I added.Nick Lewycky2009-09-201-8/+8
* Clean up the usage of evaluateICmpRelation's return value.Nick Lewycky2009-09-201-37/+30
* Remove dead store by taking a guess at what Chris meant. I wasn't able toNick Lewycky2009-09-201-2/+1
* Delete dead code. sext and zext can not turn integers into pointers. Further,Nick Lewycky2009-09-201-15/+0
* Value* were never meant to be const. Removing constness from the constantNick Lewycky2009-09-201-163/+132
* Teach the constant folder how to handle a few simple i1 cases.Nick Lewycky2009-09-201-0/+31
* Fix an accidental inversion of the inbounds flag.Dan Gohman2009-09-151-3/+3
* fix PR4963: folding insertvalue would sometimes turn a packed struct intoChris Lattner2009-09-151-20/+24
* Teach lib/VMCore/ConstantFold.cpp how to set the inbounds keyword andDan Gohman2009-09-111-7/+100
* Factor out the code for checking that all indices in a getelementptr areDan Gohman2009-09-101-0/+8
* Revert 80959. It isn't sufficient to solve the full problem. And itDan Gohman2009-09-031-1/+3
* Remove the API for creating ConstantExprs with the nsw, nuw, inbounds,Dan Gohman2009-09-031-3/+1
* Cleanup whitespace and indentation.Dan Gohman2009-08-291-29/+28
* Push LLVMContexts through the IntegerType APIs.Owen Anderson2009-08-131-46/+46
* Simplify this code, and use an in-bounds GEP.Dan Gohman2009-08-121-5/+7