aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-09-02add more condition codesRafael Espindola
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30056 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-02Improve handling of SelectInst.Nick Lewycky
Reorder operations to remove duplicated work. Fix to leave floating-point types out of the optimization. Add tests to predsimplify.ll for SwitchInst and SelectInst handling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30055 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-02improve compat with certain versions of GCC (on cygwin?)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30054 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-02add a prototypeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30051 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-02Iteration is required for some cases, even if they don't occur in crafty.Chris Lattner
Restore it, which re-fixes X86/2006-08-21-ExtraMovInst.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30050 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-02When joining two intervals where the RHS is really simple, use a light-weightChris Lattner
method for joining the live ranges instead of the fully-general one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30049 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-02new methodChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30048 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Another "cyclic DAG" test case.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30043 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Oops. Bad typo. Without the check of N1.hasOneUse() bad things can happen.Evan Cheng
Suppose the TokenFactor can reach the Op: [Load chain] ^ | [Load] ^ ^ | | / \- / | / [Op] / ^ ^ | .. | | / | [TokenFactor] | ^ | | | \ / \ / [Store] If we move the Load below the TokenFactor, we would have created a cycle in the DAG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30040 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Use a couple of multiclass patterns to factor some integer ops.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30039 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01remove a bunch of commentsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30038 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Make sure to clear CurDefmPrefix = 0, otherwise stuff after a defm won'tChris Lattner
parse right. This fixes TableGen/MultiClass.td git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30037 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Make this harderChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30036 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Fix a typo Jim pointed out, thanks!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30035 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01fix an assertion with multidefs. Def inside of multiclasses don't need toChris Lattner
be complete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30034 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Fixed formatting problem.Bill Wendling
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30033 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01document !strconcatChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30032 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Added documentation Fernando Magno Quintao Pereira wrote for the registerBill Wendling
allocator. (First draft) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30031 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Document multiclasses and defm'sChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30030 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01regenerateChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30029 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01simple multiclass exampleChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30028 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Add often-requested support for defining "multiclasses" which can be ↵Chris Lattner
instantiated. This allows you to define multiple definitions with one line, encouraging more .td file factoring. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30027 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01- Fixed broken Win32 buildAnton Korobeynikov
- Removed warning about clobbered parameter in Bytecode/Reader git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30026 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Remove extra spaces.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30025 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Last check-in was a mistake...Evan Cheng
I've been told apple gcc version number is not guaranteed to increase monotonically. Change the preprocess condition to make it less risky. The configuration change is done during the middle 10.4 life cycle so we have to check __APPLE_CC. For future OS X release, we should be able to assume -fenable-cxa-atexit is the default. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30024 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01*** empty log message ***Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30023 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Allow legalizer to expand ISD::MUL using only MULHS in the rare case that isEvan Cheng
possible and the target only supports MULHS. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30022 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Corrections.Jim Laskey
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30021 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Better comments.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30017 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Yikes. This requires checking apple gcc version.Evan Cheng
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30016 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Pull some code out of a hot recursive function because the common case doesn'tChris Lattner
need recursion. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30015 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01remove some particularly expensive assertionsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30014 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Reserve space in the ValueNumberInfo vector. This speeds up live intervalChris Lattner
analysis 16% on crafty. Wrap long lines. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30012 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01add a simple reserve method.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30011 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Iterative coallescing doesn't buy us anything (we get identical results onChris Lattner
crafty with and without it). Removing it speeds up live intervals 6%. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30010 91177308-0d34-0410-b5e6-96231b3b80d8
2006-09-01Don't confuse canonicalize and lookup. Fixes predsimplify.reg4.ll. AlsoNick Lewycky
corrects missing optimization opportunity removing cases from a switch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30009 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-31DAG combiner fix for rotates. Previously the outer-most condition checksEvan Cheng
for ROTL availability. This prevents it from forming ROTR for targets that has ROTR only. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29997 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-31Add a special case that speeds up coallescing a bit, but not enough.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29996 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-31Delete copies as they are coallesced instead of waiting until the end.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29995 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-31avoid calling the virtual isMoveInstr method endlessly by caching its results.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29994 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-31Add a note about C++ -> C with libstdc++Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29993 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-31This program crashes the PredicateSimplifier. Not marked XFAIL becauseNick Lewycky
the PredicateSimplifier is skipped in make check anyways. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29992 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-31Properties where both Values weren't in the union (as being equal toNick Lewycky
another Value) weren't being found by findProperties. This fixes predsimplify.ll test6, a missed optimization opportunity. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29991 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-30Bugfix for recent coallescer crashChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29990 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-30Fix a compiler crash bootstrapping llvm-gcc.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29989 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-30Restore source-level compatibility with clients of these functions.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29978 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-30Guess what happens when asserts are disabled. :(Chris Lattner
Also, the assert could never fire due to || instead of &&. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29977 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-30fix 80 column issueChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29972 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-30Instantiate Statistic<> in one place, not in every .o file that uses it.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29971 91177308-0d34-0410-b5e6-96231b3b80d8
2006-08-30Move to using the EquivalenceClass ADT. Removes SynSets.Nick Lewycky
If a branch's condition has become a ConstantBool, simplify it immediately. Removing the edge saves work and exposes up more optimization opportunities in the pass. Add support for SelectInst. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29970 91177308-0d34-0410-b5e6-96231b3b80d8