Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Refactor some code to expose an interface to constant fold and instruction ↵ | Chris Lattner | 2006-05-27 | 1 | -35/+49 |
| | | | | | | given it's opcode, typeand operands. llvm-svn: 28517 | ||||
* | Revert a patch that is unsafe, due to out of range array accesses in inner | Chris Lattner | 2006-05-25 | 1 | -2/+2 |
| | | | | | | array scopes possibly accessing valid memory in outer subscripts. llvm-svn: 28478 | ||||
* | Patch for a new instcombine xform, patch contributed by Nick Lewycky! | Chris Lattner | 2006-05-24 | 1 | -2/+4 |
| | | | | | | This implements Transforms/InstCombine/2006-05-10-InvalidIndexUndef.ll llvm-svn: 28450 | ||||
* | Add supprot for shufflevector | Chris Lattner | 2006-04-08 | 1 | -0/+5 |
| | | | | llvm-svn: 27513 | ||||
* | Adjust to change in Intrinsics.gen interface. | Chris Lattner | 2006-04-02 | 1 | -0/+1 |
| | | | | llvm-svn: 27344 | ||||
* | use autogenerated side-effect information | Chris Lattner | 2006-03-09 | 1 | -27/+5 |
| | | | | llvm-svn: 26673 | ||||
* | ConstantFoldLoadThroughGEPConstantExpr wasn't handling pointers to | Robert Bocchino | 2006-01-19 | 1 | -9/+22 |
| | | | | | | packed types correctly. llvm-svn: 25470 | ||||
* | Constant folding support for the insertelement operation. | Robert Bocchino | 2006-01-17 | 1 | -0/+3 |
| | | | | llvm-svn: 25407 | ||||
* | For PR411: | Reid Spencer | 2006-01-16 | 1 | -5/+16 |
| | | | | | | | | | | | | | | | | This patch is an incremental step towards supporting a flat symbol table. It de-overloads the intrinsic functions by providing type-specific intrinsics and arranging for automatically upgrading from the old overloaded name to the new non-overloaded name. Specifically: llvm.isunordered -> llvm.isunordered.f32, llvm.isunordered.f64 llvm.sqrt -> llvm.sqrt.f32, llvm.sqrt.f64 llvm.ctpop -> llvm.ctpop.i8, llvm.ctpop.i16, llvm.ctpop.i32, llvm.ctpop.i64 llvm.ctlz -> llvm.ctlz.i8, llvm.ctlz.i16, llvm.ctlz.i32, llvm.ctlz.i64 llvm.cttz -> llvm.cttz.i8, llvm.cttz.i16, llvm.cttz.i32, llvm.cttz.i64 New code should not use the overloaded intrinsic names. Warnings will be emitted if they are used. llvm-svn: 25366 | ||||
* | Add bswap intrinsics as documented in the Language Reference | Nate Begeman | 2006-01-14 | 1 | -0/+3 |
| | | | | llvm-svn: 25309 | ||||
* | it is ok to dce stacksave. | Chris Lattner | 2006-01-13 | 1 | -0/+1 |
| | | | | llvm-svn: 25295 | ||||
* | Added support for the extractelement operation. | Robert Bocchino | 2006-01-10 | 1 | -0/+2 |
| | | | | llvm-svn: 25181 | ||||
* | Fix #include order | Chris Lattner | 2005-10-27 | 1 | -1/+1 |
| | | | | llvm-svn: 24044 | ||||
* | Move some constant folding code shared by Analysis and Transform passes | John Criswell | 2005-10-27 | 1 | -142/+1 |
| | | | | | | | | into the LLVMAnalysis library. This allows LLVMTranform and LLVMTransformUtils to be archives and linked with LLVMAnalysis.a, which provides any missing definitions. llvm-svn: 24036 | ||||
* | Constant fold llvm.sqrt | Chris Lattner | 2005-09-28 | 1 | -1/+9 |
| | | | | llvm-svn: 23487 | ||||
* | Move the ConstantFoldLoadThroughGEPConstantExpr function out of the InstCombine | Chris Lattner | 2005-09-26 | 1 | -1/+45 |
| | | | | | | pass. llvm-svn: 23444 | ||||
* | Fix a fixme in CondPropagate.cpp by moving a PhiNode optimization into | Nate Begeman | 2005-08-04 | 1 | -34/+0 |
| | | | | | | | | BasicBlock's removePredecessor routine. This requires shuffling around the definition and implementation of hasContantValue from Utils.h,cpp into Instructions.h,cpp llvm-svn: 22664 | ||||
* | Eliminate all remaining tabs and trailing spaces. | Jeff Cohen | 2005-07-27 | 1 | -3/+3 |
| | | | | llvm-svn: 22523 | ||||
* | prevent DCE of vaarg intrinsics. This should take care of most regressions | Andrew Lenharth | 2005-06-19 | 1 | -2/+0 |
| | | | | llvm-svn: 22263 | ||||
* | DCE intrinsic instructions without side effects. | Chris Lattner | 2005-05-06 | 1 | -1/+20 |
| | | | | llvm-svn: 21719 | ||||
* | Remove optimizations that don't require both operands to be constant. These | Reid Spencer | 2005-04-29 | 1 | -10/+0 |
| | | | | | | are moved to simplify-libcalls pass. llvm-svn: 21614 | ||||
* | * Add constant folding for additional floating point library calls such as | Reid Spencer | 2005-04-28 | 1 | -26/+90 |
| | | | | | | | | sinh, cosh, etc. * Make the name comparisons for the fp libcalls a little more efficient by switching on the first character of the name before doing comparisons. llvm-svn: 21611 | ||||
* | Remove trailing whitespace | Misha Brukman | 2005-04-21 | 1 | -11/+11 |
| | | | | llvm-svn: 21427 | ||||
* | Enhance hasConstantValue to ignore undef values in phi nodes. This allows it | Chris Lattner | 2004-10-17 | 1 | -2/+3 |
| | | | | | | to think that PHI[4, undef] == 4. llvm-svn: 17096 | ||||
* | Changes For Bug 352 | Reid Spencer | 2004-09-01 | 1 | -1/+1 |
| | | | | | | | | 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 | ||||
* | Use new IsNAN() wrapper. | Brian Gaeke | 2004-06-23 | 1 | -15/+2 |
| | | | | llvm-svn: 14340 | ||||
* | Comment out the isnan stuff until we get a proper autoconf test for it | Chris Lattner | 2004-06-21 | 1 | -1/+7 |
| | | | | | | breaking the build on sparc is not acceptable. llvm-svn: 14277 | ||||
* | I love the smell of a freshly broken PowerPC build in the morning. | Brian Gaeke | 2004-06-17 | 1 | -0/+1 |
| | | | | llvm-svn: 14206 | ||||
* | Fix compilation problem on freebsd. Problem noted by Vladimir Merzliakov in | Chris Lattner | 2004-06-17 | 1 | -1/+1 |
| | | | | | | PR371 llvm-svn: 14203 | ||||
* | Um, did someone make a typo or something? | Brian Gaeke | 2004-06-15 | 1 | -1/+1 |
| | | | | llvm-svn: 14192 | ||||
* | Remove support for the isnan intrinsic | Chris Lattner | 2004-06-15 | 1 | -3/+0 |
| | | | | llvm-svn: 14186 | ||||
* | Quick hack to get this file compiling again on Mac OS X. The right thing to do | Brian Gaeke | 2004-06-14 | 1 | -0/+8 |
| | | | | | | | | is write an autoconf macro that checks whether __isnan or isnan actually works **using the C++ compiler after #include <cmath>**, instead of doing it the easy way with AC_CHECK_FUNCS(). llvm-svn: 14171 | ||||
* | Add constant folding capabilities to the isunordered intrinsic. | Alkis Evlogimenos | 2004-06-13 | 1 | -1/+4 |
| | | | | llvm-svn: 14168 | ||||
* | Constant fold the isnan intrinsic | Chris Lattner | 2004-06-11 | 1 | -1/+10 |
| | | | | llvm-svn: 14150 | ||||
* | Implement constant folding of fmod, which is used a lot in povray | Chris Lattner | 2004-05-27 | 1 | -2/+9 |
| | | | | llvm-svn: 13823 | ||||
* | Restructure call constant folding code a bit to make it simpler | Chris Lattner | 2004-05-27 | 1 | -39/+40 |
| | | | | | | | | Add support for acos/asin/atan. 188.ammp contains three calls to acos with constant arguments. Constant folding it allows elimination of those 3 calls and three FP divisions of the results. llvm-svn: 13821 | ||||
* | Include cerrno (gcc-3.4 fix) | Alkis Evlogimenos | 2004-04-21 | 1 | -0/+1 |
| | | | | llvm-svn: 13091 | ||||
* | Add support for evaluation of exp/log/log10/pow | Chris Lattner | 2004-04-16 | 1 | -1/+25 |
| | | | | llvm-svn: 13011 | ||||
* | Include <cmath> for compatibility with gcc 3.0.x (the system compiler on | Brian Gaeke | 2004-04-16 | 1 | -0/+1 |
| | | | | | | Debian.) llvm-svn: 12986 | ||||
* | Add a simple call constant propagation interface. | Chris Lattner | 2004-04-13 | 1 | -0/+51 |
| | | | | llvm-svn: 12919 | ||||
* | Add constant folding wrapper support for select instructions. | Chris Lattner | 2004-03-12 | 1 | -0/+4 |
| | | | | llvm-svn: 12319 | ||||
* | Clean up #includes | Chris Lattner | 2004-01-12 | 1 | -3/+1 |
| | | | | llvm-svn: 10799 | ||||
* | Remove use of ConstantExpr::getShift | Chris Lattner | 2004-01-12 | 1 | -4/+1 |
| | | | | llvm-svn: 10792 | ||||
* | Remove use of ConstantHandling | Chris Lattner | 2004-01-12 | 1 | -1/+1 |
| | | | | llvm-svn: 10789 | ||||
* | Move llvm::ConstantFoldInstruction from VMCore to here, next to ↵ | Chris Lattner | 2004-01-12 | 1 | -0/+58 |
| | | | | | | ConstantFoldTerminator llvm-svn: 10785 | ||||
* | Add new function | Chris Lattner | 2003-12-19 | 1 | -10/+41 |
| | | | | llvm-svn: 10529 | ||||
* | Put all LLVM code into the llvm namespace, as per bug 109. | Brian Gaeke | 2003-11-11 | 1 | -0/+4 |
| | | | | llvm-svn: 9903 | ||||
* | Added LLVM project notice to the top of every C++ source file. | John Criswell | 2003-10-20 | 1 | -0/+7 |
| | | | | | | Header files will be on the way. llvm-svn: 9298 | ||||
* | Implement SimplifyCFG/2003-08-17-FoldSwitch.ll:test5 | Chris Lattner | 2003-08-23 | 1 | -0/+13 |
| | | | | llvm-svn: 8093 | ||||
* | Implement folding of switch instructions. | Chris Lattner | 2003-08-17 | 1 | -3/+56 |
| | | | | | | Implements SimplifyCFG/2003-08-17-FoldSwitch.ll llvm-svn: 7923 |