view gen/passes/Passes.h @ 1483:defafbabbe32

Add a pass to strip the bodies of `available_externally` functions so string literals and `TypeInfo`s only referenced by them can be deleted by `-globaldce`.
author Frits van Bommel <fvbommel wxs.nl>
date Sun, 07 Jun 2009 16:00:13 +0200
parents e109e4031e8a
children c88b16d4a13c
line wrap: on
line source

#ifndef LDC_PASSES_H
#define LDC_PASSES_H

#include "gen/metadata.h"
namespace llvm {
    class FunctionPass;
    class ModulePass;
}

// Performs simplifications on runtime calls.
llvm::FunctionPass* createSimplifyDRuntimeCalls();

#ifdef USE_METADATA
llvm::FunctionPass* createGarbageCollect2Stack();
llvm::ModulePass* createStripMetaData();
#endif

#if LLVM_REV >= 68940
llvm::ModulePass* createStripExternalsPass();
#endif

#endif