aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/CBackend/CBackend.cpp
diff options
context:
space:
mode:
authorGordon Henriksen <gordonhenriksen@mac.com>2008-01-07 01:30:38 +0000
committerGordon Henriksen <gordonhenriksen@mac.com>2008-01-07 01:30:38 +0000
commitce2247755e56f99a2377b64a1a9d393726582b85 (patch)
tree3958d8dfd03faf752d6a9a5e5da7cbb23e6a29da /lib/Target/CBackend/CBackend.cpp
parent7e40ad51065331b04bcb0291c4868ace20289857 (diff)
Enabling the target-independent garbage collection infrastructure by hooking it
up to the various compiler pipelines. This doesn't actually add support for any GC algorithms, which means it temporarily breaks a few tests. To be fixed shortly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45669 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/CBackend/CBackend.cpp')
-rw-r--r--lib/Target/CBackend/CBackend.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Target/CBackend/CBackend.cpp b/lib/Target/CBackend/CBackend.cpp
index d695e44bcd..f4e9e34152 100644
--- a/lib/Target/CBackend/CBackend.cpp
+++ b/lib/Target/CBackend/CBackend.cpp
@@ -28,6 +28,7 @@
#include "llvm/Analysis/ConstantsScanner.h"
#include "llvm/Analysis/FindUsedTypes.h"
#include "llvm/Analysis/LoopInfo.h"
+#include "llvm/CodeGen/Passes.h"
#include "llvm/CodeGen/IntrinsicLowering.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Target/TargetMachineRegistry.h"
@@ -2946,11 +2947,12 @@ bool CTargetMachine::addPassesToEmitWholeFile(PassManager &PM,
bool Fast) {
if (FileType != TargetMachine::AssemblyFile) return true;
- PM.add(createLowerGCPass());
+ PM.add(createGCLoweringPass());
PM.add(createLowerAllocationsPass(true));
PM.add(createLowerInvokePass());
PM.add(createCFGSimplificationPass()); // clean up after lower invoke.
PM.add(new CBackendNameAllUsedStructsAndMergeFunctions());
PM.add(new CWriter(o));
+ PM.add(createCollectorMetadataDeleter());
return false;
}