Chris Lattner
3708870ec8
* Get rid of using declaration
...
* Add two compatibility options to work better with new GCC frontend
llvm-svn: 5779
2003-04-16 17:41:08 +00:00
Chris Lattner
1f412aeeb2
Namespacify command line options
...
llvm-svn: 5778
2003-04-16 17:34:29 +00:00
Chris Lattner
7ff2ce9f0b
Minor tweak
...
llvm-svn: 5758
2003-03-31 17:30:35 +00:00
Chris Lattner
44ffd7c373
Make sure that intermediate code is verifier clean to avoid wierd problems.
...
llvm-svn: 5723
2003-03-07 18:17:13 +00:00
Chris Lattner
514c02eb26
* Reduce the number of useless bytecode files produced by bugpoint.
...
- This also speeds it up as the bytecode writer isn't terribly fast.
* Add a new cleanup pass after everything else to run -funcresolve -globaldce
llvm-svn: 5668
2003-02-28 16:13:20 +00:00
Chris Lattner
30f40d94cc
Rename -no-* to -disable-*
...
llvm-svn: 5642
2003-02-26 20:00:41 +00:00
Chris Lattner
c2be148276
Make printing messages nicer
...
llvm-svn: 5616
2003-02-24 20:07:54 +00:00
Chris Lattner
b8450599f3
Add new -no-verify option
...
llvm-svn: 5542
2003-02-12 18:45:08 +00:00
Chris Lattner
4dbe59b5ba
Add a new -no-output option, useful for -aa-eval tests.
...
llvm-svn: 5541
2003-02-12 18:43:33 +00:00
Chris Lattner
e0e1b0d2a6
Fix build problem on sparc
...
llvm-svn: 5428
2003-01-29 18:15:34 +00:00
Chris Lattner
0eb5ce94dd
Make bugpoint *much* more powerful, giving it the capability to delete instructions
...
out of a large function to reduce it.
llvm-svn: 5408
2003-01-23 02:48:33 +00:00
Chris Lattner
892f93730b
Allow creating of passes like levelraise which use a targetdata ctor
...
llvm-svn: 5403
2003-01-22 23:24:11 +00:00
Chris Lattner
208e6e6ff0
link with static versions of some libs to avoid having to pull in all of ipo/ipa and datastructure at all
...
llvm-svn: 5402
2003-01-22 22:14:04 +00:00
Chris Lattner
3fef999fcb
Fix didn't fix the race condition in the makefiles
...
llvm-svn: 5394
2003-01-22 15:41:10 +00:00
Chris Lattner
cff8ebe6a3
Fix race condition in Makefile
...
llvm-svn: 5380
2003-01-21 15:20:50 +00:00
Chris Lattner
d232aaaaa9
* Prune down library list. In particular, llc doesn't need all of IPO, and none of data structure and IPA completely!
...
* Do not keep symbols by default!
llvm-svn: 5375
2003-01-19 21:55:43 +00:00
Chris Lattner
757b304077
Rename header
...
llvm-svn: 5283
2003-01-14 22:57:15 +00:00
Chris Lattner
ae2c1b7f15
Link in lots o libraries
...
llvm-svn: 5269
2003-01-14 21:30:30 +00:00
Chris Lattner
93fbc67720
No longer need scalaropts lib
...
llvm-svn: 5252
2003-01-13 00:58:18 +00:00
Chris Lattner
c864583477
Eliminate direct access to TargetData structure
...
llvm-svn: 5156
2002-12-28 20:00:00 +00:00
Chris Lattner
7c0f86233f
Fix compilation on GCC 3.2
...
llvm-svn: 5136
2002-12-24 00:44:34 +00:00
Chris Lattner
c94e5eeae8
Don't try to buidl jello
...
llvm-svn: 5135
2002-12-24 00:44:26 +00:00
Chris Lattner
5aa5663353
Fixes to compile with GCC 3.2
...
llvm-svn: 5134
2002-12-24 00:39:16 +00:00
Chris Lattner
544f4497d1
Jello is now part of LLI
...
llvm-svn: 5133
2002-12-24 00:14:25 +00:00
Chris Lattner
a0d7b084ef
Substantial changes to refactor LLI to incorporate both the Jello JIT and
...
the traditional LLI interpreter
llvm-svn: 5125
2002-12-23 23:59:41 +00:00
Chris Lattner
5a2f7ec55f
X86 target machine is now parameterizable
...
llvm-svn: 5124
2002-12-23 23:55:01 +00:00
Chris Lattner
de4aa4cf8c
New files for miscompilation detection
...
llvm-svn: 5120
2002-12-23 23:50:16 +00:00
Chris Lattner
d4e0474dcf
Implement the start of the miscompilation detection stuff
...
llvm-svn: 5119
2002-12-23 23:49:59 +00:00
Brian Gaeke
941945785e
brg
...
Add statistic for number of bytes of data area initialized.
We used this statistic in collecting data for the paper, but I forgot
to commit it.
llvm-svn: 5112
2002-12-22 18:53:23 +00:00
Chris Lattner
c451fb4efd
Make stuff compiled with gccld not dump into the debugger if there's a problem
...
llvm-svn: 5028
2002-12-14 21:28:32 +00:00
Chris Lattner
7857616402
Pass command line arguments to main
...
llvm-svn: 5027
2002-12-13 16:48:57 +00:00
Chris Lattner
bf6ad7d307
Add statistic
...
llvm-svn: 5026
2002-12-13 15:28:42 +00:00
Misha Brukman
a9b58a6e0f
Made status output debug-only (for testing diffs against lli).
...
llvm-svn: 5022
2002-12-13 13:15:36 +00:00
Brian Gaeke
4e2c30d894
brg
...
InstSelectSimple.cpp: Add stub implementation of visitFreeInst.
Add comments that mention how we are failing to implement malloc/free.
Add initial implementation of visitAllocaInst.
X86TargetMachine.cpp: Include llvm/Transforms/Scalar.h.
Add LowerAllocations pass before instruction selection.
jello/Makefile: Add scalaropts.a.
llvm-svn: 4994
2002-12-13 06:46:31 +00:00
Chris Lattner
7ccef07786
Implement branches
...
llvm-svn: 4988
2002-12-13 05:40:28 +00:00
Brian Gaeke
5e91d38ecb
This checkin is brought to you by the brian gaeke allnighter fund.
...
(lib/Target/X86) InstSelectSimple.cpp:
Include llvm/DerivedTypes.h and iostream.
Refactor visitMul out into a wrapper around doMultiply(), so that we
can do multiplications on temporary values when we are doing
getelementptrs.
Refactor part of getReg out into makeAnotherReg, so that we can create
registers willy-nilly to hold temporary values, when we are doing
getelementptrs.
Add stub implementations of visitMallocInst and visitAllocaInst.
Add initial implementation of visitGetElementPtrInst.
In copyConstantToRegister:
We throw a *lot* of our asserts here. So, when we want to throw an
assert, print out to stderr whatever expr or whatever constant made
us barf.
Support copying ConstantPointerNull to register, using a move immediate
of zero.
Rename FLDr4 and FLDr8 to FLDr32 and FLDr64, so that they match the meanings
of the numbers in the other instruction names. All uses modified.
Teach visitCallInst to extract byte- and short-class return values
from subregs of EAX. Add a FIXME note about how we would do it for
float-class return values.
Add a FIXME note about how we would cast float to int and back.
X86InstrInfo.def:
Rename FLDr4 and FLDr8 to FLDr32 and FLDr64, so that they match the meanings
of the numbers in the other instruction names. All uses modified.
(tools/jello) GlobalVars.cpp:
Include iostream.
If we have to emit a floating-point constant to memory, gamble and use
the same method as for ints.
If we have to emit a ConstantPointerNull to memory, try using a "void *"
and "NULL".
Otherwise, if we are going to throw an assert, print out whatever constant
made us barf, first.
llvm-svn: 4973
2002-12-12 15:33:40 +00:00
Misha Brukman
356163f48a
ipa.a only needs to be mentioned once, and spaces should be used instead of
...
tabs for readability.
llvm-svn: 4970
2002-12-12 05:29:32 +00:00
Vikram S. Adve
3425529fc5
Fix link errors due to new IPModRef pass.
...
llvm-svn: 4960
2002-12-09 05:53:11 +00:00
Vikram S. Adve
42b7335d7c
Repeat ipa.a. Since IPModRef is currently only used in analysis.o,
...
it was causing linking errors.
llvm-svn: 4959
2002-12-09 04:46:25 +00:00
Chris Lattner
4f96aa450e
Add support to count the number of dynamic instructions executed by LLI
...
llvm-svn: 4955
2002-12-08 05:51:08 +00:00
Chris Lattner
71b82e39b0
Only build jello when compiling on X86
...
llvm-svn: 4938
2002-12-06 03:53:40 +00:00
Chris Lattner
bd7029ffb3
Fix to make jello compile on Sparc even though it won't run.
...
llvm-svn: 4937
2002-12-06 03:52:51 +00:00
Chris Lattner
b41a1b7c72
Add support for global value references
...
llvm-svn: 4908
2002-12-04 06:45:40 +00:00
Chris Lattner
1813cb90e8
Initial checkin of global var support code
...
llvm-svn: 4904
2002-12-04 06:09:04 +00:00
Chris Lattner
99fee40091
Implement simple global variable support
...
llvm-svn: 4903
2002-12-04 06:04:17 +00:00
Chris Lattner
0ded70ec7c
Implement external function support
...
llvm-svn: 4902
2002-12-04 06:04:07 +00:00
Chris Lattner
6a716900ba
Initial checkin of Unresolved function fault handler
...
llvm-svn: 4900
2002-12-04 05:05:26 +00:00
Chris Lattner
b7bfaae93a
Implement lazy resolution of function calls
...
llvm-svn: 4899
2002-12-04 04:47:34 +00:00
Chris Lattner
7814bf2a79
Initial checkin of virtual machine implementation.
...
We can now run very trivial test cases
llvm-svn: 4894
2002-12-03 22:48:59 +00:00
Chris Lattner
807a36c458
Disable timing of bytecode loader
...
llvm-svn: 4887
2002-12-03 19:42:26 +00:00
Chris Lattner
89cb1d48f6
Final tweak to printer
...
llvm-svn: 4881
2002-12-03 06:33:30 +00:00
Chris Lattner
9af6a5d5fe
Implement trivially simple debugger for MachineCodeEmitter interface
...
llvm-svn: 4880
2002-12-03 06:09:26 +00:00
Chris Lattner
cbda9ce676
Add initial support for machine code emission
...
llvm-svn: 4865
2002-12-02 21:22:04 +00:00
Chris Lattner
12caa7a9cf
Build bugpoint
...
llvm-svn: 4790
2002-11-20 22:28:18 +00:00
Chris Lattner
73a6bdd958
Initial checkin of bugpoint
...
llvm-svn: 4789
2002-11-20 22:28:10 +00:00
Chris Lattner
58f9002b4a
Move the function extractor pass from tools/extract into lib/Xform/IPO
...
llvm-svn: 4759
2002-11-19 18:42:59 +00:00
Chris Lattner
6d192f5bb4
Remove extra target.a entry
...
llvm-svn: 4756
2002-11-19 16:59:41 +00:00
Chris Lattner
20362cd1e9
Add a timer to evaluate bytecode load time and space requirements
...
llvm-svn: 4679
2002-11-10 06:55:02 +00:00
Vikram S. Adve
763e3f5752
Don't build llc symbols by default.
...
llvm-svn: 4565
2002-11-06 16:10:57 +00:00
Chris Lattner
5f827fa57b
Give passnames to the printer classes
...
llvm-svn: 4559
2002-11-06 06:16:08 +00:00
Chris Lattner
a416ad30df
No need to explicitly inclue ExportSymbols now
...
llvm-svn: 4543
2002-11-04 20:50:57 +00:00
Chris Lattner
2743db5934
Implement a new -print-callgraph analysis that turns a callgraph into a dot
...
graph
llvm-svn: 4524
2002-11-04 02:55:30 +00:00
Vikram S. Adve
a8ebc7af15
Disable correlated expressions pass until it is reliable.
...
llvm-svn: 4512
2002-11-03 12:41:50 +00:00
Chris Lattner
f1257594b5
Reassociate now works
...
llvm-svn: 4472
2002-10-31 17:13:11 +00:00
Misha Brukman
872dee1d94
Return 0 instead of 1 for correct execution. Makes automated testing happy.
...
llvm-svn: 4449
2002-10-30 02:18:29 +00:00
Chris Lattner
17116422e5
Jello now builds
...
llvm-svn: 4430
2002-10-29 23:41:11 +00:00
Chris Lattner
e72f06b575
* Privatize the TargetName
...
llvm-svn: 4418
2002-10-29 21:48:33 +00:00
Chris Lattner
5667f0eefd
Allow TargetMachine to refuse static code gen
...
llvm-svn: 4415
2002-10-29 21:12:46 +00:00
Chris Lattner
8fd87e5f4c
Convert jello to use PassManager
...
llvm-svn: 4414
2002-10-29 21:06:58 +00:00
Chris Lattner
a9d552b3a9
Rename Sparc.h TargetMachineImpls.h
...
llvm-svn: 4409
2002-10-29 20:48:09 +00:00
Chris Lattner
23930c582c
* Remove explicit strcmp calls
...
* Rename Sparc.h to TargetMachineImpls.h
llvm-svn: 4406
2002-10-29 20:45:04 +00:00
Chris Lattner
b68bcf081a
After removing stuff from TargetMachine, we now no longer have to include
...
it twice.
llvm-svn: 4311
2002-10-28 01:13:07 +00:00
Chris Lattner
57a10398a5
Add codegen library
...
llvm-svn: 4305
2002-10-28 00:54:59 +00:00
Chris Lattner
f11dd2092b
Initial checkin of LLVM JIT, codenamed jello. This tool is not built by
...
default, until it becomes stable. Even then it will only work for for X86
targets.
llvm-svn: 4285
2002-10-25 22:58:53 +00:00
Vikram S. Adve
793fce4ece
Added datastructure library to resolve link error.
...
llvm-svn: 4279
2002-10-25 21:17:34 +00:00
Chris Lattner
66507d887a
* Fix extract to work with constant pointer refs correctly
...
* Extract makes all global vars external, so they don't have initializers
llvm-svn: 4121
2002-10-12 20:50:16 +00:00
Chris Lattner
9126483558
- 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
8e2c197c17
Avoid making external global variables internal
...
llvm-svn: 4059
2002-10-07 18:33:53 +00:00
Chris Lattner
ae4cf5237a
- The extract tool now is sure to extract the function implementation for
...
the specified name instead of extracting the prototype if both exist.
llvm-svn: 4045
2002-10-06 21:30:04 +00:00
Chris Lattner
e6e375e704
Temporary change to make datastructure stuff link in right
...
llvm-svn: 4005
2002-10-01 22:41:01 +00:00
Chris Lattner
79efacbb19
Change LowerAllocations pass to 'require' TargetData instead of it being
...
passed in.
llvm-svn: 3930
2002-09-25 23:47:49 +00:00
Chris Lattner
47c2e3e952
Make sure to close the file before deleting it
...
llvm-svn: 3905
2002-09-24 00:09:48 +00:00
Chris Lattner
387d76a983
* Remove the -stopraise option, which is no longer needed now that we have
...
the -debug-pass=Arguments option
* Run instcombining BEFORE mem2reg so that getelementptr X, long 0's are
cleaned up. This is also important because scalar replacement of aggr.
will want instcombine to run before it goes as well.
llvm-svn: 3879
2002-09-22 18:50:22 +00:00
Vikram S. Adve
3e1dc145bd
Renamed library preselect to preopts.
...
llvm-svn: 3841
2002-09-20 00:43:20 +00:00
Chris Lattner
9ae5cf5ca3
Minor non-functionality changing changes.
...
llvm-svn: 3833
2002-09-19 20:48:48 +00:00
Chris Lattner
51eb611986
Indent a comment right, add a new one
...
llvm-svn: 3819
2002-09-19 16:06:28 +00:00
Chris Lattner
437254f29e
Avoid deleting the ostream more than once.
...
llvm-svn: 3816
2002-09-18 23:30:05 +00:00
Vikram S. Adve
3517f30fd9
KEEP_SYMBOLS by default.
...
llvm-svn: 3813
2002-09-18 11:55:44 +00:00
Chris Lattner
18daee20f9
Compile sub-directories in parallel, because they don't have interdependencies
...
llvm-svn: 3808
2002-09-18 03:25:58 +00:00
Vikram S. Adve
9c485d2165
gcc3.1.1 seems much more selective about what it loads from archives, and
...
does not link in many passes that are loaded by gcc2.95.3. So use object
files instead of archives in many more cases.
llvm-svn: 3803
2002-09-18 02:20:58 +00:00
Chris Lattner
66037f55d3
Enable correct support for dynamic loading on Linux
...
llvm-svn: 3780
2002-09-17 20:40:24 +00:00
Chris Lattner
a73486f69c
Enable correct support for dynamic loading on Linux
...
llvm-svn: 3779
2002-09-17 20:40:22 +00:00
Vikram S. Adve
14a25a370b
Remove duplicate sparc entry.
...
llvm-svn: 3762
2002-09-16 18:28:27 +00:00
Vikram S. Adve
9a056ed4e0
Use .o files instead of .a files for several cases (that don't actually
...
need them) until other Makefiles can be updated to build archives.
llvm-svn: 3761
2002-09-16 18:13:12 +00:00
Vikram S. Adve
116783613a
Change several entries to use the .o instead of .a to expose pass options.
...
llvm-svn: 3754
2002-09-16 16:36:13 +00:00
Vikram S. Adve
eb8186985f
Make all registered optimization passes available to llc.
...
Eliminate duplicate tracing options and use those defined by the trace passes.
Making the tracing step a module pass that runs before any llc-specific
passes.
llvm-svn: 3753
2002-09-16 16:35:34 +00:00
Vikram S. Adve
82491b79a1
Add support for optimization passes that use a TargetMachine object.
...
llvm-svn: 3752
2002-09-16 16:09:43 +00:00
Misha Brukman
2e8086f046
Function.h is unnecessary when Module.h is included.
...
llvm-svn: 3716
2002-09-14 03:04:02 +00:00
Chris Lattner
6ba47f6d5b
Export symbols for linux
...
llvm-svn: 3707
2002-09-13 22:20:19 +00:00
Chris Lattner
c70222dc15
* No longer need to run die after instcombine
...
* Run new correlated expressions pass
* Simplify the CFG (removing dead blocks, merging blocks, eliminating branches
on constant booleans, etc) after correlated exprs pass.
llvm-svn: 3598
2002-09-06 18:41:33 +00:00
Chris Lattner
874a9e4078
- Converted CWriter to be an LLVM pass.
...
- Convert dis to use a PassManager to do it's work.
llvm-svn: 3560
2002-08-31 00:30:15 +00:00
Chris Lattner
1ae0dec9b9
Get FindUsedTypes pass
...
llvm-svn: 3559
2002-08-31 00:29:36 +00:00
Chris Lattner
3f5b42697c
- Reformat comments
...
- 'gccas' puts verifier in logical place in pass procession to avoid
recomputing dominator information unneccesarily.
llvm-svn: 3553
2002-08-30 22:55:32 +00:00
Chris Lattner
4a84ad57a9
- 'analyze' and 'as' now explicitly verify input because AsmParser doesn't.
...
llvm-svn: 3552
2002-08-30 22:54:41 +00:00
Chris Lattner
2292e551ed
- 'analyze' and 'as' now explicitly verify input because AsmParser doesn't.
...
llvm-svn: 3551
2002-08-30 22:54:37 +00:00
Chris Lattner
ed39ccae8d
- Eliminate the last traces of the 'analysis' namespace
...
llvm-svn: 3550
2002-08-30 22:53:53 +00:00
Chris Lattner
447dd14bac
Link to analysis.o not analysis.a
...
llvm-svn: 3537
2002-08-30 20:25:41 +00:00
Chris Lattner
edd6704458
- GCCAS now uses load value #ing for GCSE
...
llvm-svn: 3536
2002-08-30 20:25:25 +00:00
Chris Lattner
6d33f2f338
New datastructure analysis correctly uses TargetData
...
llvm-svn: 3525
2002-08-29 20:10:29 +00:00
Anand Shukla
cbf89056d3
Added mapping lib in llc makefile
...
llvm-svn: 3514
2002-08-27 16:46:11 +00:00
Chris Lattner
00a43e1e7c
Fixed linking problems that wanted me to link to analyze.o instead of analyze.a
...
so now we can link to analyze.a again.
llvm-svn: 3433
2002-08-21 23:47:46 +00:00
Chris Lattner
24749c4d4e
Link in all analyses so that we get pointer analysis support built in
...
llvm-svn: 3427
2002-08-21 22:17:28 +00:00
Chris Lattner
dded107d64
Do not leak memory for passes when using -stopAfterNPasses or -stopraise
...
llvm-svn: 3371
2002-08-17 22:40:03 +00:00
Chris Lattner
325c1ce8f3
Run GlobalDCE before deadtypeelim so that we do not retain types for global
...
variables that are obviously dead. The most common case is %FILE
llvm-svn: 3370
2002-08-17 22:38:02 +00:00
Chris Lattner
f0ed55d1ee
- Cleaned up the interface to AnalysisUsage to take analysis class names
...
instead of ::ID's.
- Pass::getAnalysis<> now no longer takes an optional argument
llvm-svn: 3265
2002-08-08 19:01:30 +00:00
Chris Lattner
24c550cd2d
Only include the sparc.o file once!
...
llvm-svn: 3257
2002-08-07 19:42:34 +00:00
Chris Lattner
301b7e7733
Reorder tool building sequence to more closely match the reality of what
...
is being worked on the most.
llvm-svn: 3196
2002-08-01 00:01:33 +00:00
Chris Lattner
ad5a79527f
Changes to be GCC3.1 friendly
...
llvm-svn: 3187
2002-07-31 19:32:14 +00:00
Chris Lattner
b05cd8a88d
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
6f43f6d136
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
da4c6cc151
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
dcd3ec6010
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
386ebdd66a
Remove extraneous #includes
...
llvm-svn: 3162
2002-07-30 19:33:19 +00:00
Chris Lattner
2511b6e296
Use a module analysis
...
llvm-svn: 3133
2002-07-29 23:02:25 +00:00
Chris Lattner
59aa81c78e
Seperate analysis wrapper stuff to AnalysisWrappers.cpp
...
llvm-svn: 3127
2002-07-29 21:24:10 +00:00
Chris Lattner
5768f01926
Make analyze use the Pass repository to populate it's command line argument list
...
llvm-svn: 3114
2002-07-27 01:08:50 +00:00
Chris Lattner
e79bf38f4a
Factor PassNamePArser out into llvm/Support/PassNameParser.h
...
llvm-svn: 3109
2002-07-26 21:09:32 +00:00
Chris Lattner
64eea749de
*** empty log message ***
...
llvm-svn: 3105
2002-07-26 18:40:14 +00:00
Chris Lattner
6d044b588b
Namespace correctness is good
...
llvm-svn: 3088
2002-07-25 16:39:56 +00:00
Chris Lattner
64a6727d02
*** empty log message ***
...
llvm-svn: 3087
2002-07-25 16:31:09 +00:00
Chris Lattner
42f1d37e75
Be more namespace correct
...
llvm-svn: 3086
2002-07-25 16:31:01 +00:00
Chris Lattner
ba614ba122
REmove extra blank lines
...
llvm-svn: 3084
2002-07-25 15:40:38 +00:00
Chris Lattner
880cfedadd
*** empty log message ***
...
llvm-svn: 3077
2002-07-25 15:00:45 +00:00
Chris Lattner
b3b021622f
*** empty log message ***
...
llvm-svn: 3044
2002-07-24 17:12:08 +00:00
Chris Lattner
35c4541bbe
*** empty log message ***
...
llvm-svn: 3040
2002-07-23 22:04:43 +00:00
Chris Lattner
da02d41e41
Minor changes due to code juggled around
...
llvm-svn: 3039
2002-07-23 22:04:40 +00:00
Chris Lattner
5a48a248bd
Use the pass registration mechanism to populate command line options for
...
opt, not huge explicit gross tables.
llvm-svn: 3021
2002-07-23 18:12:22 +00:00
Chris Lattner
8c7b31599b
Raise pass requires an explicit TargetData member now.
...
llvm-svn: 3020
2002-07-23 18:09:58 +00:00
Chris Lattner
a896b08b5c
*** empty log message ***
...
llvm-svn: 3002
2002-07-23 17:52:38 +00:00
Chris Lattner
0af07b48f2
Convert over to new style of Makefile, where there is a difference between .o and .a libraries.
...
llvm-svn: 3000
2002-07-23 17:50:41 +00:00
Chris Lattner
17570e182a
Fix synopsis
...
llvm-svn: 2988
2002-07-22 02:18:09 +00:00
Chris Lattner
de88ac4f45
Add description to Enum options.
...
llvm-svn: 2987
2002-07-22 02:18:00 +00:00
Chris Lattner
f5cad15a67
*** empty log message ***
...
llvm-svn: 2985
2002-07-22 02:10:13 +00:00
Chris Lattner
bf30a91f94
Convert command line option processing code over to use the syntax supported
...
by the CommandLine 2.0 library
llvm-svn: 2984
2002-07-22 02:10:07 +00:00
Chris Lattner
93dc95fc7d
Add support for bottom up closure of ds analysis
...
llvm-svn: 2963
2002-07-18 06:40:56 +00:00
Anand Shukla
4e25609b87
Removed emitfuncs: now its part of instrument library
...
llvm-svn: 2929
2002-07-16 18:59:55 +00:00
Anand Shukla
1a26e82bd5
added emitfuncs pass, and disabled reassociate pass (needs fixing)
...
llvm-svn: 2885
2002-07-12 20:14:27 +00:00
Anand Shukla
e9f685d397
Added emitfuncs pass
...
llvm-svn: 2884
2002-07-12 20:12:59 +00:00
Chris Lattner
4734a1cd00
Rename DataStructure to LocalDataStructures
...
llvm-svn: 2873
2002-07-10 22:42:53 +00:00
Vikram S. Adve
acceb1edff
Disabling reassociate pass until it is fixed.
...
llvm-svn: 2849
2002-07-09 19:53:09 +00:00
Chris Lattner
33422fedc2
*** empty log message ***
...
llvm-svn: 2813
2002-06-30 16:25:25 +00:00
Chris Lattner
a3a1ba1d6a
Clean up anands patch
...
llvm-svn: 2812
2002-06-30 16:25:21 +00:00
Chris Lattner
e3e86f7027
Strip the symbols out of the bytecode to inflate generated executables less.
...
llvm-svn: 2811
2002-06-30 16:25:07 +00:00
Chris Lattner
c19be16c7b
YEs, we really do want to sort.
...
llvm-svn: 2810
2002-06-30 16:20:02 +00:00
Chris Lattner
f119a2b1df
Yes, we REALLY DO want to run the reassociate pass.
...
llvm-svn: 2809
2002-06-30 16:19:14 +00:00
Anand Shukla
fef3241cc6
Changes for 64bit gcc
...
llvm-svn: 2799
2002-06-25 21:57:48 +00:00
Anand Shukla
dfe130c161
correcting makefile: incorrectly checked in wrong version earlier
...
llvm-svn: 2798
2002-06-25 21:44:44 +00:00
Anand Shukla
68c9977d7f
Changes for 64bit gcc
...
llvm-svn: 2797
2002-06-25 21:43:28 +00:00
Chris Lattner
113f4f4609
MEGAPATCH checkin.
...
For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2779
2002-06-25 16:13:24 +00:00
Chris Lattner
7076ff29ed
MEGAPATCH checkin.
...
For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2778
2002-06-25 16:13:21 +00:00
Chris Lattner
5aa3a0779e
Simplify the code that adds passes so compilation can stop after any step
...
llvm-svn: 2775
2002-06-25 15:57:43 +00:00
Chris Lattner
0df3511df9
Checkin descriptive note
...
llvm-svn: 2765
2002-06-24 16:49:55 +00:00
Chris Lattner
f08d7436ca
No need to run dce with adce right behind!
...
llvm-svn: 2738
2002-05-23 19:27:50 +00:00
Chris Lattner
c17c38f3cc
Make sure the extracted function has external linkage, so that it doesn't
...
get eliminated by globaldce!
llvm-svn: 2736
2002-05-23 18:36:25 +00:00
Chris Lattner
702eacab25
Add the ADCE pass to gccas finally!
...
llvm-svn: 2719
2002-05-22 21:30:24 +00:00
Chris Lattner
3df8d3e5d6
Build the extract utility
...
llvm-svn: 2717
2002-05-22 20:27:15 +00:00
Chris Lattner
055de1876a
Initial checkin of the "extract" utility
...
llvm-svn: 2716
2002-05-22 20:27:00 +00:00
Chris Lattner
5972e5cc5c
Expose cfg simplification pass
...
llvm-svn: 2699
2002-05-21 20:05:16 +00:00
Chris Lattner
8c1d9485cd
Simplify CFG after code generation is done
...
llvm-svn: 2698
2002-05-21 20:05:08 +00:00
Chris Lattner
4955d3e1c2
Fix tracing code support to link in the tracing routines if neccesary.
...
This is required because trace code can insert calls to functions that
are (now) in an LLVM library, not a native library.
This change makes it easier to use the tracing code because the native
link options don't have to change, and it fits in a lot better with the
LLVM model.
llvm-svn: 2675
2002-05-20 21:20:08 +00:00
Chris Lattner
13e8979767
Remove tracing code hack
...
llvm-svn: 2673
2002-05-20 21:16:46 +00:00
Chris Lattner
2df953ba74
Use literal newline instead of endl
...
llvm-svn: 2668
2002-05-20 19:49:24 +00:00
Chris Lattner
6c1e5c4d3b
Drop something that link will never support, use gccld instead
...
llvm-svn: 2667
2002-05-20 19:48:55 +00:00
Vikram S. Adve
cf3c90d4c8
Add libsparc.a a second time to resolve link errors.
...
llvm-svn: 2661
2002-05-19 16:01:03 +00:00
Vikram S. Adve
b810407ddb
Link with test/Libraries/libinstr32.a for runtime routines
...
supporting tracing. That should be moved to a "runtime" directory.
llvm-svn: 2660
2002-05-19 16:00:28 +00:00
Chris Lattner
c914944a61
Run another local value numbering phase after redundancy elimination
...
llvm-svn: 2625
2002-05-14 16:23:14 +00:00
Chris Lattner
81525db280
expose LICM pass
...
llvm-svn: 2614
2002-05-10 22:44:37 +00:00
Chris Lattner
47d923c2e0
Add LICM pass to compiler
...
llvm-svn: 2613
2002-05-10 22:44:31 +00:00
Chris Lattner
6205c268e0
Expose the lowerallocs pass
...
llvm-svn: 2602
2002-05-10 15:43:07 +00:00
Chris Lattner
35cc0d2027
Expose the pi node insertion pass.
...
llvm-svn: 2594
2002-05-10 05:41:49 +00:00
Chris Lattner
e693f33937
Clean up dis so that it does not print out code in various traversal orders.
...
Now it only output llvm or C code.
llvm-svn: 2564
2002-05-09 01:25:55 +00:00
Chris Lattner
a2f3b65dec
Expose expression reassociation
...
llvm-svn: 2557
2002-05-08 22:18:34 +00:00
Chris Lattner
356ef11e5a
Run expression reassociation as part of gccas
...
llvm-svn: 2556
2002-05-08 22:18:20 +00:00
Sumant Kowshik
cf3afd9dc5
*** empty log message ***
...
llvm-svn: 2552
2002-05-08 18:09:58 +00:00
Chris Lattner
b4bf0c1422
Spell aggressive correctly
...
llvm-svn: 2551
2002-05-07 22:15:01 +00:00
Chris Lattner
89a20ef164
Merge all include/llvm/Transforms/Scalar/* into a single Scalar.h
...
llvm-svn: 2538
2002-05-07 20:03:27 +00:00
Chris Lattner
355cc5ab26
Fix makefiles after shuffling passes around the libraries
...
llvm-svn: 2532
2002-05-07 19:27:33 +00:00
Chris Lattner
15435fd550
Move UnifyFunctionExitNodes to Utils library: final resting place this time
...
llvm-svn: 2531
2002-05-07 19:18:48 +00:00
Chris Lattner
863c37e0bb
Oops, somehow lost a slash. Fixed
...
llvm-svn: 2524
2002-05-07 18:39:52 +00:00
Chris Lattner
7608a46cbe
Updates to move some header files out of include/llvm/Transforms into
...
the Scalar and Utils subdirectories
llvm-svn: 2523
2002-05-07 18:36:35 +00:00
Chris Lattner
56c3f22249
Straighten out makefiles after moving code to new Transform Utils library
...
llvm-svn: 2520
2002-05-07 18:18:26 +00:00
Chris Lattner
cfa675c142
GCSE is faster than SCCP, and it makes SCCP's job easier, so run it first.
...
llvm-svn: 2503
2002-05-06 18:54:12 +00:00
Chris Lattner
dcb7ff00b1
Instruction Combination can create a ton of trivially dead instructions. Remove
...
them with an DIE pass before more expensive optimizations are run.
llvm-svn: 2491
2002-05-06 16:52:15 +00:00
Chris Lattner
878bbb2f1c
Run DCE AFTER SCCP and GCSE!
...
llvm-svn: 2476
2002-05-06 03:04:17 +00:00
Chris Lattner
10120bdff0
Remove unneccesary pass.
...
llvm-svn: 2421
2002-04-30 20:53:05 +00:00
Chris Lattner
aa261937c0
These aren't tools
...
llvm-svn: 2412
2002-04-29 20:29:30 +00:00
Chris Lattner
0fb0022f68
Move constant merging pass earlier
...
Include the SCCP pass in gccas
llvm-svn: 2410
2002-04-29 20:11:38 +00:00
Chris Lattner
ce42e8ac31
Remove InstForest from analysis namespace
...
llvm-svn: 2401
2002-04-29 18:13:31 +00:00
Chris Lattner
d5a847057b
Eliminate duplicate or unneccesary #include's
...
llvm-svn: 2397
2002-04-29 17:42:12 +00:00
Chris Lattner
37104aace8
Add new optional getPassName() virtual function that a Pass can override
...
to make debugging output a lot nicer.
llvm-svn: 2395
2002-04-29 14:57:45 +00:00