Chris Lattner
1fcfaf5bc0
Fix bug: Assembler/2003-04-25-UnresolvedGlobalReference.ll
...
llvm-svn: 5948
2003-04-25 21:47:33 +00:00
Chris Lattner
d2a969dd98
New testcase
...
llvm-svn: 5947
2003-04-25 20:09:17 +00:00
Chris Lattner
9501cefa9f
Fix bugs in testcase
...
llvm-svn: 5946
2003-04-25 19:49:36 +00:00
Chris Lattner
fde0022b90
Add comment
...
llvm-svn: 5945
2003-04-25 18:44:30 +00:00
Chris Lattner
01971e1267
Only do the %ld -> %lld promotion when running a 64 bit bytecode on a 32 bit host
...
llvm-svn: 5942
2003-04-25 18:28:44 +00:00
Chris Lattner
4c5245b144
Add __strdup
...
llvm-svn: 5941
2003-04-25 18:23:38 +00:00
Chris Lattner
be2d24e3b5
Fix BasicAA/2003-04-25-GEPCrash.ll
...
llvm-svn: 5940
2003-04-25 18:03:06 +00:00
Chris Lattner
25047dd9b9
New testcase
...
llvm-svn: 5939
2003-04-25 17:59:02 +00:00
Chris Lattner
6fac66e2cc
MAke sure that LLI properly configures align_of(double)
...
llvm-svn: 5938
2003-04-25 06:15:05 +00:00
Chris Lattner
b05f851d59
Whoops, 32 bit targets have _4_ byte pointers, not _32_ byte pointers!
...
llvm-svn: 5937
2003-04-25 06:06:43 +00:00
Chris Lattner
8d6d4257a0
Make sure to copy double alignment as well
...
llvm-svn: 5936
2003-04-25 06:06:13 +00:00
Chris Lattner
afdf01ef62
Fix compatibility bug: X86 aligns doubles to 4 bytes, not 8!
...
llvm-svn: 5935
2003-04-25 06:05:57 +00:00
Chris Lattner
d64b2de3c8
Kill using declarations
...
llvm-svn: 5934
2003-04-25 05:26:11 +00:00
Chris Lattner
d6df41d389
Fix method name type-o
...
llvm-svn: 5933
2003-04-25 05:23:27 +00:00
Chris Lattner
efbae9cff1
Fix obvious type-o
...
llvm-svn: 5932
2003-04-25 05:23:10 +00:00
Chris Lattner
21a7218c5f
Make sure to add a targetdata instance to the passmanager, and make it match the
...
one in use by the TargetMachine
llvm-svn: 5931
2003-04-25 05:22:29 +00:00
Chris Lattner
ba90675054
Fix problem where we would read 64 bits worth of pointer information, even on 32 bit targets!
...
llvm-svn: 5930
2003-04-25 04:21:19 +00:00
Chris Lattner
3c98276168
Fix major problem with PHI node traversal: rechecking PHIs should go into
...
the visit function. The worklist is for when their lattice value changes.
llvm-svn: 5927
2003-04-25 03:35:10 +00:00
Chris Lattner
0347cda8b8
Rename Kept -> Suffix
...
FIX problem where we were incorrectly putting the prefix of the list into the "suffix" list.
llvm-svn: 5926
2003-04-25 03:16:33 +00:00
Chris Lattner
4a1a9d2cdd
Rename Kept -> Suffix
...
Fix problem where we accidentally returned KeepPrefix instead of KeepSuffix!
llvm-svn: 5925
2003-04-25 03:16:05 +00:00
Chris Lattner
e17c1c5ad8
** CORRECTLY, conservatively handle constant expressions
...
llvm-svn: 5924
2003-04-25 02:52:06 +00:00
Chris Lattner
a2f7d23e9a
*** Huge: Make constantexprs be handled correctly, conservatively
...
llvm-svn: 5923
2003-04-25 02:51:46 +00:00
Chris Lattner
e483398516
Allow for easy detection of when a "default" TargetData is created by the
...
passmanager, which is never the right thing to do.
llvm-svn: 5922
2003-04-25 02:50:45 +00:00
Chris Lattner
06aa504555
Default ctor doesn't provide name
...
llvm-svn: 5921
2003-04-25 02:50:19 +00:00
Chris Lattner
cccc5c76c8
Minor non-functional changes:
...
* Spell propagate right
* Improve performance of phi node handling
* Delete using directive
* Other minor changes
llvm-svn: 5920
2003-04-25 02:50:03 +00:00
Chris Lattner
3a2fe67908
Fix bug: mem2reg/2003-04-24-MultipleIdenticalSuccessors.ll
...
llvm-svn: 5919
2003-04-25 00:54:58 +00:00
Chris Lattner
65e5f653fd
Big programs have tons of global variable initializers, and most passes don't care
...
about them. Try to delete them if it doesn't affect the passes.
llvm-svn: 5918
2003-04-25 00:53:05 +00:00
Chris Lattner
b0143880f4
When cleaning up the final bytecode file, make sure to run DTE as well
...
llvm-svn: 5917
2003-04-25 00:52:30 +00:00
Chris Lattner
0cd5d533d0
New testcase
...
llvm-svn: 5916
2003-04-25 00:46:14 +00:00
Chris Lattner
f32939bbc9
Speed up convergence significantly and also reduce the size of testcases by making large portions of a function's CFG dead at a time.
...
llvm-svn: 5915
2003-04-24 23:51:38 +00:00
Chris Lattner
de39f2bdac
The big fix is this change:
...
- if (I->isExternal() && !Functions.count(I))
+ if (!I->isExternal() && !Functions.count(I))
We were not actually deleting any functions from the module!
llvm-svn: 5914
2003-04-24 22:54:06 +00:00
Chris Lattner
10c0469be1
Remove dead functions
...
llvm-svn: 5913
2003-04-24 22:53:24 +00:00
Chris Lattner
c3380918a5
Make sure that deleted functions have external linkage
...
llvm-svn: 5912
2003-04-24 22:53:01 +00:00
Chris Lattner
1d080f24c5
Use the list reducer to improve convergence speed and to support crashes that
...
only occur when multiple passes interact or when multiple functions exist in a module
llvm-svn: 5911
2003-04-24 22:24:58 +00:00
Chris Lattner
ba159e2824
Adjust to match new ListReducer interface
...
Move function to generic code
llvm-svn: 5910
2003-04-24 22:24:22 +00:00
Chris Lattner
69f8e6f7aa
Allow reducer interfaces to mutate the lists passed in
...
llvm-svn: 5909
2003-04-24 22:23:56 +00:00
Chris Lattner
39388ca08e
Move function from Miscompilation.cpp
...
llvm-svn: 5908
2003-04-24 22:23:34 +00:00
Chris Lattner
9f5a197eb6
Move the ListReducer Class into it's own header file instead of living in Miscompilation.cpp
...
llvm-svn: 5907
2003-04-24 20:16:29 +00:00
Chris Lattner
60430423c9
Fix a nasty bug where the ConstantMerge pass was invalidating the TargetData pass
...
even though it was immutable. Immutable passes should never end up in CurrentAnalyses!
llvm-svn: 5906
2003-04-24 20:07:38 +00:00
Chris Lattner
b052843bd2
Allow bugpoint to try new an different methods for pruning down lists
...
llvm-svn: 5905
2003-04-24 19:32:42 +00:00
Chris Lattner
d571e2aa91
Make sure to create a target data that matches the Module's target properties.
...
llvm-svn: 5904
2003-04-24 19:13:02 +00:00
Chris Lattner
42516baf76
add a new targetdata ctor to create a target data appropriate to the module
...
llvm-svn: 5903
2003-04-24 19:09:05 +00:00
Chris Lattner
02378422a4
Add new targetdata ctor to create a targetdata appropriate to the module
...
llvm-svn: 5902
2003-04-24 19:08:45 +00:00
Chris Lattner
4ca84cbbde
Remove support for "targetdata pass ctors"
...
llvm-svn: 5901
2003-04-24 18:41:30 +00:00
Chris Lattner
aa038c856a
Remove support for "target data" pass ctors
...
llvm-svn: 5900
2003-04-24 18:36:41 +00:00
Chris Lattner
13cafd041a
Trivial cleanup
...
llvm-svn: 5899
2003-04-24 18:35:51 +00:00
Chris Lattner
0e48f8cb51
LevelRaise now gets target data from passmanager
...
llvm-svn: 5898
2003-04-24 18:26:03 +00:00
Chris Lattner
6e646f1377
LevelRaise now gets TD from passmanager
...
llvm-svn: 5897
2003-04-24 18:25:42 +00:00
Chris Lattner
c1f9206c8c
Make the levelraise pass be well behaved w.r.t the TargetData that the current
...
PassMAnager provides.
llvm-svn: 5896
2003-04-24 18:25:27 +00:00
Chris Lattner
364437e6a3
Fix iterator invalidation problem
...
llvm-svn: 5895
2003-04-24 17:52:20 +00:00