Dale Johannesen [Tue, 15 May 2007 21:19:17 +0000 (21:19 +0000)]
Remove extra CFG edges before doing these passes; it makes them happier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37089
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 20:40:25 +0000 (20:40 +0000)]
add PR number and testcase from the PR.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37088
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 20:29:56 +0000 (20:29 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37087
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Tue, 15 May 2007 17:05:43 +0000 (17:05 +0000)]
Fix an infinite recursion in GetNegatedExpression.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37086
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 15 May 2007 15:46:41 +0000 (15:46 +0000)]
Don't put test cases into regression test suite before the bug is fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37085
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Tue, 15 May 2007 13:54:14 +0000 (13:54 +0000)]
The index into the actions table is a ULEB128 not a SLEB128.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37084
91177308-0d34-0410-b5e6-
96231b3b80d8
Nicolas Geoffray [Tue, 15 May 2007 09:21:28 +0000 (09:21 +0000)]
Note on current implementation of ELF32/PPC ABI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37083
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 15 May 2007 06:52:15 +0000 (06:52 +0000)]
Add a test case for PR1420
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37082
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 06:42:04 +0000 (06:42 +0000)]
selects can also reach here
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37081
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 06:29:44 +0000 (06:29 +0000)]
implement the ModuleProvider::dematerializeFunction hook
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37080
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 15 May 2007 02:26:52 +0000 (02:26 +0000)]
Un-brain-dead-ify the lowering of part set for the reverse case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37071
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 01:36:44 +0000 (01:36 +0000)]
Fix CodeGen/PowerPC/2007-05-14-InlineAsmSelectCrash.ll, the other recent
patches are also needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37070
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 01:33:58 +0000 (01:33 +0000)]
Fix some subtle issues handling immediate values. This fixes
test/CodeGen/ARM/2007-05-14-InlineAsmCstCrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37069
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 01:33:12 +0000 (01:33 +0000)]
new testcase that crashes llc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37068
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 01:31:05 +0000 (01:31 +0000)]
fix some subtle inline asm selection issues
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37067
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 15 May 2007 01:29:07 +0000 (01:29 +0000)]
Add PredicateOperand to all ARM instructions that have the condition field.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37066
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 01:28:08 +0000 (01:28 +0000)]
fix subtle bugs in inline asm operand selection
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37065
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 15 May 2007 01:26:09 +0000 (01:26 +0000)]
Added getNumExplicitOperands and findFirstPredOperand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37064
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 15 May 2007 01:23:24 +0000 (01:23 +0000)]
Added \!con(a,b) syntax to concatnate two dag fragments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37063
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 15 May 2007 01:21:27 +0000 (01:21 +0000)]
All operands that made up of the predicate operands are maked M_PREDICATE_OPERAND.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37062
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 15 May 2007 01:20:36 +0000 (01:20 +0000)]
Mark all (not just the first) predicate operand M_PREDICATE_OPERAND.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37061
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 15 May 2007 01:19:51 +0000 (01:19 +0000)]
PredicateOperand related bug fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37060
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 01:13:42 +0000 (01:13 +0000)]
testcase that crashes llc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37059
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Tue, 15 May 2007 00:20:13 +0000 (00:20 +0000)]
Correct a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37058
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 00:16:00 +0000 (00:16 +0000)]
Fix Transforms/InstCombine/2007-05-14-Crash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37057
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 May 2007 00:15:49 +0000 (00:15 +0000)]
New testcase that crashes instcombine
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37056
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Mon, 14 May 2007 23:20:21 +0000 (23:20 +0000)]
Fix previous patch. GOTOFF can be used only when the symbol has internal
linkage or hidden visibility.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37055
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 May 2007 22:04:50 +0000 (22:04 +0000)]
implement a simple fneg optimization/propagation thing. This compiles:
CodeGen/PowerPC/fneg.ll into:
_t4:
fmul f0, f3, f4
fmadd f1, f1, f2, f0
blr
instead of:
_t4:
fneg f0, f3
fmul f0, f0, f4
fmsub f1, f1, f2, f0
blr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37054
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 May 2007 22:04:16 +0000 (22:04 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37053
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 May 2007 21:23:51 +0000 (21:23 +0000)]
Only worry about intervening kill if there are more than one live ranges in the interval.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37052
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 May 2007 21:12:43 +0000 (21:12 +0000)]
Test for PR1406.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37051
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 May 2007 21:10:05 +0000 (21:10 +0000)]
Fix for PR1406:
v1 =
r2 = move v1
= op r2<kill>
...
r2 = move v1
= op r2<kill>
Clear the first r2 kill if v1 and r2 are joined.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37050
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 May 2007 20:47:21 +0000 (20:47 +0000)]
New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37048
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 May 2007 20:43:28 +0000 (20:43 +0000)]
Doh. .cpp -> .ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37047
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 May 2007 20:39:18 +0000 (20:39 +0000)]
When marking a register as being implicitly defined, make sure to clear its partial use info as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37046
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Mon, 14 May 2007 18:46:23 +0000 (18:46 +0000)]
Optimize PIC implementation. GOTOFF can be used when the symbol is defined
and used in the same module.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37044
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Mon, 14 May 2007 18:32:56 +0000 (18:32 +0000)]
Enable aliases on arm-linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37042
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 14 May 2007 18:03:45 +0000 (18:03 +0000)]
Remove duplicated line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37040
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 14 May 2007 17:58:52 +0000 (17:58 +0000)]
Reverse last patch .. premature. Depends on uncommitted CBE patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37039
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 14 May 2007 17:56:39 +0000 (17:56 +0000)]
Update this test to match the (corrected) output from the CBE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37038
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 14 May 2007 17:21:17 +0000 (17:21 +0000)]
Give names to the final result values of the part_set computations. This
just aids in readability and debugability of the output. No functional change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37037
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 14 May 2007 16:50:20 +0000 (16:50 +0000)]
The wrapping behavior of part_set is not desirable. Adjust the
documentation to describe the desired behavior.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37036
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 14 May 2007 16:14:57 +0000 (16:14 +0000)]
Revise definition of part_select. The wrapping behavior is not useful so
in the reverse case the only difference is that the bits are returned in
reverse order.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37035
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 14 May 2007 14:31:17 +0000 (14:31 +0000)]
Correct a few comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37034
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 14 May 2007 14:25:08 +0000 (14:25 +0000)]
Add passes -view-cfg and -view-cfg-only that are like -print-cfg and
-print-cfg-only except they use the ViewCFG function, which displays the
CFG rendered with graphviz with gv.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37033
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 14 May 2007 14:23:27 +0000 (14:23 +0000)]
Use templates for the GraphType for DefaultDOTGraphTraits' members instead
of just using void*. This allows it to be used with graph adapters like
Inverse.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37032
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 14 May 2007 14:21:46 +0000 (14:21 +0000)]
Add a addRequiredTransitiveID member function, which is to
addRequiredTransitive as addRequiredID is to addRequired.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37031
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 May 2007 06:56:09 +0000 (06:56 +0000)]
Add a skeleton for future contents
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37028
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 14 May 2007 01:54:16 +0000 (01:54 +0000)]
update comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37027
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 14 May 2007 00:15:28 +0000 (00:15 +0000)]
Make the results for the rotate functions correct when rotateAmt == 0.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37026
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 13 May 2007 23:44:59 +0000 (23:44 +0000)]
Add some things needed by the llvm-gcc version supporting bit accurate integer
types:
1. Functions to compute div/rem at the same time.
2. Further assurance that an APInt with 0 bitwidth cannot be constructed.
3. Left and right rotate operations.
4. An exactLogBase2 function which requires an exact power of two or it
returns -1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37025
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 May 2007 23:38:44 +0000 (23:38 +0000)]
add a link
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37024
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 May 2007 22:19:27 +0000 (22:19 +0000)]
Fix PR1413
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37023
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 May 2007 21:28:25 +0000 (21:28 +0000)]
this crashes globalopt
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37021
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 May 2007 21:28:07 +0000 (21:28 +0000)]
Fix Transforms/GlobalOpt/2007-05-13-Crash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37020
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 13 May 2007 17:30:11 +0000 (17:30 +0000)]
Emit function debug frames in one atom. This will prevent us from generating incorrect assembler in case of both
debug information & exception information presented.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37019
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 13 May 2007 15:42:26 +0000 (15:42 +0000)]
Emit multiple common EH frames for multiple (including blank) personality
functions. This partly fixes PR1414: now we're restricted only to one
personality function per eh frame, not per module. Further work on
"multiple personalities" topic needs representative example.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37018
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 May 2007 01:39:44 +0000 (01:39 +0000)]
add initial description of llvm top-level stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37017
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 13 May 2007 00:59:52 +0000 (00:59 +0000)]
finish the description of the bitstream format.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37016
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sat, 12 May 2007 22:36:25 +0000 (22:36 +0000)]
More DWARF-related things cleanup:
1. Fix PR1380
2. Apply Duncan's patch from PR1410
3. Insert workaround for "one personality function per module" as noted in PR1414
4. Emit correct debug frames for x86/linux. This partly fixes DebugInfo/2006-11-06-StackTrace.cpp: stack trace is
shown correctly, but arguments for function on top of stack are displayed incorrectly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37015
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 12 May 2007 18:01:57 +0000 (18:01 +0000)]
Fix shl to produce the correct result when the bitwidth is > 64 and the
shift amount is 0. Previously this code would do a lshr by the bit width
which can lead to incorrect results.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37010
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 12 May 2007 17:59:55 +0000 (17:59 +0000)]
Add a test case for shl of APInt integers > 64 bits by 0 shift amount.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37009
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 12 May 2007 11:07:40 +0000 (11:07 +0000)]
Get the size of auto arrays right, regardless of its changing size.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37006
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 12 May 2007 08:01:52 +0000 (08:01 +0000)]
Fix a grammaro.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37005
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 May 2007 07:50:14 +0000 (07:50 +0000)]
fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37004
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 May 2007 07:49:15 +0000 (07:49 +0000)]
continued description
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37003
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 May 2007 05:37:42 +0000 (05:37 +0000)]
add a bunch of content.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37002
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 12 May 2007 03:23:40 +0000 (03:23 +0000)]
first step
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37001
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Sat, 12 May 2007 02:36:41 +0000 (02:36 +0000)]
Add a known QEMU problem.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37000
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 11 May 2007 23:51:59 +0000 (23:51 +0000)]
allow partially materialized modules to be written out, which just strips out
the functions which haven't been read.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36999
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 11 May 2007 23:14:43 +0000 (23:14 +0000)]
Fix lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20070507/049516.html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36998
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 11 May 2007 23:13:19 +0000 (23:13 +0000)]
New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36997
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 11 May 2007 22:40:34 +0000 (22:40 +0000)]
significantly improve debug output of lsr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36996
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 11 May 2007 21:43:24 +0000 (21:43 +0000)]
Update comments to say "vector" instead of "packed".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36995
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 11 May 2007 21:10:54 +0000 (21:10 +0000)]
Fix typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36994
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 11 May 2007 21:05:57 +0000 (21:05 +0000)]
Remove forward-declarations for classes that don't exist.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36993
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 11 May 2007 21:04:48 +0000 (21:04 +0000)]
Add explicit keywords to several constructors that now have one argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36992
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 11 May 2007 20:59:29 +0000 (20:59 +0000)]
Simplify BranchInst::getSuccessor, avoiding a conditional operator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36991
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 11 May 2007 20:53:41 +0000 (20:53 +0000)]
This patch extends the LoopUnroll pass to be able to unroll loops
with unknown trip counts. This is left off by default, and a
command-line option enables it. It also begins to separate loop
unrolling into a utility routine; eventually it might be made usable
from other passes.
It currently works by inserting conditional branches between each
unrolled iteration, unless it proves that the trip count is a
multiple of a constant integer > 1, which it currently only does in
the rare case that the trip count expression is a Mul operator with
a ConstantInt operand. Eventually this information might be provided
by other sources, for example by a pass that peels/splits the loop
for this purpose.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36990
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 11 May 2007 16:58:45 +0000 (16:58 +0000)]
fix regressions from my previous checking, including
Transforms/InstCombine/2006-12-08-ICmp-Combining.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36989
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 11 May 2007 08:47:35 +0000 (08:47 +0000)]
Perform correct actions numbers/sizes computation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36988
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Fri, 11 May 2007 08:23:57 +0000 (08:23 +0000)]
Fix action No calculation in multiple-invoke-one-LP mode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36987
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 11 May 2007 06:47:16 +0000 (06:47 +0000)]
For PR1411:
Don't try to use {} bracketing when setting a variable in site.exp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36985
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 11 May 2007 05:55:56 +0000 (05:55 +0000)]
fix Transforms/InstCombine/2007-05-10-icmp-or.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36984
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 11 May 2007 05:55:38 +0000 (05:55 +0000)]
new testcase that crashes instcombine
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36983
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 11 May 2007 00:45:58 +0000 (00:45 +0000)]
Drop ModuleID from comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36982
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 11 May 2007 00:43:26 +0000 (00:43 +0000)]
fix a memory leak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36981
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 11 May 2007 00:00:27 +0000 (00:00 +0000)]
Fix a bug where the bcreader could crash on .bc files that were an exact
multiple of the page size, due to a bug in MappedFile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36980
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Thu, 10 May 2007 23:59:23 +0000 (23:59 +0000)]
Do not generate branches to entry block. This fixes several test suite
failures on PPC (can happen only when prologue code is null)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36979
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Thu, 10 May 2007 22:38:46 +0000 (22:38 +0000)]
Ooops. Some debugging stuff :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36978
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Thu, 10 May 2007 22:34:59 +0000 (22:34 +0000)]
Allow multiple invokes per landing pad. This (probably) fixes PR1410.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36977
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Thu, 10 May 2007 18:40:24 +0000 (18:40 +0000)]
Later computations assume we are aligned at this point.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36975
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Thu, 10 May 2007 15:10:34 +0000 (15:10 +0000)]
TypeIds are indexed by j, not i
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36974
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Thu, 10 May 2007 08:26:24 +0000 (08:26 +0000)]
These attributes are supported!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36973
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 10 May 2007 06:42:21 +0000 (06:42 +0000)]
gar. GCC 3.4.2 also miscompiles llvm at -O3. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36972
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 10 May 2007 05:37:14 +0000 (05:37 +0000)]
another version of gcc that miscompiles llvm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36971
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Thu, 10 May 2007 01:04:28 +0000 (01:04 +0000)]
Another test for tail mergeing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36967
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Thu, 10 May 2007 01:01:49 +0000 (01:01 +0000)]
Make tail merging handle many more cases (all it can, I think).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36966
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 10 May 2007 00:08:04 +0000 (00:08 +0000)]
add some notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36965
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 9 May 2007 21:54:34 +0000 (21:54 +0000)]
Can't fold bit_convert into truncating store.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36963
91177308-0d34-0410-b5e6-
96231b3b80d8