| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fold extract_element(cst) to cst | Chris Lattner | 2006-09-19 | 1 | -2/+8 | 
| | | | | | llvm-svn: 30478 | ||||
| * | Minor speedup for legalize by avoiding some malloc traffic | Chris Lattner | 2006-09-19 | 1 | -0/+9 | 
| | | | | | llvm-svn: 30477 | ||||
| * | Added support for machine specific constantpool values. These are useful for | Evan Cheng | 2006-09-12 | 1 | -1/+29 | 
| | | | | | | | representing expressions that can only be resolved at link time, etc. llvm-svn: 30278 | ||||
| * | Implement the fpowi now by lowering to a libcall | Chris Lattner | 2006-09-09 | 1 | -0/+1 | 
| | | | | | llvm-svn: 30225 | ||||
| * | Move isCommutativeBinOp from SelectionDAG.cpp and DAGCombiner.cpp out. Make ↵ | Evan Cheng | 2006-08-29 | 1 | -15/+0 | 
| | | | | | | | it a static method of SelectionDAG. llvm-svn: 29951 | ||||
| * | Eliminate SelectNodeTo() and getTargetNode() variants which take more than | Evan Cheng | 2006-08-27 | 1 | -254/+12 | 
| | | | | | | | | 3 SDOperand operands. They are replaced by versions which take an array of SDOperand and the number of operands. llvm-svn: 29905 | ||||
| * | SelectNodeTo now returns a SDNode*. | Evan Cheng | 2006-08-26 | 1 | -74/+74 | 
| | | | | | llvm-svn: 29901 | ||||
| * | minor changes. | Chris Lattner | 2006-08-16 | 1 | -18/+19 | 
| | | | | | llvm-svn: 29740 | ||||
| * | Use the appropriate typedef | Chris Lattner | 2006-08-16 | 1 | -2/+1 | 
| | | | | | llvm-svn: 29730 | ||||
| * | Start using SDVTList more consistently | Chris Lattner | 2006-08-15 | 1 | -66/+66 | 
| | | | | | llvm-svn: 29711 | ||||
| * | add a new SDVTList type and new SelectionDAG::getVTList methods to streamline | Chris Lattner | 2006-08-15 | 1 | -68/+79 | 
| | | | | | | | the creation of canonical VTLists. llvm-svn: 29709 | ||||
| * | Add a new getNode() method that takes a pointer to an already-intern'd list | Chris Lattner | 2006-08-14 | 1 | -78/+70 | 
| | | | | | | | | of value-type nodes. This avoids having to do mallocs for std::vectors of valuetypes when a node returns more than one type. llvm-svn: 29685 | ||||
| * | remove SelectionDAG::InsertISelMapEntry, it is dead | Chris Lattner | 2006-08-14 | 1 | -9/+0 | 
| | | | | | llvm-svn: 29677 | ||||
| * | Add code to resize the CSEMap hash table. This doesn't speedup codegen of | Chris Lattner | 2006-08-14 | 1 | -0/+1 | 
| | | | | | | | kimwitu, but seems like a good idea from a "avoid performance cliffs" standpoint :) llvm-svn: 29675 | ||||
| * | Add the actual constant to the hash for ConstantPool nodes. Thanks to | Chris Lattner | 2006-08-14 | 1 | -0/+1 | 
| | | | | | | | Rafael Espindola for pointing this out. llvm-svn: 29669 | ||||
| * | Remove 8 more std::map's. | Chris Lattner | 2006-08-11 | 1 | -92/+40 | 
| | | | | | llvm-svn: 29631 | ||||
| * | Move the BBNodes, GlobalValues, TargetGlobalValues, Constants, TargetConstants, | Chris Lattner | 2006-08-11 | 1 | -88/+57 | 
| | | | | | | | RegNodes, and ValueNodes maps into the CSEMap. llvm-svn: 29626 | ||||
| * | eliminate the NullaryOps map, use CSEMap instead. | Chris Lattner | 2006-08-11 | 1 | -22/+18 | 
| | | | | | llvm-svn: 29621 | ||||
| * | Change one ReplaceAllUsesWith method to take an array of operands to replace | Chris Lattner | 2006-08-11 | 1 | -4/+2 | 
| | | | | | | | instead of a vector of operands. llvm-svn: 29616 | ||||
| * | Start eliminating temporary vectors used to create DAG nodes. Instead, pass | Chris Lattner | 2006-08-08 | 1 | -128/+35 | 
| | | | | | | | | | | | | | | | | | | | | in the start of an array and a count of operands where applicable. In many cases, the number of operands is known, so this static array can be allocated on the stack, avoiding the heap. In many other cases, a SmallVector can be used, which has the same benefit in the common cases. I updated a lot of code calling getNode that takes a vector, but ran out of time. The rest of the code should be updated, and these methods should be removed. We should also do the same thing to eliminate the methods that take a vector of MVT::ValueTypes. It would be extra nice to convert the dagiselemitter to avoid creating vectors for operands when calling getTargetNode. llvm-svn: 29566 | ||||
| * | Eliminate some malloc traffic by allocating vectors on the stack. Change some | Chris Lattner | 2006-08-08 | 1 | -61/+44 | 
| | | | | | | | | | | method that took std::vector<SDOperand> to take a pointer to a first operand and #operands. This speeds up isel on kc++ by about 3%. llvm-svn: 29561 | ||||
| * | Revamp the "CSEMap" datastructure used in the SelectionDAG class. This | Chris Lattner | 2006-08-07 | 1 | -312/+278 | 
| | | | | | | | | | | | | eliminates a bunch of std::map's in the SelectionDAG, replacing them with a home-grown hashtable. This is still a work in progress: not all the maps have been moved over and the hashtable never resizes. That said, this still speeds up llc 20% on kimwitu++ with -fast -regalloc=local using a release build. llvm-svn: 29550 | ||||
| * | Clear TopOrder before assigning topological order. Some clean ups. | Evan Cheng | 2006-08-07 | 1 | -1/+3 | 
| | | | | | llvm-svn: 29546 | ||||
| * | Make SelectionDAG::RemoveDeadNodes iterative instead of recursive, which | Chris Lattner | 2006-08-04 | 1 | -50/+32 | 
| | | | | | | | also make it simpler. llvm-svn: 29524 | ||||
| * | - Change AssignTopologicalOrder to return vector of SDNode* by reference. | Evan Cheng | 2006-08-02 | 1 | -16/+22 | 
| | | | | | | | - Tweak implementation to avoid using std::map. llvm-svn: 29479 | ||||
| * | Added AssignTopologicalOrder() to assign each node an unique id based on ↵ | Evan Cheng | 2006-08-01 | 1 | -2/+38 | 
| | | | | | | | their topological order. llvm-svn: 29431 | ||||
| * | Remove InFlightSet hack. No longer needed. | Evan Cheng | 2006-07-28 | 1 | -14/+0 | 
| | | | | | llvm-svn: 29373 | ||||
| * | AssignNodeIds should return unsigned. | Evan Cheng | 2006-07-27 | 1 | -2/+2 | 
| | | | | | llvm-svn: 29343 | ||||
| * | AssignNodeIds assign each node in the DAG an unique id. | Evan Cheng | 2006-07-27 | 1 | -0/+12 | 
| | | | | | llvm-svn: 29337 | ||||
| * | Add an out-of-line virtual method for the sdnode class to give it a home. | Chris Lattner | 2006-07-19 | 1 | -0/+4 | 
| | | | | | llvm-svn: 29192 | ||||
| * | Ugly hack! Add helper functions InsertInFlightSetEntry and | Evan Cheng | 2006-06-29 | 1 | -0/+14 | 
| | | | | | | | | RemoveInFlightSetEntry. They are used in place of direct set operators to reduce instruction selection function stack size. llvm-svn: 28987 | ||||
| * | Fix CodeGen/Generic/2006-06-28-SimplifySetCCCrash.ll | Chris Lattner | 2006-06-28 | 1 | -6/+4 | 
| | | | | | llvm-svn: 28965 | ||||
| * | Add a new ISD::CALL node, make the default impl of TargetLowering::LowerCallTo | Chris Lattner | 2006-05-16 | 1 | -0/+1 | 
| | | | | | | | produce it. llvm-svn: 28338 | ||||
| * | remove dead vars | Chris Lattner | 2006-05-12 | 1 | -2/+1 | 
| | | | | | llvm-svn: 28254 | ||||
| * | Compile: | Chris Lattner | 2006-05-12 | 1 | -1/+6 | 
| | | | | | | | | | | | %tmp152 = setgt uint %tmp144, %tmp149 ; <bool> [#uses=1] %tmp159 = setlt uint %tmp144, %tmp149 ; <bool> [#uses=1] %bothcond2 = or bool %tmp152, %tmp159 ; <bool> [#uses=1] To setne, not setune, which causes an assertion fault. llvm-svn: 28244 | ||||
| * | Fold shifts with undef operands. | Chris Lattner | 2006-05-08 | 1 | -0/+7 | 
| | | | | | llvm-svn: 28167 | ||||
| * | constant fold sign_extend_inreg | Chris Lattner | 2006-05-06 | 1 | -1/+9 | 
| | | | | | llvm-svn: 28151 | ||||
| * | Fix Regression/CodeGen/Generic/2006-04-26-SetCCAnd.ll and | Chris Lattner | 2006-04-27 | 1 | -1/+29 | 
| | | | | | | | PR748. llvm-svn: 27987 | ||||
| * | JumpTable support! What this represents is working asm and jit support for | Nate Begeman | 2006-04-22 | 1 | -0/+26 | 
| | | | | | | | | | x86 and ppc for 100% dense switch statements when relocations are non-PIC. This support will be extended and enhanced in the coming days to support PIC, and less dense forms of jump tables. llvm-svn: 27947 | ||||
| * | Implement folding of a bunch of binops with undef | Chris Lattner | 2006-04-20 | 1 | -0/+46 | 
| | | | | | llvm-svn: 27863 | ||||
| * | Make these predicates return true for bit_convert(buildvector)'s as well as | Chris Lattner | 2006-04-15 | 1 | -0/+8 | 
| | | | | | | | buildvectors. llvm-svn: 27723 | ||||
| * | Implement support for the formal_arguments node. To get this, targets ↵ | Chris Lattner | 2006-04-12 | 1 | -0/+1 | 
| | | | | | | | shouldcustom legalize it and remove their XXXTargetLowering::LowerArguments overload llvm-svn: 27604 | ||||
| * | Don't memoize vloads in the load map! Don't memoize them anywhere here, let | Chris Lattner | 2006-04-12 | 1 | -2/+0 | 
| | | | | | | | getNode do it. This fixes CodeGen/Generic/2006-04-11-vecload.ll llvm-svn: 27602 | ||||
| * | Add code generator support for VSELECT | Chris Lattner | 2006-04-08 | 1 | -8/+9 | 
| | | | | | llvm-svn: 27542 | ||||
| * | Constant fold bitconvert(undef) | Chris Lattner | 2006-04-04 | 1 | -0/+2 | 
| | | | | | llvm-svn: 27391 | ||||
| * | These entries already exist | Chris Lattner | 2006-04-02 | 1 | -4/+0 | 
| | | | | | llvm-svn: 27340 | ||||
| * | Add some missing node names | Chris Lattner | 2006-04-02 | 1 | -0/+9 | 
| | | | | | llvm-svn: 27339 | ||||
| * | Significantly improve handling of vectors that are live across basic blocks, | Chris Lattner | 2006-03-31 | 1 | -2/+1 | 
| | | | | | | | | handling cases where the vector elements need promotion, expansion, and when the vector type itself needs to be decimated. llvm-svn: 27278 | ||||
| * | new node | Chris Lattner | 2006-03-28 | 1 | -0/+1 | 
| | | | | | llvm-svn: 27231 | ||||
| * | Add an assertion | Chris Lattner | 2006-03-28 | 1 | -0/+2 | 
| | | | | | llvm-svn: 27228 | ||||

