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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Chris Lattner [Mon, 7 Oct 2002 18:34:32 +0000 (18:34 +0000)]
Non-functionality change just to make it more clear what is going on
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4060
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 7 Oct 2002 18:33:53 +0000 (18:33 +0000)]
Avoid making external global variables internal
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4059
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 7 Oct 2002 17:13:22 +0000 (17:13 +0000)]
Fix bug in last checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4058
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 7 Oct 2002 17:00:53 +0000 (17:00 +0000)]
Update testcase to be legal llvm
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4057
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 7 Oct 2002 16:59:51 +0000 (16:59 +0000)]
Remove really old testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4056
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 7 Oct 2002 16:53:22 +0000 (16:53 +0000)]
Implement operator= for SuccIterators
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4055
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 23:31:09 +0000 (23:31 +0000)]
Checkin new "feature" test for cee
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4054
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 23:05:38 +0000 (23:05 +0000)]
NEw "feature" test that cee should eventually handle
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4053
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 22:48:09 +0000 (22:48 +0000)]
Global variables are now external if they don't have initializers, not
"uninitialized"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4052
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 22:47:32 +0000 (22:47 +0000)]
Check that we don't have external varaibles with internal linkage
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4051
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 22:45:09 +0000 (22:45 +0000)]
The parser now accepts "external" global variables, in addition to the backwards
compatible "uninitialized" global variables
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4050
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 22:43:49 +0000 (22:43 +0000)]
- Cleaned up all of the test/Feature tests to not use uint's with
getelementptr instructions and not to add pointers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4049
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 22:35:56 +0000 (22:35 +0000)]
Remove old crusty test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4048
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 22:32:38 +0000 (22:32 +0000)]
Test "external" modifier on global variable
Fix getelementptr instruction to use long isntead of uint index
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4047
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 22:29:58 +0000 (22:29 +0000)]
- Add new isExternal() method to GlobalVariable to mirror Function.
- doxygenize comments and add new comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4046
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 21:30:04 +0000 (21:30 +0000)]
- The extract tool now is sure to extract the function implementation for
the specified name instead of extracting the prototype if both exist.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4045
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 6 Oct 2002 21:00:31 +0000 (21:00 +0000)]
PHI nodes are not allowed to exist with zero incoming values, check that
there aren't any like this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4044
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Sat, 5 Oct 2002 23:43:10 +0000 (23:43 +0000)]
Bug fix: In preventing static global variables from being printed twice,
I also prevented external globals from being printed twice, but they
should (extern declaration and definition).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4043
91177308-0d34-0410-b5e6-
96231b3b80d8
Anand Shukla [Fri, 4 Oct 2002 23:57:01 +0000 (23:57 +0000)]
Added #include<unistd.h> to compile with solaris gcc3.2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4042
91177308-0d34-0410-b5e6-
96231b3b80d8
Anand Shukla [Fri, 4 Oct 2002 23:56:18 +0000 (23:56 +0000)]
added cast to unsigned to compile with gcc3.2 (sparc)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4041
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 Oct 2002 23:29:40 +0000 (23:29 +0000)]
New testcase for bug never checked into CVS, but that I hit during debugging a
new feature
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4039
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 Oct 2002 14:50:20 +0000 (14:50 +0000)]
Handle post dominance correctly in the case where blocks do not have a path to
the exit node.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4038
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 4 Oct 2002 14:45:48 +0000 (14:45 +0000)]
Fix a nasty problem with dominance calculation for unreachable blocks.
If we had a CFG that look like Entry -> B, Unreachable -> B, then we would
not correctly determine that Entry dominated B, because Entry did not
apparently dominate "unreachable". This patch fixes this by making the entry
node dominate all blocks, including unreachable ones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4037
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Oct 2002 21:55:28 +0000 (21:55 +0000)]
Prune function nodes that are no longer referenced due to inlining
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4036
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Oct 2002 21:55:13 +0000 (21:55 +0000)]
sgefa uses truely huge data structures nodes. Only print part of them if they
are so big
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4035
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Oct 2002 21:08:20 +0000 (21:08 +0000)]
The wall clock timer (implementing using the RTC or cycle counter on x86) is
so much more accurate than the per process timers that we get better results
(less noise) by sorting according to wall time than process time.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4034
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Oct 2002 21:06:38 +0000 (21:06 +0000)]
Handle bug exposed by power benchmark
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4033
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Hildenbrandt [Thu, 3 Oct 2002 20:47:24 +0000 (20:47 +0000)]
Add parens around constant calls to getelemptr to properly associate the reference
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4032
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Oct 2002 20:38:41 +0000 (20:38 +0000)]
Reimplement/port the Bottom Up Closure pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4031
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 3 Oct 2002 20:06:33 +0000 (20:06 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4030
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Oct 2002 22:14:38 +0000 (22:14 +0000)]
DataStructure.h doesn't include DSGraph.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4029
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Oct 2002 22:14:17 +0000 (22:14 +0000)]
Remove commented out stuff
DataStructure.h doesn't include DSGraph.h now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4028
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 2 Oct 2002 21:55:52 +0000 (21:55 +0000)]
Move GlobalDSGraph class defn to the end of the file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4027
91177308-0d34-0410-b5e6-
96231b3b80d8