Chris Lattner
83d105d986
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.
llvm-svn: 4099
2002-10-09 21:10:06 +00:00
Chris Lattner
8081455368
Add check to see if opt aborts
...
llvm-svn: 4098
2002-10-09 20:55:32 +00:00
Chris Lattner
a92a64af7c
New testcase
...
llvm-svn: 4097
2002-10-09 20:37:13 +00:00
Chris Lattner
c9ed9a594a
Avoid having testcases spit out bytecode on error
...
llvm-svn: 4096
2002-10-09 20:36:54 +00:00
Chris Lattner
0ca434ecd5
Cleanup testcase a lot to test JUST funcresolve of globals
...
llvm-svn: 4095
2002-10-09 17:44:34 +00:00
Chris Lattner
f4a42d7fb9
- Detemplatize UseTy<> in Value.h, because it's only instantiated for one
...
type!
llvm-svn: 4093
2002-10-09 00:42:03 +00:00
Misha Brukman
690c2d0709
Added a major mode for Emacs to edit LLVM assembler code with syntax
...
highlighting.
llvm-svn: 4092
2002-10-09 00:30:20 +00:00
Chris Lattner
0e7fbf7025
Minor, non-functionality changing, formatting fix
...
llvm-svn: 4091
2002-10-09 00:25:32 +00:00
Chris Lattner
a8dd29787b
- Remove Value::use_remove
...
llvm-svn: 4090
2002-10-09 00:25:05 +00:00
Chris Lattner
bdb409390d
- Remove Value::use_push_back & Value::use_remove
...
llvm-svn: 4089
2002-10-09 00:25:01 +00:00
Chris Lattner
51d98b38f2
- Rename MTy to FTy (no methods exist anymore)
...
- Fix bug: LevelRaise/2002-10-08-VarArgCallInfLoop.ll
llvm-svn: 4088
2002-10-09 00:16:00 +00:00
Chris Lattner
929c9c90be
New testcase for infinite loop that the raise pass is getting into
...
llvm-svn: 4087
2002-10-09 00:09:59 +00:00
Chris Lattner
88de60dd26
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.
llvm-svn: 4086
2002-10-08 23:46:55 +00:00
Chris Lattner
4a72e094f9
Fix bug: Assembler/2002-10-08-LargeArrayPerformance.ll by using
...
std::vector::reserve when possible
llvm-svn: 4085
2002-10-08 23:33:52 +00:00
Chris Lattner
a79cd9c1a0
New testcase that the assembler is unacceptably slow on
...
llvm-svn: 4084
2002-10-08 22:35:04 +00:00
Chris Lattner
e8160b4dd1
- Fix bug: LevelRaise/2002-10-08-VarArgCall.ll
...
llvm-svn: 4083
2002-10-08 22:19:25 +00:00
Chris Lattner
2da5975c47
New testcase for bug that messes up the CWriter
...
llvm-svn: 4082
2002-10-08 21:57:49 +00:00
Chris Lattner
d68e6d1718
- Fix bug: cee/2002-10-07-NoImmediateDominator.ll
...
llvm-svn: 4081
2002-10-08 21:53:51 +00:00
Chris Lattner
c35f54df86
Changes to support PHINode::removeIncoming changes
...
llvm-svn: 4080
2002-10-08 21:36:34 +00:00
Chris Lattner
9c236351fd
Changes to support PHINode::removeIncoming changes
...
llvm-svn: 4079
2002-10-08 21:36:33 +00:00
Chris Lattner
f868df40b9
- Change PHINode::removeIncomingValue to delete the phi node if the last
...
incoming value is removed!
llvm-svn: 4078
2002-10-08 21:34:58 +00:00
Chris Lattner
40df2d9d4c
- 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.
llvm-svn: 4077
2002-10-08 21:34:15 +00:00
Chris Lattner
aa8b6d047c
By default PHINode::removeIncomingValue will delete the phi node if the last
...
incoming value is deleted!
llvm-svn: 4076
2002-10-08 21:31:56 +00:00
Chris Lattner
3cf20c3f14
Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges pass
...
llvm-svn: 4075
2002-10-08 21:06:27 +00:00
Chris Lattner
b9f59f1533
Expose new "recalculate" method from dominatorset
...
llvm-svn: 4074
2002-10-08 19:12:08 +00:00
Chris Lattner
0007480fd4
Cleanup testcase
...
llvm-svn: 4073
2002-10-08 19:11:21 +00:00
Chris Lattner
35c02b84ff
Make test more interesting by adding dummy phi node
...
llvm-svn: 4072
2002-10-08 19:11:02 +00:00
Chris Lattner
b32252aa71
It is illegal for PHI nodes to have zero values, delete the code to handle them
...
llvm-svn: 4071
2002-10-08 17:07:39 +00:00
Chris Lattner
55c7ae3cdc
Fold ashr -1, X into -1
...
llvm-svn: 4070
2002-10-08 16:16:40 +00:00
Chris Lattner
1e39dc6f80
Add new testcase for arithmetic shr of -1
...
llvm-svn: 4069
2002-10-08 16:10:35 +00:00
Chris Lattner
717bd8eb0b
This test was mistakenly matching 'predecessors' that the new asmwriter
...
spits out
llvm-svn: 4068
2002-10-08 16:09:47 +00:00
Nick Hildenbrandt
cf5752f001
LLVM syntax highlighting for VIM.
...
llvm-svn: 4067
2002-10-07 22:54:48 +00:00
Chris Lattner
b7590d8595
Don't rotate paper.
...
llvm-svn: 4066
2002-10-07 22:37:03 +00:00
Chris Lattner
b9cacc43f7
New testcase
...
llvm-svn: 4065
2002-10-07 20:32:38 +00:00
Chris Lattner
0d8fa625ea
Fix testcase to run correctly, add description
...
llvm-svn: 4064
2002-10-07 20:25:45 +00:00
Chris Lattner
21aba702ee
Finally I'm able to distill a testcase for a problem I'm seeing!
...
llvm-svn: 4063
2002-10-07 20:05:27 +00:00
Chris Lattner
3a13076188
- Implement a new -print-cfg option for analyze, that causes it to print the
...
CFG of each function in the module to 'dot' files.
llvm-svn: 4062
2002-10-07 18:38:01 +00:00
Chris Lattner
2378135686
- Allow printing generic LLVM graphs to 'dot' files, so they can be
...
visualized easily.
llvm-svn: 4061
2002-10-07 18:37:10 +00:00
Chris Lattner
c532e35cce
Non-functionality change just to make it more clear what is going on
...
llvm-svn: 4060
2002-10-07 18:34:32 +00:00
Chris Lattner
1a1a1002c4
Avoid making external global variables internal
...
llvm-svn: 4059
2002-10-07 18:33:53 +00:00
Chris Lattner
a79cd8735c
Fix bug in last checkin
...
llvm-svn: 4058
2002-10-07 17:13:22 +00:00
Chris Lattner
80cf2a964b
Update testcase to be legal llvm
...
llvm-svn: 4057
2002-10-07 17:00:53 +00:00
Chris Lattner
b366eddab0
Remove really old testcase
...
llvm-svn: 4056
2002-10-07 16:59:51 +00:00
Chris Lattner
a186714d74
Implement operator= for SuccIterators
...
llvm-svn: 4055
2002-10-07 16:53:22 +00:00
Chris Lattner
f04f2bc929
Checkin new "feature" test for cee
...
llvm-svn: 4054
2002-10-06 23:31:09 +00:00
Chris Lattner
82fa78a6ea
NEw "feature" test that cee should eventually handle
...
llvm-svn: 4053
2002-10-06 23:05:38 +00:00
Chris Lattner
4e19009255
Global variables are now external if they don't have initializers, not
...
"uninitialized"
llvm-svn: 4052
2002-10-06 22:48:09 +00:00
Chris Lattner
d8244f43d4
Check that we don't have external varaibles with internal linkage
...
llvm-svn: 4051
2002-10-06 22:47:32 +00:00
Chris Lattner
6408586b7b
The parser now accepts "external" global variables, in addition to the backwards
...
compatible "uninitialized" global variables
llvm-svn: 4050
2002-10-06 22:45:09 +00:00
Chris Lattner
24e01d2066
- Cleaned up all of the test/Feature tests to not use uint's with
...
getelementptr instructions and not to add pointers.
llvm-svn: 4049
2002-10-06 22:43:49 +00:00