aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-10-31add a comment.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85671 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Revert r85667. LoopUnroll currently can't call utility functions whichDan Gohman
auto-update the DominatorTree because it doesn't keep the DominatorTree current while it works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85670 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Remove redundant code.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85668 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Merge the enhancements from LoopUnroll's FoldBlockIntoPredecessor intoDan Gohman
MergeBlockIntoPredecessor. This makes SimplifyCFG slightly more aggressive, and makes it unnecessary for LoopUnroll to have its own copy of this code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85667 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Rename forgetLoopBackedgeTakenCount to forgetLoop, because itDan Gohman
clears out more information than just the stored backedge taken count. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85664 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Replace LoopUnrollPass.cpp's custom code-size estimation code usingDan Gohman
the new common CodeMetrics code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85663 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Simplify this code.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85662 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Remove an unnecessary #include.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85661 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Update CMakeLists for recent renames.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85660 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Rename UnrollLoop.cpp to LoopUnroll.cpp, and LoopUnroll.cpp toDan Gohman
LoopUnrollPass.cpp, for consistency with other passes which are similarly split. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85659 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Remove CodeGenLICM. It's largely obsoleted by MachineLICM's new abilityDan Gohman
to unfold loop-invariant loads. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85657 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Make ScalarEvolutionAliasAnalysis slightly more aggressive, by making anDan Gohman
underlying alias call even for non-identified-object values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85656 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Reapply r85634, with the bug fixed.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85655 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31When discarding SrcValue information, discard all of it so that codeDan Gohman
that uses this information knows to behave conservatively. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85654 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Fix 80-column violation.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85653 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Fix warning with gcc-4.0 and signed/unsigned.Eric Christopher
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85648 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31It's safe to remat t2LDRpci; Add PseudoSourceValue to load / store's to ↵Evan Cheng
enable more machine licm. More changes coming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85643 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Revert 85634. It's breaking consumer-typeset (and others).Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85641 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-31Add a target triple so that this test behaves consistently across hosts.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85640 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Add assertion checks here to turn silent miscompiles into aborts.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85639 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Don't mark registers dead here when processing nodes with MVT::FlagDan Gohman
results. This works around a problem affecting targets which rely on MVT::Flag to handle physical register defs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85638 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Fix the -mattr line for this test so that it passes on hosts that lack SSSE3.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85637 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Add a testcase for the recent duplicate PHI elimination changes.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85636 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Add a comment about a missed opportunity.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85635 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Optimize around the fact that pred_iterator is slow: instead of sortingDan Gohman
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85634 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Updates to the ARM target assembler for llvm-mc per review comments fromKevin Enderby
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85632 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30If string field is empty then return NULL.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85630 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30if basic blocks are destroyed while there are *just* BlockAddress' hanging Chris Lattner
around, then zap them. This is analogous to dangling constantexprs hanging off functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85627 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Teach SimplifyCFG how to eliminate duplicate PHI nodes within a block.Dan Gohman
This reduces codesize on a variety of codes by 1-2% on x86-64. It also helps clean up after SSAUpdater. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85626 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30make hasAddressTaken() constant time by storing a refcount in BB's subclass ↵Chris Lattner
data. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85625 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Add a note about Robert Muth's alternate jump table implementation.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85624 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Sort the incoming values in PHI nodes to match the predecessor order.Dan Gohman
This helps expose duplicate PHIs, which will make it easier for them to be eliminated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85623 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Fix MachineLICM to use the correct virtual register class whenDan Gohman
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85622 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30it isn't valid to take the address of the entry block.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85621 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30If a type is derived from a derived type then calculate size appropriately.Devang Patel
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85619 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Build in ARM mode explicitly when on ARM DarwinJim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85615 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Add missing substitution for %llvmgcc_only.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85614 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Allow cross target buildJim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85611 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Fix a comment.Bob Wilson
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85610 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Add option to createGVNPass to disable PRE.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85609 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30I forgot to commit this test.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85608 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30When cross-building, the CFLAGS and CXXFLAGS are for the target, and don'tJim Grosbach
apply to the build tools. If we want to allow build tool flags input, we should have separate inputs (BUILD_CFLAGS and BUILD_CXXFLAGS, perhaps). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85607 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Remove extraneous comment lineJim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85606 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30update name check for Apple style builds to be more permissiveJim Grosbach
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85605 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Stop the iterator in ValueLiveAt from potentially running off the end of the ↵Lang Hames
interval. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85599 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30This fixes functions likeRafael Espindola
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85590 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30CMake: install .def files from source `include/llvm' directory.Oscar Fuentes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85587 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Rather than having llvm-gcc changing the meaning of OptimizeSize, just make ↵Evan Cheng
sure loop unswitch is conservative when optimization level is < 3. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85581 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Add ARM codegen for indirect branches.Bob Wilson
clang/test/CodeGen/indirect-goto.c runs! (unoptimized) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85577 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-30Most stack straces don't need 3 digits worth of levels.Dan Gohman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85575 91177308-0d34-0410-b5e6-96231b3b80d8