Chris Lattner
5fefc76529
NEw testcase
...
llvm-svn: 3194
2002-07-31 23:54:29 +00:00
Chris Lattner
b1792282eb
Implement the other half of a feature advertised by OperandConvertableToType.
...
This fixes bug: test/Regression/Transforms/LevelRaise/2002-07-31-AssertionFailure.ll
llvm-svn: 3193
2002-07-31 22:31:34 +00:00
Chris Lattner
0e29633a76
Cleanup Makefile a bit
...
llvm-svn: 3192
2002-07-31 21:32:05 +00:00
Vikram S. Adve
836a811861
Just improved comments and assertions.
...
llvm-svn: 3191
2002-07-31 21:13:31 +00:00
Chris Lattner
171e39224f
Trim down testcase a bit
...
llvm-svn: 3190
2002-07-31 21:10:11 +00:00
Chris Lattner
d405f843f4
New testcase for level-raise crash inspired by SPEC
...
llvm-svn: 3189
2002-07-31 21:06:29 +00:00
Vikram S. Adve
d5185db5e8
Add a missing case: converting float/double to unsigned integer types.
...
llvm-svn: 3188
2002-07-31 21:01:34 +00:00
Chris Lattner
15ef3929ae
Changes to be GCC3.1 friendly
...
llvm-svn: 3187
2002-07-31 19:32:14 +00:00
Chris Lattner
303fa649e3
Changes to be GCC3.1 friendly
...
llvm-svn: 3186
2002-07-31 19:32:12 +00:00
Chris Lattner
24f5355b1f
*** empty log message ***
...
llvm-svn: 3185
2002-07-31 19:32:01 +00:00
Chris Lattner
fd41c5e71b
Changes to be GCC 3.1 friendly
...
llvm-svn: 3184
2002-07-31 19:31:59 +00:00
Chris Lattner
ed762542ec
We need iostream in PassManagerT.h to use cerr
...
llvm-svn: 3183
2002-07-31 18:04:17 +00:00
Chris Lattner
af02419459
Fix testcase
...
llvm-svn: 3182
2002-07-31 17:54:24 +00:00
Chris Lattner
bc4d9a426e
New testcase
...
llvm-svn: 3181
2002-07-31 17:52:36 +00:00
Chris Lattner
0e0cc7f027
Testcase that was triggering an incorrect assertion failure
...
llvm-svn: 3180
2002-07-31 17:39:38 +00:00
Chris Lattner
256d7343a9
Verify pass has been run for a long time now
...
llvm-svn: 3179
2002-07-31 17:39:16 +00:00
Chris Lattner
d376feeb74
Add new -only-print-main-ds option that causes mains ds graph to be
...
printed, but no others.
llvm-svn: 3178
2002-07-31 17:15:40 +00:00
Chris Lattner
0e8dd86318
Change command line option message on -q to make it more accurate
...
llvm-svn: 3177
2002-07-31 16:52:49 +00:00
Chris Lattner
e6e1bc4719
Fix bug that was causing problems for lli
...
llvm-svn: 3176
2002-07-31 16:29:43 +00:00
Chris Lattner
53d5b3111d
Remove obsolete, confusing, method
...
llvm-svn: 3175
2002-07-31 01:45:02 +00:00
Chris Lattner
7ea2d72484
This testcase is independant of varargsness
...
Simplify.
llvm-svn: 3174
2002-07-30 22:24:07 +00:00
Vikram S. Adve
6162134b47
Add GlobalDSGraph -- a common graph that holds externally visible nodes.
...
llvm-svn: 3173
2002-07-30 22:08:08 +00:00
Vikram S. Adve
abafb80e33
Print globals graph after either the BU or the TD pass.
...
llvm-svn: 3172
2002-07-30 22:07:26 +00:00
Vikram S. Adve
6152aa7f73
This file implements the top-down propagation pass for data structure graphs.
...
Also, we now use a separate globals graph to hold externally visible nodes.
This changes both the bottom-up and top-down propagation so that
globals and other external objects do not have to appear in every
function, but only in functions in which they are referenced or
they can be used to access something else that is referenced.
llvm-svn: 3171
2002-07-30 22:06:40 +00:00
Vikram S. Adve
b9c05cf65b
Use a separate globals graph to hold externally visible nodes.
...
This changes both the bottom-up and top-down propagation so that
globals and other external objects do not have to appear in every
function, but only in functions in which they are referenced or
they can be used to access something else that is referenced.
llvm-svn: 3170
2002-07-30 22:05:22 +00:00
Vikram S. Adve
8491cdb932
Add GlobalDSGraph -- a common graph that holds externally visible nodes.
...
llvm-svn: 3169
2002-07-30 22:02:04 +00:00
Chris Lattner
a693390c2e
Print the tool name when an error comes from so that I can tell which
...
tool of a pipeline is having issues.
llvm-svn: 3168
2002-07-30 21:43:25 +00:00
Chris Lattner
ea9f0c3c4e
Print the tool name when an error comes from so that I can tell which
...
tool of a pipeline is having issues.
llvm-svn: 3167
2002-07-30 21:43:22 +00:00
Chris Lattner
2223ccb697
Print the tool name when an error comes from so that I can tell which
...
tool of a pipeline is having issues.
llvm-svn: 3166
2002-07-30 19:52:14 +00:00
Chris Lattner
5e3350bca8
Implement new -debug-pass=Arguments option that causes PassManager to
...
print out the command line options for the optimizations it is running.
llvm-svn: 3165
2002-07-30 19:51:02 +00:00
Chris Lattner
372599ed03
Add hooks to get information out of concrete pass manager implementations
...
llvm-svn: 3164
2002-07-30 19:49:39 +00:00
Chris Lattner
f8ca791c68
* Indent class into anonymous namespace, filling up the diff with garbage
...
* Internalize global variables with initializers
* Add new stat to track global variable internalization
* Only count functions that were not internal before in internalized function
count
llvm-svn: 3163
2002-07-30 19:48:44 +00:00
Chris Lattner
c952f6070f
Remove extraneous #includes
...
llvm-svn: 3162
2002-07-30 19:33:19 +00:00
Chris Lattner
1720a4c0b7
Cleanup ConstantExpr handling:
...
* Correctly delete TypeHandles in AsmParser. In addition to not leaking
memory, this prevents a bug that could have occurred when a type got
resolved that the constexpr was using
* Check for errors in the AsmParser instead of hitting assertion failures
deep in the code
* Simplify the interface to the ConstantExpr class, removing unneccesary
parameters to the ::get* methods.
* Rename the 'getelementptr' version of ConstantExpr::get to
ConstantExpr::getGetElementPtr
llvm-svn: 3161
2002-07-30 18:54:25 +00:00
Chris Lattner
12b9a2a7e6
Cleanup ConstantExpr handling:
...
* Correctly delete TypeHandles in AsmParser. In addition to not leaking
memory, this prevents a bug that could have occurred when a type got
resolved that the constexpr was using
* Check for errors in the AsmParser instead of hitting assertion failures
deep in the code
* Simplify the interface to the ConstantExpr class, removing unneccesary
parameters to the ::get* methods.
* Rename the 'getelementptr' version of ConstantExpr::get to
ConstantExpr::getGetElementPtr
llvm-svn: 3160
2002-07-30 18:54:22 +00:00
Chris Lattner
b42a9d7191
Remove invokation of cleangcc pass which has been renamed, and is unneccesary anyway
...
llvm-svn: 3159
2002-07-30 18:01:06 +00:00
Chris Lattner
902619d2f1
Remove FIXME's that aren't really needed after all.
...
llvm-svn: 3158
2002-07-30 16:38:54 +00:00
Chris Lattner
57c110ce62
Declare that these passes only depend on the CFG of the function
...
llvm-svn: 3157
2002-07-30 16:27:52 +00:00
Chris Lattner
c197551e58
* Implement stuff so that code can declare that they only depend on the CFG of
...
a function, not on anything else. This speeds up GCCAS a lot.
llvm-svn: 3156
2002-07-30 16:27:32 +00:00
Chris Lattner
a7bcc10581
* Move some code from Pass.cpp to PassManagerT.h
...
* Implement stuff so that code can declare that they only depend on the CFG of
a function, not on anything else. This speeds up GCCAS a lot.
llvm-svn: 3155
2002-07-30 16:27:02 +00:00
Chris Lattner
a7780b88ae
Implement constant propogation of logical (and, or, xor) expressions.
...
Fixes testcase: test/Regression/Transforms/ConstProp/logicaltest.ll
llvm-svn: 3154
2002-07-30 16:24:28 +00:00
Chris Lattner
a4fb4b46c2
Implement constant propogation of logical (and, or, xor) expressions.
...
Fixes testcase: test/Regression/Transforms/ConstProp/logicaltest.ll
llvm-svn: 3153
2002-07-30 16:24:25 +00:00
Chris Lattner
34164fb6c2
Test that logical operators are correctly constant propogated!
...
llvm-svn: 3152
2002-07-30 16:18:38 +00:00
Chris Lattner
b42ea387da
Add test of newly checked in Union support!
...
llvm-svn: 3151
2002-07-30 06:47:29 +00:00
Chris Lattner
199f82ce4b
Simplify testcase a bit
...
llvm-svn: 3150
2002-07-30 06:07:16 +00:00
Chris Lattner
0cd1a705a7
New testcase found when working on union support *sigh*
...
llvm-svn: 3149
2002-07-30 06:05:40 +00:00
Chris Lattner
6b03d7d268
New testcase distilled from trying to compile burg with LLVM
...
llvm-svn: 3148
2002-07-30 05:57:03 +00:00
Chris Lattner
44a988ebf2
* Move InstructionSelection Pass here instead of living in Sparc.cpp. It
...
is platform independant afterall.
* Object orientize the functions, cleanup code a bit. Instead of static
global functions, the helpers for instruction selection are now part of
the InstructionSelection Pass class.
llvm-svn: 3147
2002-07-30 03:57:36 +00:00
Chris Lattner
82f80aaa16
* Move InstructionSelection pass to lib/CodeGen/InstrSelection so it is
...
shared by backends.
llvm-svn: 3146
2002-07-30 03:56:16 +00:00
Chris Lattner
4b68cd0c61
Expose instruction selection as a pass instead of a global function
...
llvm-svn: 3145
2002-07-30 03:55:29 +00:00