From 0d30d30d58253de6b8836a11effcfc38d7566841 Mon Sep 17 00:00:00 2001 From: Owen Anderson Date: Mon, 26 Nov 2012 23:54:47 +0000 Subject: Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model Patch by Pedro Artigas, with feedback from by Chandler Carruth. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168635 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineModuleInfo.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include/llvm/CodeGen/MachineModuleInfo.h') diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index fc73a3d609..4660cad5d8 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -180,7 +180,10 @@ public: const MCObjectFileInfo *MOFI); ~MachineModuleInfo(); + using ModulePass::doInitialization; bool doInitialization(); + + using ModulePass::doFinalization; bool doFinalization(); /// EndFunction - Discard function meta information. -- cgit v1.2.3-18-g5258 From 9780d352b9108d49097970f6686fd61aba58d7fc Mon Sep 17 00:00:00 2001 From: Owen Anderson Date: Tue, 27 Nov 2012 00:53:24 +0000 Subject: Revert r168635 "Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model". It appears to have broken at least one buildbot. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168654 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineModuleInfo.h | 3 --- 1 file changed, 3 deletions(-) (limited to 'include/llvm/CodeGen/MachineModuleInfo.h') diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index 4660cad5d8..fc73a3d609 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -180,10 +180,7 @@ public: const MCObjectFileInfo *MOFI); ~MachineModuleInfo(); - using ModulePass::doInitialization; bool doInitialization(); - - using ModulePass::doFinalization; bool doFinalization(); /// EndFunction - Discard function meta information. -- cgit v1.2.3-18-g5258 From 6eda0813459547fe8094dd5d31f7dd2214b5ca7a Mon Sep 17 00:00:00 2001 From: Pedro Artigas Date: Thu, 29 Nov 2012 17:47:05 +0000 Subject: One more step towards making doInitialization and doFinalization useful for start up and clean up module passes, now that ASAN and TSAN are fixed the tests pass git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168905 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineModuleInfo.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include/llvm/CodeGen/MachineModuleInfo.h') diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index fc73a3d609..4660cad5d8 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -180,7 +180,10 @@ public: const MCObjectFileInfo *MOFI); ~MachineModuleInfo(); + using ModulePass::doInitialization; bool doInitialization(); + + using ModulePass::doFinalization; bool doFinalization(); /// EndFunction - Discard function meta information. -- cgit v1.2.3-18-g5258 From 255f89faee13dc491cb64fbeae3c763e7e2ea4e6 Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Mon, 3 Dec 2012 17:02:12 +0000 Subject: Sort the #include lines for the include/... tree with the script. AKA: Recompile *ALL* the source code! This one went much better. No manual edits here. I spot-checked for silliness and grep-checked for really broken edits and everything seemed good. It all still compiles. Yell if you see something that looks goofy. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169133 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineModuleInfo.h | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'include/llvm/CodeGen/MachineModuleInfo.h') diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index 4660cad5d8..545638e705 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -31,19 +31,19 @@ #ifndef LLVM_CODEGEN_MACHINEMODULEINFO_H #define LLVM_CODEGEN_MACHINEMODULEINFO_H -#include "llvm/Pass.h" -#include "llvm/GlobalValue.h" -#include "llvm/Metadata.h" -#include "llvm/MC/MachineLocation.h" -#include "llvm/MC/MCContext.h" -#include "llvm/Support/Dwarf.h" -#include "llvm/Support/DebugLoc.h" -#include "llvm/Support/ValueHandle.h" -#include "llvm/Support/DataTypes.h" #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/PointerIntPair.h" #include "llvm/ADT/SmallPtrSet.h" #include "llvm/ADT/SmallVector.h" +#include "llvm/GlobalValue.h" +#include "llvm/MC/MCContext.h" +#include "llvm/MC/MachineLocation.h" +#include "llvm/Metadata.h" +#include "llvm/Pass.h" +#include "llvm/Support/DataTypes.h" +#include "llvm/Support/DebugLoc.h" +#include "llvm/Support/Dwarf.h" +#include "llvm/Support/ValueHandle.h" namespace llvm { -- cgit v1.2.3-18-g5258 From 49eb628c21b358380b76df82aa3dfe0baab4c6ec Mon Sep 17 00:00:00 2001 From: Pedro Artigas Date: Mon, 3 Dec 2012 21:56:57 +0000 Subject: moves doInitialization and doFinalization to the Pass class and removes some unreachable code in MachineModuleInfo reviewed by Evan Cheng git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169164 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineModuleInfo.h | 6 ------ 1 file changed, 6 deletions(-) (limited to 'include/llvm/CodeGen/MachineModuleInfo.h') diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index 545638e705..2d8c26def8 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -180,12 +180,6 @@ public: const MCObjectFileInfo *MOFI); ~MachineModuleInfo(); - using ModulePass::doInitialization; - bool doInitialization(); - - using ModulePass::doFinalization; - bool doFinalization(); - /// EndFunction - Discard function meta information. /// void EndFunction(); -- cgit v1.2.3-18-g5258 From d1abec365aa89a8497d9b615ccb4b21c72da9447 Mon Sep 17 00:00:00 2001 From: Pedro Artigas Date: Wed, 5 Dec 2012 17:12:22 +0000 Subject: - Added calls to doInitialization/doFinalization to immutable passes - fixed ordering of calls to doFinalization to be the reverse of the pass run order due to potential dependencies - fixed machine module info to operate in the doInitialization/doFinalization model, also fixes some FIXMEs reviewed by Evan Cheng git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169391 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineModuleInfo.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'include/llvm/CodeGen/MachineModuleInfo.h') diff --git a/include/llvm/CodeGen/MachineModuleInfo.h b/include/llvm/CodeGen/MachineModuleInfo.h index 2d8c26def8..cf9e8b61ef 100644 --- a/include/llvm/CodeGen/MachineModuleInfo.h +++ b/include/llvm/CodeGen/MachineModuleInfo.h @@ -180,6 +180,10 @@ public: const MCObjectFileInfo *MOFI); ~MachineModuleInfo(); + // Initialization and Finalization + virtual bool doInitialization(Module &); + virtual bool doFinalization(Module &); + /// EndFunction - Discard function meta information. /// void EndFunction(); -- cgit v1.2.3-18-g5258