| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Add a target hook to allow changing the tail duplication limit based on the | Bob Wilson | 2009-11-18 | 1 | -4/+5 | 
| | | | | | | | | | | contents of the block to be duplicated. Use this for ARM Cortex A8/9 to be more aggressive tail duplicating indirect branches, since it makes it much more likely that they will be predicted in the branch target buffer. Testcase coming soon. llvm-svn: 89187 | ||||
| * | Fix inverted test and add testcase from failing self-host. | Jakob Stoklund Olesen | 2009-11-18 | 1 | -9/+7 | 
| | | | | | llvm-svn: 89167 | ||||
| * | Disable -split-phi-edges to unbreak the buildbots | Jakob Stoklund Olesen | 2009-11-17 | 1 | -1/+1 | 
| | | | | | llvm-svn: 89142 | ||||
| * | Never call UpdateTerminator() when AnalyzeBranch would fail. | Jakob Stoklund Olesen | 2009-11-17 | 1 | -1/+13 | 
| | | | | | llvm-svn: 89139 | ||||
| * | Add a WriteAsOperand for MachineBasicBlock so MachineLoopInfo dump looks sane. | Evan Cheng | 2009-11-17 | 1 | -0/+5 | 
| | | | | | llvm-svn: 89130 | ||||
| * | Fix comment. | Evan Cheng | 2009-11-17 | 1 | -3/+3 | 
| | | | | | llvm-svn: 89129 | ||||
| * | Enable -split-phi-edges by default, except when -regalloc=local. | Jakob Stoklund Olesen | 2009-11-17 | 1 | -3/+15 | 
| | | | | | | | | The local register allocator doesn't like it when LiveVariables is run. We should also disable edge splitting under -O0, but that has to wait a bit. llvm-svn: 89125 | ||||
| * | Remove a special case for tail merging that seems to be both broken and | Bob Wilson | 2009-11-17 | 1 | -33/+0 | 
| | | | | | | | | | | | | unnecessary. It is broken because the "isIdenticalTo" check should be negated. If that is fixed, this code causes the CodeGen/X86/tail-opts.ll test to fail, in the dont_merge_oddly function. And, I confirmed that the regression is real -- the generated code is worse. As far as I can tell, that tail-opts.ll test is checking for what this code is supposed to handle and we're doing the right thing anyway. llvm-svn: 89121 | ||||
| * | Set MadeChange instead of MadeChangeThisIteration. | Dan Gohman | 2009-11-17 | 1 | -1/+1 | 
| | | | | | llvm-svn: 89114 | ||||
| * | Update a comment, now that tail duplication happens after other branch | Bob Wilson | 2009-11-17 | 1 | -2/+2 | 
| | | | | | | | folding optimizations. llvm-svn: 89109 | ||||
| * | Perform tail duplication only once, after tail merging is complete. | Bob Wilson | 2009-11-17 | 2 | -33/+68 | 
| | | | | | | | | It was too difficult to keep the heuristics for merging and duplication consistent. llvm-svn: 89105 | ||||
| * | Revert 89021. It's miscompiling llvm-gcc driver driver at -O0. | Evan Cheng | 2009-11-17 | 1 | -1/+1 | 
| | | | | | llvm-svn: 89082 | ||||
| * | Remove VISIBILITY_HIDDEN from the classes in this directory. Fixes bug 5507. | Nick Lewycky | 2009-11-17 | 5 | -19/+18 | 
| | | | | | llvm-svn: 89075 | ||||
| * | Revert r88939. | Nick Lewycky | 2009-11-17 | 1 | -2/+2 | 
| | | | | | llvm-svn: 89066 | ||||
| * | Refactor the code that creates the "dot-label" difference. This may be used in | Bill Wendling | 2009-11-17 | 2 | -18/+29 | 
| | | | | | | | more than one place. No intended functionality change. llvm-svn: 89024 | ||||
| * | Enable -split-phi-edges by default | Jakob Stoklund Olesen | 2009-11-17 | 1 | -1/+1 | 
| | | | | | llvm-svn: 89021 | ||||
| * | Remove the optimizations that convert BRCOND and BR_CC into | Dan Gohman | 2009-11-17 | 1 | -17/+12 | 
| | | | | | | | | | | | unconditional branches or fallthroghes. Instcombine/SimplifyCFG should be simplifying branches with known conditions. This fixes some problems caused by these transformations not updating the MachineBasicBlock CFG. llvm-svn: 89017 | ||||
| * | Initialize the new AsmPrinterFlags field to 0, fixing uses of | Dan Gohman | 2009-11-16 | 1 | -6/+8 | 
| | | | | | | | uninitialized memory. llvm-svn: 88985 | ||||
| * | Revert r88939. | Devang Patel | 2009-11-16 | 1 | -2/+2 | 
| | | | | | llvm-svn: 88973 | ||||
| * | Sink a #include <map> to where it's actually needed. | Dan Gohman | 2009-11-16 | 1 | -0/+1 | 
| | | | | | llvm-svn: 88956 | ||||
| * | Fix a typo in a comment. | Dan Gohman | 2009-11-16 | 2 | -2/+2 | 
| | | | | | llvm-svn: 88953 | ||||
| * | Fix a comment. | Bob Wilson | 2009-11-16 | 1 | -1/+1 | 
| | | | | | llvm-svn: 88940 | ||||
| * | Add VISIBILITY_HIDDEN marker. | Devang Patel | 2009-11-16 | 1 | -2/+2 | 
| | | | | | llvm-svn: 88939 | ||||
| * | Fix some comments. | Bob Wilson | 2009-11-16 | 1 | -5/+4 | 
| | | | | | llvm-svn: 88932 | ||||
| * | Whitespace: be consistent with pointer syntax. | Bob Wilson | 2009-11-16 | 1 | -6/+6 | 
| | | | | | llvm-svn: 88929 | ||||
| * | Clean up whitespace. | Bob Wilson | 2009-11-16 | 1 | -6/+6 | 
| | | | | | llvm-svn: 88927 | ||||
| * | Support spill comments. | David Greene | 2009-11-16 | 1 | -0/+52 | 
| | | | | | | | | | Have the asm printer emit a comment if an instruction is a spill or reload and have the spiller mark copies it introdues so the asm printer can also annotate those. llvm-svn: 88911 | ||||
| * | Check if subreg index is zero. | Evan Cheng | 2009-11-16 | 1 | -1/+3 | 
| | | | | | llvm-svn: 88899 | ||||
| * | For some targets, a copy can use a register multiple times, e.g. ppc. | Evan Cheng | 2009-11-16 | 1 | -0/+5 | 
| | | | | | llvm-svn: 88895 | ||||
| * | Fixes the bug exposed by Anton's test case in PR 5495: | Lang Hames | 2009-11-16 | 1 | -0/+4 | 
| | | | | | | | | Make sure when ProcessImplicitDefs removes a copy which kills its source reg that it removes the copy from said reg's Kills list. llvm-svn: 88881 | ||||
| * | Fix for the original bug in PR5495 - Look at uses as well as defs when ↵ | Lang Hames | 2009-11-16 | 1 | -5/+5 | 
| | | | | | | | | | determining the PHI-copy insert point. - Patch by Andrew Canis! llvm-svn: 88880 | ||||
| * | Added an assert to the PBQP allocator to catch infinite cost solutions which ↵ | Lang Hames | 2009-11-15 | 1 | -0/+5 | 
| | | | | | | | might otherwise lead to miscompilations. llvm-svn: 88829 | ||||
| * | Do not merge jump tables this early. Branch folding will do any necessary | Jim Grosbach | 2009-11-14 | 1 | -4/+0 | 
| | | | | | | | | merges, and until then, it's useful to keep the tables separate for ease of manipulation. llvm-svn: 88806 | ||||
| * | Add function to replace a destination MBB in a single jump table | Jim Grosbach | 2009-11-14 | 1 | -8/+19 | 
| | | | | | llvm-svn: 88804 | ||||
| * | revert 88761 as it fails builds. | Sanjiv Gupta | 2009-11-14 | 1 | -1/+1 | 
| | | | | | llvm-svn: 88762 | ||||
| * | Fix debug info crashes for PIC16. | Sanjiv Gupta | 2009-11-14 | 1 | -1/+1 | 
| | | | | | llvm-svn: 88761 | ||||
| * | Added getSubRegIndex(A,B) that returns subreg index of A to B. Use it to ↵ | Evan Cheng | 2009-11-14 | 1 | -5/+2 | 
| | | | | | | | replace broken code in VirtRegRewriter. llvm-svn: 88753 | ||||
| * | - Change TargetInstrInfo::reMaterialize to pass in TargetRegisterInfo. | Evan Cheng | 2009-11-14 | 5 | -8/+13 | 
| | | | | | | | | | - If destination is a physical register and it has a subreg index, use the sub-register instead. This fixes PR5423. llvm-svn: 88745 | ||||
| * | Fix PR5412: Fix an inverted check and another missing sub-register check. | Evan Cheng | 2009-11-14 | 1 | -9/+30 | 
| | | | | | llvm-svn: 88738 | ||||
| * | Enable the tail call optimization when the caller returns undef. | Dan Gohman | 2009-11-14 | 1 | -0/+4 | 
| | | | | | llvm-svn: 88737 | ||||
| * | Fix bug in -split-phi-edges. | Jakob Stoklund Olesen | 2009-11-14 | 1 | -3/+14 | 
| | | | | | | | | | | | When splitting an edge after a machine basic block with fall-through, we forgot to insert a jump instruction. Fix this by calling updateTerminator() on the fall-through block when relevant. Also be more precise in PHIElimination::isLiveIn. llvm-svn: 88728 | ||||
| * | Update MachineDominator information | Jakob Stoklund Olesen | 2009-11-14 | 1 | -6/+9 | 
| | | | | | llvm-svn: 88727 | ||||
| * | Added an API to the SlotIndexes pass to allow new instructions to be ↵ | Lang Hames | 2009-11-14 | 3 | -89/+31 | 
| | | | | | | | | | inserted into the numbering. PreAllocSplitting is now using this API to insert code. llvm-svn: 88725 | ||||
| * | Fix PR5411. Bug in UpdateKills. A reg def partially define its super-registers. | Evan Cheng | 2009-11-13 | 1 | -0/+4 | 
| | | | | | llvm-svn: 88719 | ||||
| * | Fix PHIElimination optimization that uses MBB->getBasicBlock. | Jakob Stoklund Olesen | 2009-11-13 | 2 | -34/+23 | 
| | | | | | | | | | | | | The BasicBlock associated with a MachineBasicBlock does not necessarily correspond to the code in the MBB. Don't insert a new IR BasicBlock when splitting critical edges. We are not supposed to modify the IR during codegen, and we should be able to do just fine with a NULL BB. llvm-svn: 88707 | ||||
| * | Add MachineFunction::verify() to call the machine code verifier directly. | Jakob Stoklund Olesen | 2009-11-13 | 1 | -0/+4 | 
| | | | | | llvm-svn: 88706 | ||||
| * | Fix polarity of a CFG check in machine verifier. | Jakob Stoklund Olesen | 2009-11-13 | 1 | -5/+14 | 
| | | | | | llvm-svn: 88704 | ||||
| * | Use .data() instead of .c_str() when nul-termination is not needed. | Dan Gohman | 2009-11-13 | 1 | -1/+1 | 
| | | | | | llvm-svn: 88703 | ||||
| * | Move DebugInfo checks into EmitComments and remove them from | David Greene | 2009-11-13 | 1 | -15/+23 | 
| | | | | | | | | | target-specific AsmPrinters. Not all comments need DebugInfo. Re-enable the line numbers comment test. llvm-svn: 88697 | ||||
| * | When optimizing for size, don't tail-merge unless it's likely to be a | Dan Gohman | 2009-11-13 | 1 | -9/+12 | 
| | | | | | | | | | | | code-size win, and not when it's only likely to be code-size neutral, such as when only a single instruction would be eliminated and a new branch would be required. This fixes rdar://7392894. llvm-svn: 88692 | ||||

