Chris Lattner
|
ce22ca3fc6
|
random minor typographical changes
llvm-svn: 32579
|
2006-12-14 18:22:14 +00:00 |
Devang Patel
|
b8817b9b6e
|
Add -time-passes support.
llvm-svn: 32574
|
2006-12-14 00:59:42 +00:00 |
Devang Patel
|
f6d1d21355
|
Add debug-pass=Details support to print Required and Preserved Set info.
llvm-svn: 32573
|
2006-12-14 00:25:06 +00:00 |
Devang Patel
|
93a197c202
|
Add " Made Modification " messages in debug-pass=Executions output.
llvm-svn: 32572
|
2006-12-14 00:08:04 +00:00 |
Devang Patel
|
200d305c02
|
Add debug-pass=Executions support in new pass manager.
llvm-svn: 32571
|
2006-12-13 23:50:44 +00:00 |
Devang Patel
|
cfd70c4a46
|
Add -pass-debug=Arguments support in new manager.
llvm-svn: 32567
|
2006-12-13 22:10:00 +00:00 |
Chris Lattner
|
f0f611a76a
|
fit in 80 cols
llvm-svn: 32563
|
2006-12-13 21:56:10 +00:00 |
Devang Patel
|
03fb587348
|
Using PDL as a prefix for PassDebugLevel enums is not a good idea.
Fix it.
llvm-svn: 32562
|
2006-12-13 21:13:31 +00:00 |
Devang Patel
|
f1567a511f
|
Move enum PassDebugLevel from PassManagerT.h to Pass.h.
Use PDL as the prefix for these enums.
Define and use PassDebugging_New in new PassManager.
llvm-svn: 32554
|
2006-12-13 20:03:48 +00:00 |
Devang Patel
|
b67904d1dc
|
Add #ifdef switch toggle between old and new pass manager. However,
continue to use old pass manager at the moment. To use new manager
remove #define USE_OLD_PASSMANAGER 1 from Pass.h
llvm-svn: 32525
|
2006-12-13 02:36:01 +00:00 |
Devang Patel
|
08bed59d59
|
FunctionPassManager does not support runOnModule().
llvm-svn: 32519
|
2006-12-13 00:34:32 +00:00 |
Devang Patel
|
ab97cf4c7c
|
Implement PassManager_New destructors.
llvm-svn: 32517
|
2006-12-13 00:09:23 +00:00 |
Devang Patel
|
209b13990f
|
Remove unused constructor.
llvm-svn: 32516
|
2006-12-12 23:51:31 +00:00 |
Devang Patel
|
eda561762f
|
Add routines to dump pass manager queue.
llvm-svn: 32513
|
2006-12-12 23:34:33 +00:00 |
Devang Patel
|
1036b65ca0
|
FunctionPassManager()
Set AnalysisResolver_New and add FPM to PassManagers list.
llvm-svn: 32512
|
2006-12-12 23:27:37 +00:00 |
Devang Patel
|
745a696050
|
Do not runOnFunction on external functions.
llvm-svn: 32510
|
2006-12-12 23:15:28 +00:00 |
Devang Patel
|
47d7df7407
|
Initialize AnalysisImpls for each pass before executing the pass.
llvm-svn: 32509
|
2006-12-12 23:13:09 +00:00 |
Devang Patel
|
f58183dae1
|
collectRequiredAnalysisPasses().
Include RequiredTrainsitiveSet also.
llvm-svn: 32508
|
2006-12-12 23:09:32 +00:00 |
Devang Patel
|
be6bd55e96
|
removeNotPreservedAnalysis().
Do not remove ImmutablePass from the list.
llvm-svn: 32507
|
2006-12-12 23:07:44 +00:00 |
Devang Patel
|
ad6b7fe726
|
Initialize activeManager.
llvm-svn: 32506
|
2006-12-12 22:57:43 +00:00 |
Devang Patel
|
5f945dd79e
|
Remove unused constructor.
llvm-svn: 32505
|
2006-12-12 22:56:36 +00:00 |
Devang Patel
|
75cdf20412
|
Maintain ImmutablePasses list at top level only. Do not make them
directly available to individual managers.
llvm-svn: 32504
|
2006-12-12 22:53:40 +00:00 |
Devang Patel
|
cd6ba15364
|
findAnalysisPass().
First search all available passes before searching ImmutablePasses.
llvm-svn: 32503
|
2006-12-12 22:50:05 +00:00 |
Devang Patel
|
10c2ca6874
|
Fix thinko.
While searching for a analysis in a pass manager, do not search it into
pass manager's manager.
llvm-svn: 32501
|
2006-12-12 22:47:13 +00:00 |
Devang Patel
|
afb1f362c6
|
o s/OtherPassManagers/IndirectPassManagers
o Make IndirectPassManagers vector of PMDataManager *
o Move PMTopLevelManager implementation below all class declarations.
llvm-svn: 32499
|
2006-12-12 22:35:25 +00:00 |
Devang Patel
|
95257548c9
|
Initialize AnalysisImpls for ImmutablePass.
llvm-svn: 32498
|
2006-12-12 22:21:37 +00:00 |
Devang Patel
|
9c6290c53c
|
Set top level manager.
llvm-svn: 32496
|
2006-12-12 22:02:16 +00:00 |
Devang Patel
|
984698ac24
|
Analysis resolver now manages AnalysisImpls for the given patch.
llvm-svn: 32389
|
2006-12-09 01:11:34 +00:00 |
Devang Patel
|
9d759b8854
|
Top level pass manager keeps track of other managers, so this can be
removed now.
llvm-svn: 32388
|
2006-12-09 00:09:12 +00:00 |
Devang Patel
|
64619bec14
|
Use analysis resolver to find the info.
llvm-svn: 32387
|
2006-12-09 00:07:38 +00:00 |
Devang Patel
|
fa971cda8b
|
Do not drop ImmutablePasses on the floor.
llvm-svn: 32386
|
2006-12-08 23:57:43 +00:00 |
Devang Patel
|
d440cd92a5
|
Set AnalysisResolver for the passes when they are inserted into
pass manager queuer.
llvm-svn: 32385
|
2006-12-08 23:53:00 +00:00 |
Devang Patel
|
9bdf7d46f6
|
Add AnalysisResolver_New. It is a replacement for existing
AnalysisResolver.
llvm-svn: 32383
|
2006-12-08 23:28:54 +00:00 |
Devang Patel
|
af1fca5f10
|
Keep track of other pass managers, that are not directly managed by
top level manager. Use this info to findAnalysisPass.
llvm-svn: 32382
|
2006-12-08 23:11:43 +00:00 |
Devang Patel
|
272908dcf2
|
Implement top level FunctionPassManager::run(Function &F)
llvm-svn: 32381
|
2006-12-08 22:57:48 +00:00 |
Devang Patel
|
5bbeb49130
|
Do not keep yet another list of pass managers in PassManagerImpl_New.
Use one provided by toplevel manager.
llvm-svn: 32380
|
2006-12-08 22:47:25 +00:00 |
Devang Patel
|
df6c9ae208
|
Remove unused schedulePass() parameter.
llvm-svn: 32379
|
2006-12-08 22:34:02 +00:00 |
Devang Patel
|
e31049fed5
|
Remove unused getAnalysisPass and getAnalysisPassFromManager
llvm-svn: 32378
|
2006-12-08 22:32:32 +00:00 |
Devang Patel
|
640c5bba77
|
Implement PMTopLevel::findAnalysisPass() and
PMDataManager::findAnalysisPass()
llvm-svn: 32377
|
2006-12-08 22:30:11 +00:00 |
Devang Patel
|
0e29e29cc5
|
During runOnModule() do initialization and finalization.
llvm-svn: 32371
|
2006-12-08 19:04:09 +00:00 |
Devang Patel
|
1929089ea2
|
Reuse code. Directly use runOnFunction().
llvm-svn: 32370
|
2006-12-08 19:03:05 +00:00 |
Devang Patel
|
1f65368a82
|
Implement FunctionPassManager_New::FunctionPassManager_New(ModuleProvider *P)
llvm-svn: 32368
|
2006-12-08 18:57:16 +00:00 |
Devang Patel
|
e958559204
|
BasicBlockPassManager_New::runOnFunction()
Do initialization and finalization.
llvm-svn: 32346
|
2006-12-08 01:38:28 +00:00 |
Devang Patel
|
475c453c00
|
doInitialization and doFinalization for BasicBlockPassManager_New
llvm-svn: 32345
|
2006-12-08 00:59:05 +00:00 |
Devang Patel
|
17ad096dd8
|
Reimplement removeDeadPasses().
llvm-svn: 32344
|
2006-12-08 00:37:52 +00:00 |
Devang Patel
|
bc03f13b75
|
set Last User.
llvm-svn: 32342
|
2006-12-07 23:55:10 +00:00 |
Devang Patel
|
4c36e6bee0
|
Maintain level(or depth) of pass manager in pass manager food chain.
llvm-svn: 32339
|
2006-12-07 23:24:58 +00:00 |
Devang Patel
|
1d6267cac3
|
New method, PMDataManager::collectRequiredAnalysisPasses()
llvm-svn: 32338
|
2006-12-07 23:05:44 +00:00 |
Devang Patel
|
4949fe01f1
|
When new pass manager is created, initialize available analysis info
of existing manager at the same level. Otherwise, such info may be
considered as available, which not true.
llvm-svn: 32334
|
2006-12-07 22:34:21 +00:00 |
Devang Patel
|
f4805ce89a
|
PMDataManager does not maintain LastUser info.
llvm-svn: 32332
|
2006-12-07 22:17:09 +00:00 |