summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit message (Expand)AuthorAgeFilesLines
* tracking the instructions causing loads and stores provides more information ...Andrew Lenharth2005-06-291-2/+0
* Fix bug 537 test 2, which checks to make sure that we fold A+(B-A) -> B forNate Begeman2005-06-161-2/+7
* Add some simplifications for MULH[SU]. This allows us to compile this:Chris Lattner2005-05-151-0/+12
* remove special case hacks for readport/readio from the binary operatorChris Lattner2005-05-141-6/+1
* Implement fixme's by memoizing nodes.Chris Lattner2005-05-141-9/+21
* Turn this into a wrapper for a simpler version of getNode.Chris Lattner2005-05-141-8/+7
* Eliminate special purpose hacks for dynamic_stack_alloc.Chris Lattner2005-05-141-13/+1
* Use the general mechanism for creating multi-value nodes instead of usingChris Lattner2005-05-141-34/+30
* Wrap long line, actually add node to the graph.Chris Lattner2005-05-141-1/+3
* add a getNode() version that allows construction of any node type.Chris Lattner2005-05-141-9/+33
* Handle TAILCALL nodeChris Lattner2005-05-131-0/+1
* fix a bad typeoChris Lattner2005-05-121-2/+2
* rename the ADJCALLSTACKDOWN/ADJCALLSTACKUP nodes to be CALLSEQ_START/BEGIN.Chris Lattner2005-05-121-6/+6
* handle a common case generated by the uint64 -> FP code path betterChris Lattner2005-05-121-1/+17
* Make legalize a bit more efficient, and canonicalize sub X, C -> add X, -CChris Lattner2005-05-121-6/+7
* Do not memoize ADJCALLSTACKDOWN nodes, provide a method to hack on them.Chris Lattner2005-05-111-3/+24
* Print bit count nodes correctlyChris Lattner2005-05-111-0/+6
* Silence some VC++ warningsJeff Cohen2005-05-101-2/+2
* Add support for READPORT, WRITEPORT, READIO, WRITEIOChris Lattner2005-05-091-1/+10
* Fold shifts into subsequent SHL's. These shifts often arise due to addrsesChris Lattner2005-05-091-0/+28
* Don't use the load/store instruction as the source pointer, use the pointerChris Lattner2005-05-091-0/+2
* memoize all nodes, even null Value* nodes. Do not add two token chain outputsChris Lattner2005-05-091-7/+5
* Print SrcValue nodes correctlyChris Lattner2005-05-091-0/+6
* Implement count leading zeros (ctlz), count trailing zeros (cttz), and countAndrew Lenharth2005-05-031-3/+6
* Add FSQRT, FSIN, FCOS nodes, patch contributed by Morten OfstadChris Lattner2005-04-281-1/+4
* Implement Value* tracking for loads and stores in the selection DAG. This en...Andrew Lenharth2005-04-271-9/+33
* Fold (X > -1) | (Y > -1) --> (X&Y > -1)Chris Lattner2005-04-261-1/+3
* implement some more logical compares with constants, so that:Chris Lattner2005-04-251-7/+20
* Codegen x < 0 | y < 0 as (x|y) < 0. This allows us to compile this to:Chris Lattner2005-04-251-1/+4
* Convert tabs to spacesMisha Brukman2005-04-221-6/+4
* Remove trailing whitespaceMisha Brukman2005-04-211-31/+31
* Improve and elimination. On PPC, for:Chris Lattner2005-04-211-6/+26
* Fold (x & 8) != 0 and (x & 8) == 8 into (x & 8) >> 3.Chris Lattner2005-04-211-0/+22
* Fold setcc of MVT::i1 operands into logical operationsChris Lattner2005-04-181-0/+39
* Another minor simplification: handle setcc (zero_extend x), c -> setcc(x, c')Chris Lattner2005-04-181-0/+45
* Another simple xformChris Lattner2005-04-181-0/+8
* Fold:Chris Lattner2005-04-181-0/+11
* Make the AND elimination operation recursive and significantly more powerful,Chris Lattner2005-04-181-26/+57
* Add a couple missing transforms in getSetCC that were triggering assertionsNate Begeman2005-04-141-1/+8
* Disbale the broken fold of shift + sz[ext] for nowNate Begeman2005-04-131-7/+30
* fix an infinite loopChris Lattner2005-04-131-1/+1
* fix some serious miscompiles on ia64, alpha, and ppcChris Lattner2005-04-131-1/+1
* avoid work when possible, perhaps fix the problem nate and andrew are seeingChris Lattner2005-04-131-0/+1
* add back the optimization that Nate added for shl X, (zext_inreg y)Chris Lattner2005-04-131-2/+23
* Oops, remove these too.Chris Lattner2005-04-131-6/+2
* Remove all foldings of ZERO_EXTEND_INREG, moving them to work for AND nodesChris Lattner2005-04-131-41/+46
* Fold shift x, [sz]ext(y) -> shift x, yNate Begeman2005-04-121-0/+16
* Fold shift by size larger than type size to undefNate Begeman2005-04-121-11/+4
* Remove some redundant checks, add a couple of new ones. This allows us toChris Lattner2005-04-121-7/+5
* canonicalize x <u 1 -> x == 0. On this testcase:Chris Lattner2005-04-121-0/+9
OpenPOWER on IntegriCloud