oota-llvm.git
22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 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

22 years ago - Make Value::replaceAllUsesWith work with constants correctly. This fixes
Chris Lattner [Wed, 9 Oct 2002 23:12:59 +0000 (23:12 +0000)]
  - Make Value::replaceAllUsesWith work with constants correctly.  This fixes
    bug FuncResolve/2002-08-19-ResolveGlobalVars.ll and gzip looks better.

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

22 years ago - Add new Constant::replaceUsesOfWithOnConstant which has an end result
Chris Lattner [Wed, 9 Oct 2002 23:12:25 +0000 (23:12 +0000)]
  - Add new Constant::replaceUsesOfWithOnConstant which has an end result
    similar to User::replaceUsesOfWith but actually does the right thing for
    constants.

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

22 years agoMake isExtern() be a virtual function inherited from GlobalValue
Chris Lattner [Wed, 9 Oct 2002 23:11:33 +0000 (23:11 +0000)]
Make isExtern() be a virtual function inherited from GlobalValue

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

22 years agoTable with current status of tests in the /test/Programs/ directory
Nick Hildenbrandt [Wed, 9 Oct 2002 21:49:44 +0000 (21:49 +0000)]
Table with current status of tests in the /test/Programs/ directory

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

22 years agoAlmost a complete rewrite of FunctionResolution to now resolve functions
Chris Lattner [Wed, 9 Oct 2002 21:10:06 +0000 (21:10 +0000)]
Almost a complete rewrite of FunctionResolution to now resolve functions
and global variables.

This fixes bug: FuncResolve/2002-08-19-ResolveGlobalVarsEasier.ll
And bug: SingleSource/UnitTests/2002-10-09-ArrayResolution.c

Note that this does not fix bug:
FunctionResolve/2002-08-19-ResolveGlobalVars.ll because replaceAllUsesWith
breaks when a constantexpr is pointing to the thing being replaced.  This
is more of an infrastructure problem than anything.

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

22 years agoAdd check to see if opt aborts
Chris Lattner [Wed, 9 Oct 2002 20:55:32 +0000 (20:55 +0000)]
Add check to see if opt aborts

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

22 years agoNew testcase
Chris Lattner [Wed, 9 Oct 2002 20:37:13 +0000 (20:37 +0000)]
New testcase

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

22 years agoAvoid having testcases spit out bytecode on error
Chris Lattner [Wed, 9 Oct 2002 20:36:54 +0000 (20:36 +0000)]
Avoid having testcases spit out bytecode on error

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

22 years agoCleanup testcase a lot to test JUST funcresolve of globals
Chris Lattner [Wed, 9 Oct 2002 17:44:34 +0000 (17:44 +0000)]
Cleanup testcase a lot to test JUST funcresolve of globals

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

22 years ago - Detemplatize UseTy<> in Value.h, because it's only instantiated for one
Chris Lattner [Wed, 9 Oct 2002 00:42:03 +0000 (00:42 +0000)]
  - Detemplatize UseTy<> in Value.h, because it's only instantiated for one
    type!

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

22 years agoAdded a major mode for Emacs to edit LLVM assembler code with syntax
Misha Brukman [Wed, 9 Oct 2002 00:30:20 +0000 (00:30 +0000)]
Added a major mode for Emacs to edit LLVM assembler code with syntax
highlighting.

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

22 years agoMinor, non-functionality changing, formatting fix
Chris Lattner [Wed, 9 Oct 2002 00:25:32 +0000 (00:25 +0000)]
Minor, non-functionality changing, formatting fix

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

22 years ago - Remove Value::use_remove
Chris Lattner [Wed, 9 Oct 2002 00:25:05 +0000 (00:25 +0000)]
  - Remove Value::use_remove

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

22 years ago - Remove Value::use_push_back & Value::use_remove
Chris Lattner [Wed, 9 Oct 2002 00:25:01 +0000 (00:25 +0000)]
  - Remove Value::use_push_back & Value::use_remove

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

22 years ago - Rename MTy to FTy (no methods exist anymore)
Chris Lattner [Wed, 9 Oct 2002 00:16:00 +0000 (00:16 +0000)]
  - Rename MTy to FTy (no methods exist anymore)
  - Fix bug: LevelRaise/2002-10-08-VarArgCallInfLoop.ll

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

22 years agoNew testcase for infinite loop that the raise pass is getting into
Chris Lattner [Wed, 9 Oct 2002 00:09:59 +0000 (00:09 +0000)]
New testcase for infinite loop that the raise pass is getting into

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

22 years agoFix NASTY N^2 behavior that was causing the gzip benchmark to take forever to
Chris Lattner [Tue, 8 Oct 2002 23:46:55 +0000 (23:46 +0000)]
Fix NASTY N^2 behavior that was causing the gzip benchmark to take forever to
assemble.  Now we scan the use-list from the back when removing users instead
of from the front.

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

22 years agoFix bug: Assembler/2002-10-08-LargeArrayPerformance.ll by using
Chris Lattner [Tue, 8 Oct 2002 23:33:52 +0000 (23:33 +0000)]
Fix bug: Assembler/2002-10-08-LargeArrayPerformance.ll by using
std::vector::reserve when possible

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

22 years agoNew testcase that the assembler is unacceptably slow on
Chris Lattner [Tue, 8 Oct 2002 22:35:04 +0000 (22:35 +0000)]
New testcase that the assembler is unacceptably slow on

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

22 years ago - Fix bug: LevelRaise/2002-10-08-VarArgCall.ll
Chris Lattner [Tue, 8 Oct 2002 22:19:25 +0000 (22:19 +0000)]
  - Fix bug: LevelRaise/2002-10-08-VarArgCall.ll

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

22 years agoNew testcase for bug that messes up the CWriter
Chris Lattner [Tue, 8 Oct 2002 21:57:49 +0000 (21:57 +0000)]
New testcase for bug that messes up the CWriter

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

22 years ago - Fix bug: cee/2002-10-07-NoImmediateDominator.ll
Chris Lattner [Tue, 8 Oct 2002 21:53:51 +0000 (21:53 +0000)]
  - Fix bug: cee/2002-10-07-NoImmediateDominator.ll

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

22 years agoChanges to support PHINode::removeIncoming changes
Chris Lattner [Tue, 8 Oct 2002 21:36:34 +0000 (21:36 +0000)]
Changes to support PHINode::removeIncoming changes

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

22 years agoChanges to support PHINode::removeIncoming changes
Chris Lattner [Tue, 8 Oct 2002 21:36:33 +0000 (21:36 +0000)]
Changes to support PHINode::removeIncoming changes

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

22 years ago - Change PHINode::removeIncomingValue to delete the phi node if the last
Chris Lattner [Tue, 8 Oct 2002 21:34:58 +0000 (21:34 +0000)]
  - Change PHINode::removeIncomingValue to delete the phi node if the last
    incoming value is removed!

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

22 years ago - Checkin LARGE number of Changes to CEE pass that will make it much more
Chris Lattner [Tue, 8 Oct 2002 21:34:15 +0000 (21:34 +0000)]
  - Checkin LARGE number of Changes to CEE pass that will make it much more
    powerful, but that are largely disabled.  The basic idea here is that it
    is trying to forward branches across basic blocks that have PHI nodes in
    it, which are crucial to be able to handle cases like whet.ll.
    Unfortunately we are not updating SSA correctly, causing sim.c to die, and I
    don't have time to fix the regression now, so I must disable the
    functionality.

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

22 years agoBy default PHINode::removeIncomingValue will delete the phi node if the last
Chris Lattner [Tue, 8 Oct 2002 21:31:56 +0000 (21:31 +0000)]
By default PHINode::removeIncomingValue will delete the phi node if the last
incoming value is deleted!

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

22 years agoExpose isCriticalEdge & SplitCriticalEdge methods from crit-edges pass
Chris Lattner [Tue, 8 Oct 2002 21:06:27 +0000 (21:06 +0000)]
Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges pass

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

22 years agoExpose new "recalculate" method from dominatorset
Chris Lattner [Tue, 8 Oct 2002 19:12:08 +0000 (19:12 +0000)]
Expose new "recalculate" method from dominatorset

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

22 years agoCleanup testcase
Chris Lattner [Tue, 8 Oct 2002 19:11:21 +0000 (19:11 +0000)]
Cleanup testcase

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

22 years agoMake test more interesting by adding dummy phi node
Chris Lattner [Tue, 8 Oct 2002 19:11:02 +0000 (19:11 +0000)]
Make test more interesting by adding dummy phi node

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

22 years agoIt is illegal for PHI nodes to have zero values, delete the code to handle them
Chris Lattner [Tue, 8 Oct 2002 17:07:39 +0000 (17:07 +0000)]
It is illegal for PHI nodes to have zero values, delete the code to handle them

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

22 years agoFold ashr -1, X into -1
Chris Lattner [Tue, 8 Oct 2002 16:16:40 +0000 (16:16 +0000)]
Fold ashr -1, X into -1

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

22 years agoAdd new testcase for arithmetic shr of -1
Chris Lattner [Tue, 8 Oct 2002 16:10:35 +0000 (16:10 +0000)]
Add new testcase for arithmetic shr of -1

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

22 years agoThis test was mistakenly matching 'predecessors' that the new asmwriter
Chris Lattner [Tue, 8 Oct 2002 16:09:47 +0000 (16:09 +0000)]
This test was mistakenly matching 'predecessors' that the new asmwriter
spits out

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

22 years agoLLVM syntax highlighting for VIM.
Nick Hildenbrandt [Mon, 7 Oct 2002 22:54:48 +0000 (22:54 +0000)]
LLVM syntax highlighting for VIM.

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

22 years agoDon't rotate paper.
Chris Lattner [Mon, 7 Oct 2002 22:37:03 +0000 (22:37 +0000)]
Don't rotate paper.

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

22 years agoNew testcase
Chris Lattner [Mon, 7 Oct 2002 20:32:38 +0000 (20:32 +0000)]
New testcase

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

22 years agoFix testcase to run correctly, add description
Chris Lattner [Mon, 7 Oct 2002 20:25:45 +0000 (20:25 +0000)]
Fix testcase to run correctly, add description

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

22 years agoFinally I'm able to distill a testcase for a problem I'm seeing!
Chris Lattner [Mon, 7 Oct 2002 20:05:27 +0000 (20:05 +0000)]
Finally I'm able to distill a testcase for a problem I'm seeing!

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

22 years ago - Implement a new -print-cfg option for analyze, that causes it to print the
Chris Lattner [Mon, 7 Oct 2002 18:38:01 +0000 (18:38 +0000)]
  - Implement a new -print-cfg option for analyze, that causes it to print the
    CFG of each function in the module to 'dot' files.

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

22 years ago - Allow printing generic LLVM graphs to 'dot' files, so they can be
Chris Lattner [Mon, 7 Oct 2002 18:37:10 +0000 (18:37 +0000)]
  - Allow printing generic LLVM graphs to 'dot' files, so they can be
    visualized easily.

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