Chris Lattner
6390ae0a4a
don't put erase or query for non-allocainst pointers in an set of allocainsts*'s
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43779 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 22:07:22 +00:00
Chris Lattner
cf5008a792
Implement PR1777 by detecting dependent phis that
...
all compute the same value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43777 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 21:52:06 +00:00
Evan Cheng
be6781b5d0
When the allocator rewrite a spill register with new virtual register, it replaces other operands of the same register. Watch out for situations where
...
only some of the operands are sub-register uses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43776 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 21:12:10 +00:00
Duncan Sands
91508a490b
At the point of calculating the shift amount, the
...
type of SV has changed from what it originally was.
However we need the store width of the original.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43775 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 20:39:11 +00:00
Ted Kremenek
730c273d42
Renamed "Flush()" to "FlushRecord()".
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43772 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 19:49:50 +00:00
Ted Kremenek
26e25b3bf0
Added support for processing abbreviations in the Deserializer.
...
Added some #ifdef-controlled messages for debugging backpatching.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43771 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 19:49:16 +00:00
Chris Lattner
bd779a3a1f
fixes from Kelly Wilson.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43767 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 18:13:32 +00:00
Bill Wendling
4f6766d41e
Clarify some of the iostreams stuff.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43766 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 09:36:34 +00:00
Evan Cheng
8fc9a10221
First step towards moving the coalescer to priority_queue based machinery.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43764 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 08:52:21 +00:00
Evan Cheng
ab84724297
Fix a bug where a def use operand isn't being detected as a sub-register use.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43763 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 08:50:44 +00:00
Evan Cheng
1fd15ba961
Add pseudo dependency to force two-address instruction to be scheduled after
...
other uses. There was a overly restricted check that prevented some obvious
cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43762 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 08:44:59 +00:00
Chris Lattner
7badb2d810
edits for chapter 3
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43761 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 07:26:32 +00:00
Chris Lattner
cde1d9db3f
chapter 2 edits
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43760 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 07:16:22 +00:00
Chris Lattner
4134c2821f
edits
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43758 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 06:32:18 +00:00
Chris Lattner
9907cb12ae
Fix PR1774 and BasicAA/2007-11-05-SizeCrash.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43756 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 05:58:42 +00:00
Owen Anderson
8b96b9fce0
Add a few comments.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43755 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 05:26:02 +00:00
Owen Anderson
ee49b5385b
DomForest is a forest of registers, not instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43754 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 05:22:43 +00:00
Chris Lattner
a1cd224a23
clarify what proto is.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43753 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 05:07:30 +00:00
Chris Lattner
95ce0d61ab
Add a real intro to the series.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43752 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 05:02:48 +00:00
Owen Anderson
a4ad2e740a
StrongPHIElimination requires LiveVariables.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43751 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 04:49:43 +00:00
Bruno Cardoso Lopes
000604afd4
Better processor definition
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43749 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 03:15:20 +00:00
Chris Lattner
efcc3f5c5e
typo from Ryan Brown.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43748 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 01:40:41 +00:00
Chris Lattner
711552174e
fixes from Ryan Brown.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43747 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 01:39:12 +00:00
Owen Anderson
89c94f5ced
Add a missing #include.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43746 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 01:26:56 +00:00
Chris Lattner
bde90f0fc1
wrap long lines
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43745 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 01:15:27 +00:00
Dan Gohman
80176319f3
Add support for vector remainder operations.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43744 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 23:35:22 +00:00
Dan Gohman
cff550995b
Fix an abort in instcombine when folding creates a vector rem instruction.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43743 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 23:16:33 +00:00
Rafael Espindola
f1ba1cad38
Move the LowerMEMCPY and LowerMEMCPYCall to a common place.
...
Thanks for the suggestions Bill :-)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43742 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 23:12:20 +00:00
Ted Kremenek
0a6d98e10e
Added support in serializer and deserializer to create arbitrary blocks.
...
Added detection of end-of-stream in deserializer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43736 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 21:36:35 +00:00
Dale Johannesen
eb57ea7ea2
Make labels work in asm blocks; allow labels as
...
parameters. Rename ValueRefList to ParamList
in AsmParser, since its only use is for parameters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43734 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 21:20:28 +00:00
Ted Kremenek
14ac17e2df
Added default creation of root-level block by bitstream serializer.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43732 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 20:47:27 +00:00
Chris Lattner
619bc0ac17
merge in various fixes from Kelly Wilson.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43731 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 20:13:56 +00:00
Chris Lattner
0e555b1ab0
add some links to the tutorial index and between chapters.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43730 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 20:04:56 +00:00
Chris Lattner
bb80f93c47
grammaro
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43729 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:33:52 +00:00
Devang Patel
5d01aa484f
If a value is incoming from outside the loop then the value does not need remapping and the value is never tracked through LastValueMap.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43728 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:32:30 +00:00
Chris Lattner
9ca08f3d8e
recursive types are our friend.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43727 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:28:07 +00:00
Chris Lattner
cac2135bc8
mention possibility of using a visitor
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43726 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:25:14 +00:00
Chris Lattner
cf9893d28c
clarify why prototype::codegen returns a function.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43725 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:22:50 +00:00
Chris Lattner
99005a4b3b
TOC for chapter 8
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43724 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:10:15 +00:00
Chris Lattner
128eb863df
add table of contents to each chapter.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43723 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 19:06:59 +00:00
Lauro Ramos Venancio
8699a97a2e
[ARM] Fix code generation for:
...
static __thread struct {
int a;
int b;
} teste = {0, 0};
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43722 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 18:33:37 +00:00
Ted Kremenek
6fd11c53e9
Fixed bug where tombstone key and empty key for DenseMap used for
...
pointer backpatching in deserializer were improperly created and
resulted in an assertion failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43721 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 18:13:03 +00:00
Duncan Sands
0c8a13b510
Don't output ABI size padding twice. By using the store
...
size for the field we get ABI padding automatically, so
no need to put it in again when we emit the field.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43720 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 18:03:02 +00:00
Chris Lattner
f6e53df441
add link to llvmbuilder doxygen docs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43719 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 18:02:15 +00:00
Chris Lattner
20a0c80f7e
spell identifier correctly.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43718 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 17:54:34 +00:00
Chris Lattner
b50196413a
fix typo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43717 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 17:52:04 +00:00
Chris Lattner
a56b22d7f7
Dan points out that mem2reg also promotes vectors: be more precise.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43715 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 17:45:54 +00:00
Evan Cheng
a461c4d75b
Move SimpleRegisterCoalescing.h to lib/CodeGen since there is now a common
...
register coalescer interface: RegisterCoalescing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43714 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 17:41:38 +00:00
Chris Lattner
fc60ab0487
clarify
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43712 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 17:39:26 +00:00
Chris Lattner
01fcc04570
fix typo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43711 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-05 17:38:34 +00:00