| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Rename new TailDuplicationPass to avoid name conflict with the old one. | Bob Wilson | 2009-11-26 | 2 | -12/+12 |
| | | | | | llvm-svn: 89968 | ||||
| * | When all defs of a vr are implicit_def, delete all of the defs. | Evan Cheng | 2009-11-26 | 1 | -2/+6 |
| | | | | | llvm-svn: 89905 | ||||
| * | Split tail duplication into a separate pass. This is needed to avoid | Bob Wilson | 2009-11-26 | 6 | -239/+310 |
| | | | | | | | | | | running tail duplication when doing branch folding for if-conversion, and we also want to be able to run tail duplication earlier to fix some reg alloc problems. Move the CanFallThrough function from BranchFolding to MachineBasicBlock so that it can be shared by TailDuplication. llvm-svn: 89904 | ||||
| * | ProcessImplicitDefs should watch out for invalidated iterator and extra ↵ | Evan Cheng | 2009-11-25 | 1 | -14/+45 |
| | | | | | | | implicit operands on copies. llvm-svn: 89880 | ||||
| * | Avoid some possibly unsafe uses of StringRef::data(). | Benjamin Kramer | 2009-11-25 | 1 | -3/+3 |
| | | | | | llvm-svn: 89873 | ||||
| * | Use StringRef (again) in DebugInfo interface. | Devang Patel | 2009-11-25 | 2 | -44/+42 |
| | | | | | llvm-svn: 89866 | ||||
| * | Refactor target hook for tail duplication as requested by Chris. | Bob Wilson | 2009-11-24 | 1 | -3/+12 |
| | | | | | | | | | | | | | Make tail duplication of indirect branches much more aggressive (for targets that indicate that it is profitable), based on further experience with this transformation. I compiled 3 large applications with and without this more aggressive tail duplication and measured minimal changes in code size. ("size" on Darwin seems to round the text size up to the nearest page boundary, so I can only say that any code size increase was less than one 4k page.) Radar 7421267. llvm-svn: 89814 | ||||
| * | Use StringRef instead of std::string in DIEString. | Devang Patel | 2009-11-24 | 4 | -5/+5 |
| | | | | | llvm-svn: 89793 | ||||
| * | Remove DebugLabelFolder pass. It is not used by dwarf writer anymore. | Devang Patel | 2009-11-24 | 2 | -76/+0 |
| | | | | | llvm-svn: 89790 | ||||
| * | Swith to pubtypes section before emitting pub types. | Devang Patel | 2009-11-24 | 1 | -0/+3 |
| | | | | | llvm-svn: 89787 | ||||
| * | Emit pubtypes. | Devang Patel | 2009-11-24 | 2 | -23/+95 |
| | | | | | llvm-svn: 89725 | ||||
| * | <rdar://problem/6721894>. Allow multiple registers to be renamed together ↵ | David Goodwin | 2009-11-24 | 1 | -6/+0 |
| | | | | | | | (super and sub) if necessary to break an anti-dependence. llvm-svn: 89722 | ||||
| * | Remove ISD::DEBUG_LOC and ISD::DBG_LABEL, which are no longer used. | Dan Gohman | 2009-11-23 | 3 | -24/+0 |
| | | | | | | | | | Note that "hasDotLocAndDotFile"-style debug info was already broken; people wanting this functionality should implement it in the AsmPrinter/DwarfWriter code. llvm-svn: 89711 | ||||
| * | Simplify this code. | Dan Gohman | 2009-11-23 | 1 | -1/+1 |
| | | | | | llvm-svn: 89702 | ||||
| * | Print the debug info line and column in MachineInstr::print even when there's | Dan Gohman | 2009-11-23 | 1 | -2/+3 |
| | | | | | | | no filename. This situation is apparently fairly common right now. llvm-svn: 89701 | ||||
| * | Revert r89487. | Devang Patel | 2009-11-23 | 1 | -1/+1 |
| | | | | | llvm-svn: 89686 | ||||
| * | Move CopyCatchInfo into FunctionLoweringInfo.cpp too, for consistency. | Dan Gohman | 2009-11-23 | 3 | -15/+18 |
| | | | | | llvm-svn: 89683 | ||||
| * | Rename SelectionDAGLowering to SelectionDAGBuilder, and rename | Dan Gohman | 2009-11-23 | 5 | -238/+238 |
| | | | | | | | SelectionDAGBuild.cpp to SelectionDAGBuilder.cpp. llvm-svn: 89681 | ||||
| * | Move RegsForValue to an anonymous namespace, since it is only used | Dan Gohman | 2009-11-23 | 1 | -2/+2 |
| | | | | | | | in this file. llvm-svn: 89675 | ||||
| * | Move some more code out of SelectionDAGBuild.cpp and into | Dan Gohman | 2009-11-23 | 5 | -74/+76 |
| | | | | | | | FunctionLoweringInfo.cpp. llvm-svn: 89674 | ||||
| * | Update CMake file. | Ted Kremenek | 2009-11-23 | 1 | -0/+1 |
| | | | | | llvm-svn: 89671 | ||||
| * | Move the FunctionLoweringInfo class and some related utility functions out | Dan Gohman | 2009-11-23 | 5 | -310/+419 |
| | | | | | | | | of SelectionDAGBuild.h/cpp into its own files, to help separate general lowering logic from SelectionDAG-specific lowering logic. llvm-svn: 89667 | ||||
| * | Pull LLVMContext out of PromoteMemToReg. | Nick Lewycky | 2009-11-23 | 1 | -1/+1 |
| | | | | | llvm-svn: 89645 | ||||
| * | Add getFrameIndexReference() to TargetRegisterInfo, which allows targets to | Jim Grosbach | 2009-11-22 | 1 | -5/+6 |
| | | | | | | | | | | tell debug info which base register to use to reference a frame index on a per-index basis. This is useful, for example, in the presence of dynamic stack realignment when local variables are indexed via the stack pointer and stack-based arguments via the frame pointer. llvm-svn: 89620 | ||||
| * | 80-column cleanup | Jim Grosbach | 2009-11-22 | 1 | -10/+18 |
| | | | | | llvm-svn: 89612 | ||||
| * | Teach MachineBasicBlock::updateTerminator() to handle a failing ↵ | Jakob Stoklund Olesen | 2009-11-22 | 1 | -2/+8 |
| | | | | | | | | | TII->ReverseBranchCondition(Cond) call. This fixes the MallocBench/cfrac test case regression. llvm-svn: 89608 | ||||
| * | remove trailing whitespace | Jim Grosbach | 2009-11-21 | 1 | -39/+39 |
| | | | | | llvm-svn: 89567 | ||||
| * | Allow target to disable if-converting predicable instructions. e.g. NEON ↵ | Evan Cheng | 2009-11-21 | 1 | -1/+1 |
| | | | | | | | instructions under ARM mode. llvm-svn: 89541 | ||||
| * | Cosmetic changes, which were long overdue, in DwarfDebug.cpp. | Devang Patel | 2009-11-21 | 5 | -536/+539 |
| | | | | | llvm-svn: 89537 | ||||
| * | We are not using DBG_STOPPOINT anymore. | Devang Patel | 2009-11-21 | 2 | -54/+1 |
| | | | | | llvm-svn: 89536 | ||||
| * | Be more clever about calculating live variables through new basic blocks. | Jakob Stoklund Olesen | 2009-11-21 | 3 | -43/+31 |
| | | | | | | | | | | | | | When splitting a critical edge, the registers live through the edge are: - Used in a PHI instruction, or - Live out from the predecessor, and - Live in to the successor. This allows the coalescer to eliminate even more phi joins. llvm-svn: 89530 | ||||
| * | Remove dead code. | Devang Patel | 2009-11-21 | 1 | -15/+0 |
| | | | | | llvm-svn: 89522 | ||||
| * | When generating a vector the really slow way, via loads | Dale Johannesen | 2009-11-21 | 1 | -3/+9 |
| | | | | | | | | and stores, handle the case where the element size is not a valid target type correctly (PPC). llvm-svn: 89521 | ||||
| * | There is no need to use FoldingSet to unique DIEs. | Devang Patel | 2009-11-21 | 4 | -309/+58 |
| | | | | | | | DIEs are created from MDNode, which are already uniqued. And DwarfDebug already uses ValueMaps to find and use existing DIE for a given MDNode. llvm-svn: 89518 | ||||
| * | Restructure code to allow renaming of multiple-register groups for anti-dep ↵ | David Goodwin | 2009-11-20 | 1 | -44/+73 |
| | | | | | | | breaking. llvm-svn: 89511 | ||||
| * | Enable hoisting load from constant memories. | Evan Cheng | 2009-11-20 | 1 | -21/+6 |
| | | | | | llvm-svn: 89510 | ||||
| * | Target-independent support for TargetFlags on BlockAddress operands, | Dan Gohman | 2009-11-20 | 4 | -11/+20 |
| | | | | | | | and support for blockaddresses in x86-32 PIC mode. llvm-svn: 89506 | ||||
| * | Do not hold on to a map slot while new entries may be inserted into the map. | Devang Patel | 2009-11-20 | 1 | -27/+33 |
| | | | | | | | Use ValueMap, instead of std::map. llvm-svn: 89490 | ||||
| * | Cleanups. | David Greene | 2009-11-20 | 1 | -3/+6 |
| | | | | | | | Make things a little more efficient as suggested by Evan. llvm-svn: 89489 | ||||
| * | There is no need to emit source location info for DW_TAG_pointer_type. | Devang Patel | 2009-11-20 | 1 | -1/+1 |
| | | | | | llvm-svn: 89487 | ||||
| * | Add option -licm-const-load to hoist all loads from constant memory. | Evan Cheng | 2009-11-20 | 1 | -19/+56 |
| | | | | | llvm-svn: 89477 | ||||
| * | Remove some old experimental code that is no longer needed. Remove ↵ | David Goodwin | 2009-11-20 | 8 | -241/+79 |
| | | | | | | | additional, speculative scheduling pass as its cost did not translate into significant performance improvement. Minor tweaks. llvm-svn: 89471 | ||||
| * | More consistent labelling of basic blocks in debug output | Jakob Stoklund Olesen | 2009-11-20 | 1 | -1/+2 |
| | | | | | llvm-svn: 89470 | ||||
| * | Fix PR5558, which was caused by a wrong fix for PR3393 (see commit 63048), | Duncan Sands | 2009-11-20 | 2 | -35/+23 |
| | | | | | | | | | which was an expensive checks failure due to a bug in the checking. This patch in essence reverts the original fix for PR3393, and refixes it by a tweak to the way expensive checking is done. llvm-svn: 89454 | ||||
| * | Fix fast-isel to avoid selecting the return instruction if a | Dan Gohman | 2009-11-20 | 1 | -3/+15 |
| | | | | | | | tail call has been encountered. llvm-svn: 89444 | ||||
| * | Add an experimental option to run gep-splitting and no-load GVN | Dan Gohman | 2009-11-20 | 1 | -0/+11 |
| | | | | | | | just before codegen. llvm-svn: 89439 | ||||
| * | Add MachineBasicBlock::getName, and use it in place of getBasicBlock()->getName. | Jakob Stoklund Olesen | 2009-11-20 | 6 | -7/+14 |
| | | | | | | | Fix debug code that assumes getBasicBlock never returns NULL. llvm-svn: 89428 | ||||
| * | Removed references to LiveStacks from Spiller.* . They're no longer needed. | Lang Hames | 2009-11-20 | 3 | -15/+9 |
| | | | | | llvm-svn: 89422 | ||||
| * | Fix a couple of problems with maintaining liveness information for antidep ↵ | David Goodwin | 2009-11-19 | 2 | -18/+50 |
| | | | | | | | breaking. llvm-svn: 89404 | ||||
| * | Place new basic blocks immediately after their predecessor when splitting | Jakob Stoklund Olesen | 2009-11-19 | 1 | -7/+7 |
| | | | | | | | | | | critical edges in PHIElimination. This has a huge impact on regalloc performance, and we recover almost all of the 10% compile time regression that edge splitting introduced. llvm-svn: 89381 | ||||

