Vikram S. Adve [Thu, 10 Jul 2003 19:45:28 +0000 (19:45 +0000)]
isMarkedForSpill() should be const.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7155
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 10 Jul 2003 19:45:07 +0000 (19:45 +0000)]
Change interface to MachineInstr::substituteValue to specify more precisely
which args can be substituted: defsOnly, defsAndUses or usesOnly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7154
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 10 Jul 2003 19:43:33 +0000 (19:43 +0000)]
Print out all neighbors in interference graph, not just higher-numbered ones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7153
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 10 Jul 2003 19:42:55 +0000 (19:42 +0000)]
Several fixes to handling of int CC register:
(1) An int CC live range must be spilled if there are any interferences,
even if no other "neighbour" in the interf. graph has been allocated
that reg. yet. This is actually true of any class with only one reg!
(2) SparcIntCCRegClass::colorIGNode sets the color even if the LR must
be spilled so that the machine-independent spill code doesn't have to
make the machine-dependent decision of which CC name to use based on
operand type: %xcc or %icc. (These are two halves of the same
register.)
(3) LR->isMarkedForSpill() is no longer the same as LR->hasColor().
These should never have been the same, and this is necessary now for #2.
(4) All RDCCR and WRCCR instructions are directly generated with the
phony number for %ccr so that EmitAssembly/EmitBinary doesn't have to
deal with this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7152
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 10 Jul 2003 19:42:11 +0000 (19:42 +0000)]
Several fixes to handling of int CC register:
(1) An int CC live range must be spilled if there are any interferences,
even if no other "neighbour" in the interf. graph has been allocated
that reg. yet. This is actually true of any class with only one reg!
(2) SparcIntCCRegClass::colorIGNode sets the color even if the LR must
be spilled so that the machine-independent spill code doesn't have to
make the machine-dependent decision of which CC name to use based on
operand type: %xcc or %icc. (These are two halves of the same register.)
(3) LR->isMarkedForSpill() is no longer the same as LR->hasColor().
These should never have been the same, and this is necessary now for #2.
(4) All RDCCR and WRCCR instructions are directly generated with the
phony number for %ccr so that EmitAssembly/EmitBinary doesn't have to
deal with this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7151
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 10 Jul 2003 19:32:38 +0000 (19:32 +0000)]
*** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7150
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 10 Jul 2003 19:31:26 +0000 (19:31 +0000)]
Just documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7149
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Thu, 10 Jul 2003 19:25:29 +0000 (19:25 +0000)]
Add phony target "bytecode" to ensure that it works in recursive makes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7147
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 10 Jul 2003 17:05:26 +0000 (17:05 +0000)]
Lowercase versions of `occurrence' need to be spelled correctly, too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7142
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 10 Jul 2003 16:52:41 +0000 (16:52 +0000)]
Move the space separator to where it really belongs: in the print statement, not
in a variable assignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7141
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 10 Jul 2003 16:49:51 +0000 (16:49 +0000)]
`Occurrence' has no `a' and the `r' is doubled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7140
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 10 Jul 2003 16:35:17 +0000 (16:35 +0000)]
Converted tabs to spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7139
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 9 Jul 2003 17:33:50 +0000 (17:33 +0000)]
Some beautification changes (tabs to spaces, removed extra blank lines);
no functionality changed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7138
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 8 Jul 2003 23:40:48 +0000 (23:40 +0000)]
Simplified DOTRACING flag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7135
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 8 Jul 2003 20:35:59 +0000 (20:35 +0000)]
Corrected the Table of Contents.
Corrected capitalization of subheadings.
Created a new subsection for compiling the C front end and moved all references
to it there.
Updated the disk space requirements to reflect the need for the binary C front
end and the optional C front end source.
Added information on unpacking the distribution to the summary section.
Moved autoconf environment variables to the autoconf section.
Changed make to gmake.
Removed some of the precise directions for unpacking the archives.
Fixed some formatting inconsistencies (headings that were not centered).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7132
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 8 Jul 2003 18:42:44 +0000 (18:42 +0000)]
Pointer hash table reallocation code seems never to have been tested!
Unfortunately, reallocation also means that the pointer numbering will
change, so increase table size to try to avoid it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7130
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 8 Jul 2003 18:40:58 +0000 (18:40 +0000)]
Native libraries (libinstr*.a) should not have been taken out when
taking out the rule for compiling the test driver.
We need the native libraries for libinstr because they are directly
linked into the native CBE or LLC code. That is the only practical
way to debug them!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7129
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 8 Jul 2003 18:39:51 +0000 (18:39 +0000)]
Use libinstr.$(ARCH).a instead of libinstr64.a
Also, $(RM) needs -f flag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7128
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 8 Jul 2003 15:39:02 +0000 (15:39 +0000)]
*** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7126
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 8 Jul 2003 14:52:09 +0000 (14:52 +0000)]
Removed size_t from the parameter list of the malloc() prototype in generated C
code. This prevents a compiler warning on Sparc that causes the tests to fail.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7125
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 7 Jul 2003 22:30:44 +0000 (22:30 +0000)]
Stop using the `Offset' variable, as we are cycling through the bits of a field
initializer and the loop index variable already carries the offset information
that we need.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7123
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 7 Jul 2003 22:28:42 +0000 (22:28 +0000)]
Fixed indentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7122
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 7 Jul 2003 22:27:05 +0000 (22:27 +0000)]
Removed an extra slash that appears in the path name when these variables are
combined with a '/' separating them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7121
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 7 Jul 2003 22:18:42 +0000 (22:18 +0000)]
Elaborated assembly syntax of instructions in the comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7120
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 7 Jul 2003 22:18:06 +0000 (22:18 +0000)]
Removed unnecessary assignment (it was taken care by a superclass) and clarified
some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7119
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 7 Jul 2003 21:27:40 +0000 (21:27 +0000)]
* Made $Template refer to a path relative to the checked-out tree
* Made error messages print out what directory failed chdir()
* Put quotes around search arguments to grep
* Use `egrep' instead of `grep -e' because they are equivalent but `grep' does
not have the `-e' option on Sparc/Solaris
* Added `--enable-jit' to the ./configure command because both X86 and Sparc
have JITs and we want them to be tested
* Fixed the regular expressions parsing the changes in CVS which were causing
the script to die
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7118
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Mon, 7 Jul 2003 19:29:20 +0000 (19:29 +0000)]
Fixed the directions for building the C front end.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7117
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Mon, 7 Jul 2003 19:27:35 +0000 (19:27 +0000)]
Added information about how to unpack the distribution for those who do not
have access to CVS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7116
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Mon, 7 Jul 2003 18:34:20 +0000 (18:34 +0000)]
Insert workaround for GAS bug in assembling FLD/FSTP XWORD PTR [...]
instructions, by outputting them as bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7115
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Mon, 7 Jul 2003 16:52:39 +0000 (16:52 +0000)]
Moved RegClassIDs enum to be next to the RegTypes enum.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7114
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sun, 6 Jul 2003 22:50:31 +0000 (22:50 +0000)]
Correction to last fix: Pointer types do not return true in Type::IsIntegral().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7113
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sun, 6 Jul 2003 20:33:21 +0000 (20:33 +0000)]
Choose register instead of immediate for ConstantExpr in ChooseRegOrImmed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7112
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sun, 6 Jul 2003 20:13:59 +0000 (20:13 +0000)]
Major bug fix though it happened rarely (only on a compare after an
integer overflow):
We need to use %icc and not %xcc for comparisons on 32-bit or smaller
integer values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7111
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sun, 6 Jul 2003 20:12:18 +0000 (20:12 +0000)]
Regression test for bug in reg. allocation that was using %xcc instead
of %icc even for 32-bit and smaller comparisons.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7110
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sun, 6 Jul 2003 19:53:59 +0000 (19:53 +0000)]
Make the RegClassID values public -- there is no other way to get them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7109
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 3 Jul 2003 21:44:32 +0000 (21:44 +0000)]
Add -d option to trust the disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7105
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Thu, 3 Jul 2003 21:15:02 +0000 (21:15 +0000)]
here little scriptie, nice scriptie...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7104
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 3 Jul 2003 18:36:47 +0000 (18:36 +0000)]
Apparently, the "regType" and "regClass" used in the Sparc backend are not both
correct: empirically, "regType" is wrong for a number of registers. Thus, one
can only rely on the "regClass" to figure out what kind of register one is
dealing with.
This change switches to using only "regClass" and adds a few extra DEBUG() print
statements and a few clean-ups in comments and code, mostly minor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7103
91177308-0d34-0410-b5e6-
96231b3b80d8
Sumant Kowshik [Thu, 3 Jul 2003 17:55:47 +0000 (17:55 +0000)]
Added support for poolallocarray and poolmakeunfreeable. The latter is used by the SAFECode project
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7102
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 3 Jul 2003 16:49:40 +0000 (16:49 +0000)]
Fixed an error in the pathname to LLVMGCCDIR for the pre-built binaries (forgot
that <> denotes a tag).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7100
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 3 Jul 2003 16:43:01 +0000 (16:43 +0000)]
Added information on software requirements for unpacking the archives that we
will eventually distribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7099
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 3 Jul 2003 16:29:36 +0000 (16:29 +0000)]
* Reworded a bit about JITs (I don't like acronyms followed by 's)
* Added JIT capability to the LLI description section
* LLC is quasi-x86-capable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7098
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 3 Jul 2003 16:03:39 +0000 (16:03 +0000)]
Added another remark on how building the C front end is optional.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7097
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 3 Jul 2003 16:01:38 +0000 (16:01 +0000)]
Performed a major update for the pre-release.
Attempted to better structure and order the document.
Added more information about autoconf, the build system, and how to build LLVM.
Added directions on how to build the C front end.
Added a section on common problems and their solutions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7096
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 3 Jul 2003 15:37:52 +0000 (15:37 +0000)]
Adding a web page on how to start a new LLVM Project.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7095
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Jul 2003 06:42:38 +0000 (06:42 +0000)]
Reuse the values if they are constants: this is important so that we index into the right structure field
This fixes bug: BasicAA/2003-07-03-BasicAACrash.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7093
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Jul 2003 06:29:15 +0000 (06:29 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7092
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Jul 2003 02:03:53 +0000 (02:03 +0000)]
Remove globals more aggressively from graphs.
Fix a bug where we removed nodes that were marked U.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7090
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 23:57:21 +0000 (23:57 +0000)]
INCLUDE_PARENT_GRAPH is required
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7089
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 23:57:05 +0000 (23:57 +0000)]
INCLUDE_PARENT_GRAPH is required!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7088
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 23:56:51 +0000 (23:56 +0000)]
Disable incorrect mustalias code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7087
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 23:44:15 +0000 (23:44 +0000)]
Remove space at end of line
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7084
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 23:43:06 +0000 (23:43 +0000)]
Remove dead method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7083
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 23:42:48 +0000 (23:42 +0000)]
Fix how we are handling unreachable functions. This DRAMATICALLY improves efficiency
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7082
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Wed, 2 Jul 2003 23:03:18 +0000 (23:03 +0000)]
Updated prior to the pre-release.
Removed items which are done (or near completion).
Added new items so that we don't forget them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7081
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 2 Jul 2003 21:20:04 +0000 (21:20 +0000)]
The word `open' was really intended to be `option'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7080
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Wed, 2 Jul 2003 21:16:06 +0000 (21:16 +0000)]
Removed the --enable-profiling option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7079
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Wed, 2 Jul 2003 20:49:38 +0000 (20:49 +0000)]
Removed the --enable-profiling option (again).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7078
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 20:24:42 +0000 (20:24 +0000)]
Keep track of how many inlinings are performed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7076
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 19:49:11 +0000 (19:49 +0000)]
Try using trivially dead deletion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7075
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 2 Jul 2003 19:37:48 +0000 (19:37 +0000)]
* Force all "don't care" bits to 0 so that there are absolutely no unset bits in
the TableGen descriptions; all unset bits are thus errors.
* As a result, found and fixed instructions where some operands were not
actually assigned into the right portion of the instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7074
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 2 Jul 2003 18:27:47 +0000 (18:27 +0000)]
The classes F4_3 and F4_4 have an `rd' operand that needs to be set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7073
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 2 Jul 2003 18:15:43 +0000 (18:15 +0000)]
Properly fix instruction syntax in comments, using `imm' for instructions that
use an immediate value instead of a register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7072
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 2 Jul 2003 18:02:58 +0000 (18:02 +0000)]
Fixed instruction syntax in the comments (specifies how instr is used).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7071
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 2 Jul 2003 17:53:19 +0000 (17:53 +0000)]
* If compiling on X86 or Sparc, automagically enable the JIT for that arch
* Setting ENABLE_X86_JIT or ENABLE_SPARC_JIT on the `make' command-line will
force the inclusion of that JIT on a different architecture
* If neither JIT is enabled (e.g., compiling on a different architecture), the
-march option will not be available to LLI.
* As a side effect of the $ARCH variable, the Sparc LLI can now link just a bit
faster by not including the x86 library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7070
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Wed, 2 Jul 2003 16:53:44 +0000 (16:53 +0000)]
Removed the CPPFLAGS and CFLAGS variables since the -DHAVE_CONFIG_H messes
up the test suite. Since all the LLVM software assumes that config.h exists,
we can just do away with it for now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7069
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 2 Jul 2003 06:59:22 +0000 (06:59 +0000)]
Force fixed-size but large alloca objects to the dynamically allocated
area to avoid using up precious stack space within the 4095 offset limit
from %fp. Such objects that would themselves live at a large offset
were being put there already so this is a simple change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7066
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 06:06:34 +0000 (06:06 +0000)]
Remove dead Nodes list
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7065
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:39:44 +0000 (04:39 +0000)]
Complete rewrite of td pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7064
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:39:27 +0000 (04:39 +0000)]
Print collapsed to match the paper
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7063
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:39:13 +0000 (04:39 +0000)]
Reduce amount of work we do calculating mustaliases if the arg is a global
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7062
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:38:49 +0000 (04:38 +0000)]
Add support for ParentGraph only when building in debug mode
Minor cleanups, reenable folding of call nodes to external functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7061
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:38:00 +0000 (04:38 +0000)]
Add some functions to the blacklist
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7060
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:37:48 +0000 (04:37 +0000)]
Make the BU closure keep track of which actual calls happen
Minor cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7059
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:37:26 +0000 (04:37 +0000)]
Make local pass print out its progress
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7058
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:37:00 +0000 (04:37 +0000)]
Add new methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7057
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Jul 2003 04:33:55 +0000 (04:33 +0000)]
Disable the parent graph code when not compiled in DEBUG mode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7056
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 2 Jul 2003 01:25:44 +0000 (01:25 +0000)]
Leak fix: delete old objects before reallocation in an assignment operator!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7055
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 2 Jul 2003 01:24:00 +0000 (01:24 +0000)]
Minor beautification: fold a couple of lines of code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7054
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 2 Jul 2003 01:23:15 +0000 (01:23 +0000)]
(1) Major bug fix: DecomposeArrayRef() replaces its argument instr. and
deletes it, but we were merrily trying to fix the operands of that
instruction anyway! Instead, fix the replacement instruction.
(2) An Improvement: Check for and extract global values in all operands,
not just in known pointer operands. For example, they can occur in
call arguments, and probably other unforeseeable places as well.
This also eliminates the special-case handling of Load and Store.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7053
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 2 Jul 2003 01:16:01 +0000 (01:16 +0000)]
A def. operand of a machine instruction may be an ordinary Value*,
not just an Instruction*, at least in one unfortunate case:
the first operand to the va_arg instruction.
Modify ValueToDefVecMap to map from Value*, not Instruction*.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7052
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Wed, 2 Jul 2003 01:13:57 +0000 (01:13 +0000)]
Bug/case fixes:
(1) select: Ok to convert a pointer to a float or double.
(2) regalloc: Some MachineInstr* for caller-saving code before a call
were being inserted before and after the call!
(3) Don't insert the caller-saving instructions in the
MachineCodeForInstruction for the Call instruction.
*All* instructions generated by register allocation need to be
recorded in those maps, but it needs to be done uniformly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7051
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 1 Jul 2003 22:07:39 +0000 (22:07 +0000)]
Added the ARCH variable so that some of the Makefiles can perform actions based
upon the target hardware architecture (as opposed to always checking the OS).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7050
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 1 Jul 2003 21:55:57 +0000 (21:55 +0000)]
Fixed a broken hyperlink.
Moved commas outside of hyperlinks in the contributors list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7049
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 21:12:10 +0000 (21:12 +0000)]
TD pass keeps track of which functions have complete arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7048
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 21:11:59 +0000 (21:11 +0000)]
Add new operator= impl
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7047
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 21:08:52 +0000 (21:08 +0000)]
Fix bug: Regression/Other/2002-03-11-ExprAssertion.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7046
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 21:03:30 +0000 (21:03 +0000)]
Fix testcase failing because of change of output
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7045
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Tue, 1 Jul 2003 20:31:45 +0000 (20:31 +0000)]
Updated the name of the LLVM disassembler so that the test does not fail.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7044
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 18:52:01 +0000 (18:52 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7043
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 17:50:11 +0000 (17:50 +0000)]
Move to test/programs/LLvmsource
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7037
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 17:15:11 +0000 (17:15 +0000)]
Ok, I'm a moron. Fixed now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7035
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 17:10:50 +0000 (17:10 +0000)]
Fix major problem that was causing all kinds of nasty foldings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7034
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 16:28:32 +0000 (16:28 +0000)]
Make testcase a bit more interesting
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7033
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 16:28:20 +0000 (16:28 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7032
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 16:28:11 +0000 (16:28 +0000)]
Rework TD pass to work with the precise call graph constructed by the BU phase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7031
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 16:27:53 +0000 (16:27 +0000)]
Do not treat global variables as functions! (and assert failing)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7030
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 16:27:32 +0000 (16:27 +0000)]
Dont' print scalar nodes for ConstantPointerRefs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7029
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 16:27:15 +0000 (16:27 +0000)]
Add new methods to BUDS for keeping track of a precise call graph
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7028
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 1 Jul 2003 16:04:18 +0000 (16:04 +0000)]
Minor cleanups
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7027
91177308-0d34-0410-b5e6-
96231b3b80d8