oota-llvm.git
21 years agoReenable printing of TD analysis
Chris Lattner [Thu, 17 Oct 2002 04:24:30 +0000 (04:24 +0000)]
Reenable printing of TD analysis

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4214 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago * Add data structures and code to track the call sites for each function
Chris Lattner [Thu, 17 Oct 2002 04:24:08 +0000 (04:24 +0000)]
  * Add data structures and code to track the call sites for each function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4213 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago * Add data structures to BU pass to keep track of call sites for functions
Chris Lattner [Thu, 17 Oct 2002 04:23:05 +0000 (04:23 +0000)]
  * Add data structures to BU pass to keep track of call sites for functions
  * Reenable the TD analysis

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4212 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago * Remove a lot of obsolete #if 0'd code
Chris Lattner [Thu, 17 Oct 2002 04:22:16 +0000 (04:22 +0000)]
 * Remove a lot of obsolete #if 0'd code
 * Add a simple getNodeForValue method to access the ValueMap.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4211 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUse the forward declaration for GraphTraits instead of #including
Chris Lattner [Thu, 17 Oct 2002 01:36:08 +0000 (01:36 +0000)]
Use the forward declaration for GraphTraits instead of #including
the header

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4210 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoCleanup data structure graph printer, eliminate hard coded printing in
Chris Lattner [Thu, 17 Oct 2002 01:02:46 +0000 (01:02 +0000)]
Cleanup data structure graph printer, eliminate hard coded printing in
favor of generic printer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4209 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoBe const correct. Handle both DSGraph* and const DSGraph*'s
Chris Lattner [Thu, 17 Oct 2002 01:01:06 +0000 (01:01 +0000)]
Be const correct.  Handle both DSGraph* and const DSGraph*'s

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4208 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoBreak up the GraphWriter into smaller chunks to be used in different ways
Chris Lattner [Thu, 17 Oct 2002 00:59:59 +0000 (00:59 +0000)]
Break up the GraphWriter into smaller chunks to be used in different ways

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4207 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAs wierd as it feels to type it, const void* is more generic than void*
Chris Lattner [Thu, 17 Oct 2002 00:16:39 +0000 (00:16 +0000)]
As wierd as it feels to type it, const void* is more generic than void*

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4206 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded partial specialization of GraphTraits for the DominatorTree class.
Joel Stanley [Wed, 16 Oct 2002 23:26:00 +0000 (23:26 +0000)]
Added partial specialization of GraphTraits for the DominatorTree class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4205 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agochanges
Nick Hildenbrandt [Wed, 16 Oct 2002 22:12:31 +0000 (22:12 +0000)]
changes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4204 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake sure to print out the call nodes as well
Chris Lattner [Wed, 16 Oct 2002 20:16:16 +0000 (20:16 +0000)]
Make sure to print out the call nodes as well

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4203 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAllow simple nodes to have outgoing edges
Chris Lattner [Wed, 16 Oct 2002 20:15:38 +0000 (20:15 +0000)]
Allow simple nodes to have outgoing edges

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4202 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: CBackend/2002-10-16-External.ll
Chris Lattner [Wed, 16 Oct 2002 20:08:47 +0000 (20:08 +0000)]
Fix bug: CBackend/2002-10-16-External.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4201 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase
Chris Lattner [Wed, 16 Oct 2002 20:08:19 +0000 (20:08 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4200 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago * Print the "return" node in the graphs
Chris Lattner [Wed, 16 Oct 2002 02:04:36 +0000 (02:04 +0000)]
 * Print the "return" node in the graphs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4199 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago * Factor printing code again, add emitSimpleNode method
Chris Lattner [Wed, 16 Oct 2002 02:03:18 +0000 (02:03 +0000)]
 * Factor printing code again, add emitSimpleNode method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4198 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago * Add new DOTGraphTraits::addCustomGraphFeatures method
Chris Lattner [Wed, 16 Oct 2002 01:44:59 +0000 (01:44 +0000)]
 * Add new DOTGraphTraits::addCustomGraphFeatures method

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4197 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoThe second element of the iterator is really an offset, not a link
Chris Lattner [Wed, 16 Oct 2002 01:43:11 +0000 (01:43 +0000)]
The second element of the iterator is really an offset, not a link

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4196 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSpecify the graph name
Chris Lattner [Wed, 16 Oct 2002 01:34:28 +0000 (01:34 +0000)]
Specify the graph name

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4195 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago * Significantly refactor GraphWriter into a class.
Chris Lattner [Wed, 16 Oct 2002 01:34:18 +0000 (01:34 +0000)]
 * Significantly refactor GraphWriter into a class.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4194 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - DSGraph Printing Improvements:
Chris Lattner [Wed, 16 Oct 2002 01:18:27 +0000 (01:18 +0000)]
  - DSGraph Printing Improvements:
     * Print edge source labels again
     * Override node shape to be Mrecord again, instead of just record.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4193 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Generic graph printing infrastructure changes:
Chris Lattner [Wed, 16 Oct 2002 01:18:14 +0000 (01:18 +0000)]
  - Generic graph printing infrastructure changes:
     * Only print outgoing edges from a cell if the destination isn't null.
       This is important for DSGraphs, which have sources with no edges.
     * Allow Node attributes to override shape of the node

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4192 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAllow direct access to mergemap for printing
Chris Lattner [Wed, 16 Oct 2002 01:17:16 +0000 (01:17 +0000)]
Allow direct access to mergemap for printing

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4191 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: test/Regression/CBackend/2002-10-15-OpaqueTypeProblem.ll
Chris Lattner [Wed, 16 Oct 2002 00:08:22 +0000 (00:08 +0000)]
Fix bug: test/Regression/CBackend/2002-10-15-OpaqueTypeProblem.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4190 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase
Chris Lattner [Wed, 16 Oct 2002 00:08:08 +0000 (00:08 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4189 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Fix bug: Assembler/2002-10-15-NameClash.ll
Chris Lattner [Tue, 15 Oct 2002 21:41:14 +0000 (21:41 +0000)]
  - Fix bug: Assembler/2002-10-15-NameClash.ll
  - Clean up code a bit, s/Method/Function/

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4188 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoClean up testcases
Chris Lattner [Tue, 15 Oct 2002 21:39:49 +0000 (21:39 +0000)]
Clean up testcases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4187 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Eliminate SymbolTable::ParentSymTab, ST::localLookup, and
Chris Lattner [Tue, 15 Oct 2002 21:26:29 +0000 (21:26 +0000)]
  - Eliminate SymbolTable::ParentSymTab, ST::localLookup, and
    Function::ParentSymTab.  These aren't needed at all.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4186 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoCleanup test
Chris Lattner [Tue, 15 Oct 2002 21:21:42 +0000 (21:21 +0000)]
Cleanup test

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4185 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix typo
Chris Lattner [Tue, 15 Oct 2002 21:20:18 +0000 (21:20 +0000)]
Fix typo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4184 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase
Chris Lattner [Tue, 15 Oct 2002 21:18:03 +0000 (21:18 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4183 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoCleanup testcase
Chris Lattner [Tue, 15 Oct 2002 21:14:24 +0000 (21:14 +0000)]
Cleanup testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4182 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix testcase
Chris Lattner [Tue, 15 Oct 2002 21:10:53 +0000 (21:10 +0000)]
Fix testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4181 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Fix LLI so that it simulates the endianness of the target machine
Chris Lattner [Tue, 15 Oct 2002 20:34:05 +0000 (20:34 +0000)]
  - Fix LLI so that it simulates the endianness of the target machine
    correctly, despite the fact that the host machine might not be the same.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4180 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake sure to escape \'s when they are output
Chris Lattner [Tue, 15 Oct 2002 19:56:24 +0000 (19:56 +0000)]
Make sure to escape \'s when they are output

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4179 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove outdated line which of course cvs merging never detects...
Vikram S. Adve [Tue, 15 Oct 2002 01:59:45 +0000 (01:59 +0000)]
Remove outdated line which of course cvs merging never detects...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4175 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Add an endianness field to the TargetData datastructure
Chris Lattner [Mon, 14 Oct 2002 22:41:13 +0000 (22:41 +0000)]
  - Add an endianness field to the TargetData datastructure

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4174 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAllow the Source variable to be overridden completely if needed.
Vikram S. Adve [Mon, 14 Oct 2002 16:40:04 +0000 (16:40 +0000)]
Allow the Source variable to be overridden completely if needed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4172 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoPrint "circular" warning message only in debug mode.
Vikram S. Adve [Mon, 14 Oct 2002 16:32:49 +0000 (16:32 +0000)]
Print "circular" warning message only in debug mode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4170 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemoved misleading const keyword.
Vikram S. Adve [Mon, 14 Oct 2002 16:32:24 +0000 (16:32 +0000)]
Removed misleading const keyword.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4169 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSignificant improvement: GEP used by a load or store no longer generates
Vikram S. Adve [Mon, 14 Oct 2002 16:30:55 +0000 (16:30 +0000)]
Significant improvement: GEP used by a load or store no longer generates
a separate ADD; instead just use the indexed load/store instruction!
Also, a bug fix: folding a GEP with a leading non-zero index with
its predecessor was incorrect: now it only happens if the predecessor
is pointing to an indexable type (aka SequentialType).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4168 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoTest case that shows some poor results for register allocation.
Vikram S. Adve [Mon, 14 Oct 2002 14:53:06 +0000 (14:53 +0000)]
Test case that shows some poor results for register allocation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4167 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAllow emission of names that start with an underscore. This is needed to
Chris Lattner [Mon, 14 Oct 2002 06:14:18 +0000 (06:14 +0000)]
Allow emission of names that start with an underscore.  This is needed to
interface with code that uses symbols in the ansi-c protected namespace.  In
most cases this comes from system header files, such as stdio.h.  In particular,
without this change, a reference to the __iob symbol is mangled into ll_iob,
which is not resolved by libc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4165 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMAke sure llc output is regenerated if the LLC binary changes.
Chris Lattner [Mon, 14 Oct 2002 06:12:10 +0000 (06:12 +0000)]
MAke sure llc output is regenerated if the LLC binary changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4164 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoClean up code a bit, no functionality changes.
Chris Lattner [Mon, 14 Oct 2002 03:34:17 +0000 (03:34 +0000)]
Clean up code a bit, no functionality changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4162 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoThere is no way to guarantee that constants are not forward referenced.
Chris Lattner [Mon, 14 Oct 2002 03:33:02 +0000 (03:33 +0000)]
There is no way to guarantee that constants are not forward referenced.
Handle forward referenced constants in a general way.  This fixes bug:
Assembler/2002-10-13-ConstantEncodingProblem.llx and allows the SPEC
197.parser benchmark to be built

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4161 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Dramatically simplify the Constant::mutateReferences implementation,
Chris Lattner [Mon, 14 Oct 2002 03:30:23 +0000 (03:30 +0000)]
  - Dramatically simplify the Constant::mutateReferences implementation,
    allowing it to be called on all constant types (structures/arrays)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4160 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoThis loop executed exactly one time, turn it into straightline code
Chris Lattner [Mon, 14 Oct 2002 03:28:42 +0000 (03:28 +0000)]
This loop executed exactly one time, turn it into straightline code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4159 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMore results
Nick Hildenbrandt [Mon, 14 Oct 2002 01:08:06 +0000 (01:08 +0000)]
More results

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4158 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMinor cleanups, no changes to functionality
Chris Lattner [Mon, 14 Oct 2002 00:48:57 +0000 (00:48 +0000)]
Minor cleanups, no changes to functionality

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4157 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMore successes
Nick Hildenbrandt [Sun, 13 Oct 2002 22:43:11 +0000 (22:43 +0000)]
More successes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4156 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew Results
Nick Hildenbrandt [Sun, 13 Oct 2002 22:10:08 +0000 (22:10 +0000)]
New Results

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4155 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSimplify again
Chris Lattner [Sun, 13 Oct 2002 21:51:55 +0000 (21:51 +0000)]
Simplify again

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4154 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't try to compute the size of an "array" element if the index is 0:
Vikram S. Adve [Sun, 13 Oct 2002 21:47:44 +0000 (21:47 +0000)]
Don't try to compute the size of an "array" element if the index is 0:
the size may be unknown, and is not needed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4153 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSimplify testcase
Chris Lattner [Sun, 13 Oct 2002 21:47:43 +0000 (21:47 +0000)]
Simplify testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4152 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRename test so that we can run the disassembler on it.
Chris Lattner [Sun, 13 Oct 2002 21:43:56 +0000 (21:43 +0000)]
Rename test so that we can run the disassembler on it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4151 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoChecking testcase for bytecode reader/writer that is causing the SPEC parser
Chris Lattner [Sun, 13 Oct 2002 21:38:21 +0000 (21:38 +0000)]
Checking testcase for bytecode reader/writer that is causing the SPEC parser
benchmark to not build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4150 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Change Function's so that their argument list is populated when they are
Chris Lattner [Sun, 13 Oct 2002 20:57:00 +0000 (20:57 +0000)]
  - Change Function's so that their argument list is populated when they are
    constructed.  Before, external functions would have an empty argument list,
    now a Function ALWAYS has a populated argument list.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4149 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Rename Instruction::First*Op to *OpsBegin, and Num*Ops to *OpsEnd to
Chris Lattner [Sun, 13 Oct 2002 19:39:16 +0000 (19:39 +0000)]
  - Rename Instruction::First*Op to *OpsBegin, and Num*Ops to *OpsEnd to
    reflect the fact that it's a range being defined.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4147 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoHalfway conversion from custom printing to GraphWriter printing
Chris Lattner [Sun, 13 Oct 2002 19:31:57 +0000 (19:31 +0000)]
Halfway conversion from custom printing to GraphWriter printing

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4146 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFirst crack at reimplementing graph traits for DSGraphs
Chris Lattner [Sun, 13 Oct 2002 19:31:34 +0000 (19:31 +0000)]
First crack at reimplementing graph traits for DSGraphs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4145 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agodisable the unused "pointer" member
Chris Lattner [Sun, 13 Oct 2002 19:30:44 +0000 (19:30 +0000)]
disable the unused "pointer" member

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4144 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAccount for global variables resolved more accurately.
Chris Lattner [Sun, 13 Oct 2002 17:30:30 +0000 (17:30 +0000)]
Account for global variables resolved more accurately.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4143 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUse methods that are more explanatory
Chris Lattner [Sun, 13 Oct 2002 17:12:47 +0000 (17:12 +0000)]
Use methods that are more explanatory

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4142 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd dummy entries to document what members can be added
Chris Lattner [Sun, 13 Oct 2002 17:12:05 +0000 (17:12 +0000)]
Add dummy entries to document what members can be added

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4141 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd a test for folding a GEP into a load.
Vikram S. Adve [Sun, 13 Oct 2002 00:44:00 +0000 (00:44 +0000)]
Add a test for folding a GEP into a load.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4139 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUse vectors instead of hash_maps for issueGaps and conflictLists.
Vikram S. Adve [Sun, 13 Oct 2002 00:40:37 +0000 (00:40 +0000)]
Use vectors instead of hash_maps for issueGaps and conflictLists.
These hash lookups were a major sink of time because they happen so often!
Also, add option to disable scheduling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4138 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMajor bug fix: was not adding CD edges for RETURNs!
Vikram S. Adve [Sun, 13 Oct 2002 00:39:22 +0000 (00:39 +0000)]
Major bug fix: was not adding CD edges for RETURNs!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4137 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUse vectors instead of hash_maps for issueGaps and conflictLists.
Vikram S. Adve [Sun, 13 Oct 2002 00:37:46 +0000 (00:37 +0000)]
Use vectors instead of hash_maps for issueGaps and conflictLists.
These hash lookups were a major sink of time because they happen so often!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4136 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRun LICM before GCSE!
Vikram S. Adve [Sun, 13 Oct 2002 00:34:10 +0000 (00:34 +0000)]
Run LICM before GCSE!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4135 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSeveral major fixes, particularly in emitting constant aggregates:
Vikram S. Adve [Sun, 13 Oct 2002 00:32:18 +0000 (00:32 +0000)]
Several major fixes, particularly in emitting constant aggregates:
(1) Padding bytes between structure fields (for alignment) were never
    being emitted into the constant pool so the layout did not match!
(2) In printing constants, structures containing structures or arrays
    were never handled.
(3) Support new model for external/uninitialized/initialized globals.
    Uninitialized globals are no longer emitted since they are external.
    Initialized globals may go either in .bss or in .data.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4134 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't use %l0 for large operands to a SAVE since it is needed *before* SAVE!
Vikram S. Adve [Sun, 13 Oct 2002 00:24:06 +0000 (00:24 +0000)]
Don't use %l0 for large operands to a SAVE since it is needed *before* SAVE!
We now use %g1 instead since that is shared and volatile.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4133 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't mark JMPLCALL and JMPLRET as branches.
Vikram S. Adve [Sun, 13 Oct 2002 00:22:32 +0000 (00:22 +0000)]
Don't mark JMPLCALL and JMPLRET as branches.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4132 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago*** empty log message ***
Nick Hildenbrandt [Sun, 13 Oct 2002 00:20:48 +0000 (00:20 +0000)]
*** empty log message ***

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4131 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago(1) Try to evaluate constant when multiplying 2 constants.
Vikram S. Adve [Sun, 13 Oct 2002 00:18:57 +0000 (00:18 +0000)]
(1) Try to evaluate constant when multiplying 2 constants.
(2) Use intelligent multiply selection code for array allocas.
(3) Don't use cache padding for alloca'd stack slots!
(4) Bug fix in handling call arguments: was not copying sixth FP arg
    to int reg. when calling a function with no prototype.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4130 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoEliminate duplicate target pointer in SparcRegInfo.
Vikram S. Adve [Sun, 13 Oct 2002 00:06:04 +0000 (00:06 +0000)]
Eliminate duplicate target pointer in SparcRegInfo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4129 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoEliminate duplicate target pointer. Also add a few assertions.
Vikram S. Adve [Sun, 13 Oct 2002 00:05:30 +0000 (00:05 +0000)]
Eliminate duplicate target pointer.  Also add a few assertions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4128 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake sure to handle small negative values hiding as large unsigned longs --
Vikram S. Adve [Sun, 13 Oct 2002 00:04:26 +0000 (00:04 +0000)]
Make sure to handle small negative values hiding as large unsigned longs --
this is a common case created by the front-end.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4127 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMajor fix: extract ConstantExpr nodes and decompose them into symbolic
Vikram S. Adve [Sun, 13 Oct 2002 00:01:57 +0000 (00:01 +0000)]
Major fix: extract ConstantExpr nodes and decompose them into symbolic
instructions so that (a) constant folding is done automatically before
code generation, and (b) selection does not have to deal with them.
Also, check for ConstantPointerRefs in additional to GlobalValues
when creating a GEP to load a global address.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4126 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded inline constant expressions, including uses in binary subtract.
Vikram S. Adve [Sat, 12 Oct 2002 23:47:36 +0000 (23:47 +0000)]
Added inline constant expressions, including uses in binary subtract.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4125 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase that causes invalid llvm to be emitted by cfe
Chris Lattner [Sat, 12 Oct 2002 23:37:34 +0000 (23:37 +0000)]
New testcase that causes invalid llvm to be emitted by cfe

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4124 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Fix extract to work with constant pointer refs correctly
Chris Lattner [Sat, 12 Oct 2002 20:50:16 +0000 (20:50 +0000)]
* Fix extract to work with constant pointer refs correctly
* Extract makes all global vars external, so they don't have initializers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4121 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoChanged to external global var
Anand Shukla [Sat, 12 Oct 2002 20:33:47 +0000 (20:33 +0000)]
Changed to external global var

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4120 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago*** empty log message ***
Nick Hildenbrandt [Fri, 11 Oct 2002 22:22:12 +0000 (22:22 +0000)]
*** empty log message ***

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4119 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInstead of adding stdlib we just prototype malloc correctly.
Nick Hildenbrandt [Fri, 11 Oct 2002 21:40:44 +0000 (21:40 +0000)]
Instead of adding stdlib we just prototype malloc correctly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4118 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSun requires you to include stdlib to use malloc
Nick Hildenbrandt [Fri, 11 Oct 2002 18:41:44 +0000 (18:41 +0000)]
Sun requires you to include stdlib to use malloc

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4117 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMajor bug fix: spill code for an instruction in a delay slot was
Vikram S. Adve [Fri, 11 Oct 2002 16:12:40 +0000 (16:12 +0000)]
Major bug fix: spill code for an instruction in a delay slot was
merrily being inserted before/after the instruction!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4116 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't pad variables in stack slots for performance!
Vikram S. Adve [Fri, 11 Oct 2002 16:10:53 +0000 (16:10 +0000)]
Don't pad variables in stack slots for performance!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4115 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUse PARALLEL_DIRS.
Vikram S. Adve [Fri, 11 Oct 2002 16:08:17 +0000 (16:08 +0000)]
Use PARALLEL_DIRS.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4114 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded capability to get execution count of a loop if it is a predictable
Misha Brukman [Fri, 11 Oct 2002 05:34:32 +0000 (05:34 +0000)]
Added capability to get execution count of a loop if it is a predictable
number of iterations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4113 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded helper functions in LoopInfo: isLoopExit and numBackEdges.
Misha Brukman [Fri, 11 Oct 2002 05:31:10 +0000 (05:31 +0000)]
Added helper functions in LoopInfo: isLoopExit and numBackEdges.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4112 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoExpose API to graph library to allow iteration over all nodes, even unreachable ones
Chris Lattner [Thu, 10 Oct 2002 22:31:31 +0000 (22:31 +0000)]
Expose API to graph library to allow iteration over all nodes, even unreachable ones

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4111 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoChange reference
Chris Lattner [Thu, 10 Oct 2002 22:31:02 +0000 (22:31 +0000)]
Change reference

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4110 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Don't only print out reachable nodes in the graph.
Chris Lattner [Thu, 10 Oct 2002 22:29:51 +0000 (22:29 +0000)]
* Don't only print out reachable nodes in the graph.
  * use new api to get all nodes in the graph
  * Allow custom graph traits

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4109 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd new getGraphProperties that may be specialized by graphs
Chris Lattner [Thu, 10 Oct 2002 22:29:10 +0000 (22:29 +0000)]
Add new getGraphProperties that may be specialized by graphs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4108 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRename DataStructureGraph.h to DSGraphTraits.h
Chris Lattner [Thu, 10 Oct 2002 20:36:37 +0000 (20:36 +0000)]
Rename DataStructureGraph.h to DSGraphTraits.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4107 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoStop using DataStructureGraph.h
Chris Lattner [Thu, 10 Oct 2002 20:33:46 +0000 (20:33 +0000)]
Stop using DataStructureGraph.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4106 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSwitch over to the right sparc c frontend
Chris Lattner [Thu, 10 Oct 2002 19:28:10 +0000 (19:28 +0000)]
Switch over to the right sparc c frontend

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4105 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago - Dramatically simplify the ConstantMerge code now that
Chris Lattner [Wed, 9 Oct 2002 23:16:04 +0000 (23:16 +0000)]
  - Dramatically simplify the ConstantMerge code now that
    Value::replaceAllUsesWith works with constants correctly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4104 91177308-0d34-0410-b5e6-96231b3b80d8