Commit Graph

35562 Commits

Author SHA1 Message Date
Owen Anderson
60a877d713 Add some more of StrongPHIElim.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43805 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07 05:17:15 +00:00
Chris Lattner
d96b159fe3 edits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43804 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07 05:07:10 +00:00
Ted Kremenek
18b5ddb5bf Added special version of ReadPtr() that returns a deserialized pointer
by value.  This version prohibits backpatching of pointers, so it
useful when a pointee is always known to be deserialized beforehand.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43799 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07 00:47:33 +00:00
Ted Kremenek
586504d5ed Fixed default ctor for APInt to properly initialize BitWidth to a
non-random value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43795 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07 00:27:59 +00:00
Dale Johannesen
483ec21d90 Interchange Dwarf numbers of ESP and EBP on x86 Darwin.
Much improvement in exception handling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43794 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-07 00:25:05 +00:00
Tanya Lattner
a57506eea4 Implement the XTARGET feature for PR1778
This will mark a test as PASS for all targets specified. It will override whatever is in XFAIL.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43788 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 22:32:17 +00:00
Ted Kremenek
68dd3fbe5b Serializer no longer automatically emits a root-level block in the bitstream.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43784 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 22:22:25 +00:00
Ted Kremenek
b12a82dbf4 Augmented ReadPtr and ReadOwnedPtr to control whether or not a pointer is allowed to be backpatched
or can be registered with the deserializer to backpatch other pointers.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43783 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 22:21:14 +00:00
Chris Lattner
373a733be0 make smallptrset more const and type correct, which caught a few
minor bugs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43782 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 22:12:43 +00:00
Dan Gohman
0d97426b7b Remainder operations must be either integer or floating-point.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43781 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 22:11:54 +00:00
Chris Lattner
f67f73a519 fix const correctness, BB is const, so its predecessors are too
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43780 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-06 22:07:40 +00:00
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