Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Rename forgetLoopBackedgeTakenCount to forgetLoop, because it | Dan Gohman | 2009-10-31 | 4 | -11/+11 |
| | | | | | | clears out more information than just the stored backedge taken count. llvm-svn: 85664 | ||||
* | Replace LoopUnrollPass.cpp's custom code-size estimation code using | Dan Gohman | 2009-10-31 | 1 | -30/+5 |
| | | | | | | the new common CodeMetrics code. llvm-svn: 85663 | ||||
* | Simplify this code. | Dan Gohman | 2009-10-31 | 1 | -2/+2 |
| | | | | llvm-svn: 85662 | ||||
* | Remove an unnecessary #include. | Dan Gohman | 2009-10-31 | 1 | -1/+0 |
| | | | | llvm-svn: 85661 | ||||
* | Update CMakeLists for recent renames. | Dan Gohman | 2009-10-31 | 2 | -2/+2 |
| | | | | llvm-svn: 85660 | ||||
* | Rename UnrollLoop.cpp to LoopUnroll.cpp, and LoopUnroll.cpp to | Dan Gohman | 2009-10-31 | 2 | -0/+0 |
| | | | | | | | LoopUnrollPass.cpp, for consistency with other passes which are similarly split. llvm-svn: 85659 | ||||
* | Remove CodeGenLICM. It's largely obsoleted by MachineLICM's new ability | Dan Gohman | 2009-10-31 | 3 | -119/+1 |
| | | | | | | to unfold loop-invariant loads. llvm-svn: 85657 | ||||
* | Make ScalarEvolutionAliasAnalysis slightly more aggressive, by making an | Dan Gohman | 2009-10-31 | 1 | -13/+10 |
| | | | | | | underlying alias call even for non-identified-object values. llvm-svn: 85656 | ||||
* | Reapply r85634, with the bug fixed. | Dan Gohman | 2009-10-31 | 1 | -15/+17 |
| | | | | llvm-svn: 85655 | ||||
* | When discarding SrcValue information, discard all of it so that code | Dan Gohman | 2009-10-31 | 1 | -7/+5 |
| | | | | | | that uses this information knows to behave conservatively. llvm-svn: 85654 | ||||
* | Fix 80-column violation. | Dan Gohman | 2009-10-31 | 1 | -1/+2 |
| | | | | llvm-svn: 85653 | ||||
* | Fix warning with gcc-4.0 and signed/unsigned. | Eric Christopher | 2009-10-31 | 1 | -1/+1 |
| | | | | llvm-svn: 85648 | ||||
* | It's safe to remat t2LDRpci; Add PseudoSourceValue to load / store's to ↵ | Evan Cheng | 2009-10-31 | 2 | -15/+31 |
| | | | | | | enable more machine licm. More changes coming. llvm-svn: 85643 | ||||
* | Revert 85634. It's breaking consumer-typeset (and others). | Evan Cheng | 2009-10-31 | 1 | -17/+15 |
| | | | | llvm-svn: 85641 | ||||
* | Add assertion checks here to turn silent miscompiles into aborts. | Dan Gohman | 2009-10-30 | 1 | -4/+8 |
| | | | | llvm-svn: 85639 | ||||
* | Don't mark registers dead here when processing nodes with MVT::Flag | Dan Gohman | 2009-10-30 | 1 | -1/+5 |
| | | | | | | | results. This works around a problem affecting targets which rely on MVT::Flag to handle physical register defs. llvm-svn: 85638 | ||||
* | Add a comment about a missed opportunity. | Dan Gohman | 2009-10-30 | 1 | -0/+5 |
| | | | | llvm-svn: 85635 | ||||
* | Optimize around the fact that pred_iterator is slow: instead of sorting | Dan Gohman | 2009-10-30 | 1 | -15/+17 |
| | | | | | | | PHI operands by the predecessor order, sort them by the order used by the first PHI in the block. This is still suffucient to expose duplicates. llvm-svn: 85634 | ||||
* | Updates to the ARM target assembler for llvm-mc per review comments from | Kevin Enderby | 2009-10-30 | 1 | -135/+134 |
| | | | | | | | | | | | | | | | | | | Daniel Dunbar. - Reordered the fields in the ARMOperand Mem struct to make the struct smaller. Making bool's into 1 bit fields and put the MCExpr* fields adjacent to each other. - Fixed a number of places in ARMAsmParser.cpp so they have doxygen comments. - Change the name of ARMAsmParser::ParseRegister() to MaybeParseRegister and added the bool ParseWriteBack parameter. - Changed ARMAsmParser::ParseMemory() to call MaybeParseRegister(). - Added ARMAsmParser::ParseMemoryOffsetReg to factor out parsing the offset of a memory operand. And use it for both parsing both preindexed and post indexing addressing forms in ARMAsmParser::ParseMemory. - Changed the first argument to ParseShift() to a reference. - Changed ParseShift() to check for Rrx first and return to reduce nesting. llvm-svn: 85632 | ||||
* | If string field is empty then return NULL. | Devang Patel | 2009-10-30 | 1 | -1/+4 |
| | | | | llvm-svn: 85630 | ||||
* | if basic blocks are destroyed while there are *just* BlockAddress' hanging | Chris Lattner | 2009-10-30 | 1 | -0/+18 |
| | | | | | | | around, then zap them. This is analogous to dangling constantexprs hanging off functions. llvm-svn: 85627 | ||||
* | Teach SimplifyCFG how to eliminate duplicate PHI nodes within a block. | Dan Gohman | 2009-10-30 | 1 | -0/+61 |
| | | | | | | | This reduces codesize on a variety of codes by 1-2% on x86-64. It also helps clean up after SSAUpdater. llvm-svn: 85626 | ||||
* | make hasAddressTaken() constant time by storing a refcount in BB's subclass ↵ | Chris Lattner | 2009-10-30 | 2 | -13/+7 |
| | | | | | | data. llvm-svn: 85625 | ||||
* | Add a note about Robert Muth's alternate jump table implementation. | Bob Wilson | 2009-10-30 | 1 | -0/+9 |
| | | | | llvm-svn: 85624 | ||||
* | Sort the incoming values in PHI nodes to match the predecessor order. | Dan Gohman | 2009-10-30 | 1 | -0/+19 |
| | | | | | | | This helps expose duplicate PHIs, which will make it easier for them to be eliminated. llvm-svn: 85623 | ||||
* | Fix MachineLICM to use the correct virtual register class when | Dan Gohman | 2009-10-30 | 3 | -5/+13 |
| | | | | | | | | | | unfolding loads for hoisting. getOpcodeAfterMemoryUnfold returns the opcode of the original operation without the load, not the load itself, MachineLICM needs to know the operand index in order to get the correct register class. Extend getOpcodeAfterMemoryUnfold to return this information. llvm-svn: 85622 | ||||
* | it isn't valid to take the address of the entry block. | Chris Lattner | 2009-10-30 | 1 | -0/+2 |
| | | | | llvm-svn: 85621 | ||||
* | If a type is derived from a derived type then calculate size appropriately. | Devang Patel | 2009-10-30 | 1 | -3/+3 |
| | | | | llvm-svn: 85619 | ||||
* | Fix a comment. | Bob Wilson | 2009-10-30 | 1 | -1/+1 |
| | | | | llvm-svn: 85610 | ||||
* | Add option to createGVNPass to disable PRE. | Evan Cheng | 2009-10-30 | 1 | -2/+3 |
| | | | | llvm-svn: 85609 | ||||
* | Stop the iterator in ValueLiveAt from potentially running off the end of the ↵ | Lang Hames | 2009-10-30 | 2 | -4/+7 |
| | | | | | | interval. llvm-svn: 85599 | ||||
* | This fixes functions like | Rafael Espindola | 2009-10-30 | 1 | -2/+1 |
| | | | | | | | | | | | void f (int a1, int a2, int a3, int a4, int a5,...) In ARMTargetLowering::LowerFormalArguments if the function has 4 or more regular arguments we used to set VarArgsFrameIndex using an offset of 0, which is only correct if the function has exactly 4 regular arguments. llvm-svn: 85590 | ||||
* | Add ARM codegen for indirect branches. | Bob Wilson | 2009-10-30 | 6 | -6/+23 |
| | | | | | | clang/test/CodeGen/indirect-goto.c runs! (unoptimized) llvm-svn: 85577 | ||||
* | Most stack straces don't need 3 digits worth of levels. | Dan Gohman | 2009-10-30 | 1 | -1/+1 |
| | | | | llvm-svn: 85575 | ||||
* | Don't delete blocks which have their address taken. | Dan Gohman | 2009-10-30 | 1 | -2/+3 |
| | | | | llvm-svn: 85572 | ||||
* | Mention if a block has its address taken in debug output. | Dan Gohman | 2009-10-30 | 1 | -0/+1 |
| | | | | llvm-svn: 85571 | ||||
* | Simplify this code and avoid an extra space character in the output. | Dan Gohman | 2009-10-30 | 1 | -2/+1 |
| | | | | llvm-svn: 85568 | ||||
* | Add support for BlockAddress static initializers. | Dan Gohman | 2009-10-30 | 1 | -0/+2 |
| | | | | llvm-svn: 85562 | ||||
* | Add a FIXME comment. | Dan Gohman | 2009-10-30 | 1 | -0/+2 |
| | | | | llvm-svn: 85559 | ||||
* | Add some comments. | Dan Gohman | 2009-10-30 | 1 | -0/+8 |
| | | | | llvm-svn: 85558 | ||||
* | Initial x86 support for BlockAddresses. | Dan Gohman | 2009-10-30 | 5 | -0/+40 |
| | | | | llvm-svn: 85557 | ||||
* | Initial target-independent CodeGen support for BlockAddresses. | Dan Gohman | 2009-10-30 | 7 | -3/+83 |
| | | | | llvm-svn: 85556 | ||||
* | Dial back the realignment a bit. | Jim Grosbach | 2009-10-30 | 1 | -9/+3 |
| | | | | llvm-svn: 85546 | ||||
* | Between scheduling regions, correctly maintain anti-dep breaking state so ↵ | David Goodwin | 2009-10-29 | 1 | -5/+7 |
| | | | | | | that we don't incorrectly rename registers that span these regions. llvm-svn: 85537 | ||||
* | Remove some unnecessary spaces in debug output. | Dan Gohman | 2009-10-29 | 1 | -3/+3 |
| | | | | llvm-svn: 85536 | ||||
* | Move some code from being emitted as boilerplate duplicated in every | Dan Gohman | 2009-10-29 | 1 | -0/+52 |
| | | | | | | *ISelDAGToDAG.cpp to being regular code in SelectionDAGISel.cpp. llvm-svn: 85530 | ||||
* | Fix a couple of bugs in aggressive anti-dep breaking. | David Goodwin | 2009-10-29 | 2 | -36/+62 |
| | | | | llvm-svn: 85522 | ||||
* | Refactor complicated predicate into a separate function. | Bob Wilson | 2009-10-29 | 1 | -17/+33 |
| | | | | llvm-svn: 85519 | ||||
* | First bitcase use may not lead to a dbg.declare intrinsic. Iterate uses ↵ | Devang Patel | 2009-10-29 | 1 | -3/+4 |
| | | | | | | | | until one find's dbg.declare intrinsic. Patch by Sunae Seo. llvm-svn: 85518 | ||||
* | Rename usesCustomDAGSchedInserter to usesCustomInserter, and update a | Dan Gohman | 2009-10-29 | 20 | -48/+50 |
| | | | | | | | | bunch of associated comments, because it doesn't have anything to do with DAGs or scheduling. This is another step in decoupling MachineInstr emitting from scheduling. llvm-svn: 85517 |