Evan Cheng
8dfffd5a07
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
2007-05-14 21:23:51 +00:00
Evan Cheng
0dbea33fff
Test for PR1406.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37051 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 21:12:43 +00:00
Evan Cheng
2f6cb2b14c
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
2007-05-14 21:10:05 +00:00
Evan Cheng
47927b3e5a
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37048 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 20:47:21 +00:00
Evan Cheng
3cc94c08af
Doh. .cpp -> .ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37047 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 20:43:28 +00:00
Evan Cheng
8b966d9fd0
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
2007-05-14 20:39:18 +00:00
Lauro Ramos Venancio
930d161ba2
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
2007-05-14 18:46:23 +00:00
Lauro Ramos Venancio
69642f11ed
Enable aliases on arm-linux.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37042 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 18:32:56 +00:00
Evan Cheng
7055fd02e3
Remove duplicated line.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37040 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 18:03:45 +00:00
Reid Spencer
b92cb1539f
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
2007-05-14 17:58:52 +00:00
Reid Spencer
477e9746bb
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
2007-05-14 17:56:39 +00:00
Reid Spencer
9bd57b6561
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
2007-05-14 17:21:17 +00:00
Reid Spencer
c6749c42c3
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
2007-05-14 16:50:20 +00:00
Reid Spencer
d6a85b54de
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
2007-05-14 16:14:57 +00:00
Dan Gohman
d9efdb2012
Correct a few comments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37034 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 14:31:17 +00:00
Dan Gohman
a196b993e0
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
2007-05-14 14:25:08 +00:00
Dan Gohman
2703f23304
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
2007-05-14 14:23:27 +00:00
Dan Gohman
b7f0675f43
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
2007-05-14 14:21:46 +00:00
Chris Lattner
f3e5bc695e
Add a skeleton for future contents
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37028 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 06:56:09 +00:00
Chris Lattner
d82dc66944
update comments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37027 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-14 01:54:16 +00:00
Reid Spencer
69944e85aa
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
2007-05-14 00:15:28 +00:00
Reid Spencer
19dc32a2d4
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
2007-05-13 23:44:59 +00:00
Chris Lattner
9273418777
add a link
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37024 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-13 23:38:44 +00:00
Chris Lattner
40c1b66d88
Fix PR1413
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37023 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-13 22:19:27 +00:00
Chris Lattner
d2abaf55d9
this crashes globalopt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37021 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-13 21:28:25 +00:00
Chris Lattner
79cfddf646
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
2007-05-13 21:28:07 +00:00
Anton Korobeynikov
185bc8905a
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
2007-05-13 17:30:11 +00:00
Anton Korobeynikov
8c7c17354c
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
2007-05-13 15:42:26 +00:00
Chris Lattner
69b3e40196
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
2007-05-13 01:39:44 +00:00
Chris Lattner
7300af5896
finish the description of the bitstream format.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37016 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-13 00:59:52 +00:00
Anton Korobeynikov
0ff3ca4f92
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
2007-05-12 22:36:25 +00:00
Reid Spencer
92c7283500
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
2007-05-12 18:01:57 +00:00
Reid Spencer
45d6764ca1
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
2007-05-12 17:59:55 +00:00
Reid Spencer
5156f5b214
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
2007-05-12 11:07:40 +00:00
Reid Spencer
58d054783d
Fix a grammaro.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37005 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-12 08:01:52 +00:00
Chris Lattner
f1d64e90b3
fix typo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37004 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-12 07:50:14 +00:00
Chris Lattner
daeb63c220
continued description
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37003 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-12 07:49:15 +00:00
Chris Lattner
3a1716db58
add a bunch of content.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37002 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-12 05:37:42 +00:00
Chris Lattner
e9ef4573e2
first step
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37001 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-12 03:23:40 +00:00
Lauro Ramos Venancio
be1b1b1a74
Add a known QEMU problem.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37000 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-12 02:36:41 +00:00
Chris Lattner
384003d2c0
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
2007-05-11 23:51:59 +00:00
Devang Patel
1e4c23a2d1
Fix http://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
2007-05-11 23:14:43 +00:00
Devang Patel
2194ad9067
New test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36997 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 23:13:19 +00:00
Chris Lattner
7d8ed8a941
significantly improve debug output of lsr
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36996 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 22:40:34 +00:00
Dan Gohman
86296cca63
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
2007-05-11 21:43:24 +00:00
Dan Gohman
23d9d27c26
Fix typos.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36994 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 21:10:54 +00:00
Dan Gohman
667976e35f
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
2007-05-11 21:05:57 +00:00
Dan Gohman
1031c6f220
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
2007-05-11 21:04:48 +00:00
Dan Gohman
b96039e4b9
Simplify BranchInst::getSuccessor, avoiding a conditional operator.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36991 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-11 20:59:29 +00:00
Dan Gohman
c767844fc9
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
2007-05-11 20:53:41 +00:00