clang  3.9.0
Functions
BackendUtil.cpp File Reference
#include "clang/CodeGen/BackendUtil.h"
#include "clang/Basic/Diagnostic.h"
#include "clang/Basic/LangOptions.h"
#include "clang/Basic/TargetOptions.h"
#include "clang/Frontend/CodeGenOptions.h"
#include "clang/Frontend/FrontendDiagnostic.h"
#include "clang/Frontend/Utils.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/ADT/Triple.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Bitcode/BitcodeWriterPass.h"
#include "llvm/Bitcode/ReaderWriter.h"
#include "llvm/CodeGen/RegAllocRegistry.h"
#include "llvm/CodeGen/SchedulerRegistry.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/ModuleSummaryIndex.h"
#include "llvm/IR/IRPrintingPasses.h"
#include "llvm/IR/LegacyPassManager.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/Verifier.h"
#include "llvm/MC/SubtargetFeature.h"
#include "llvm/Object/ModuleSummaryIndexObjectFile.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/PrettyStackTrace.h"
#include "llvm/Support/TargetRegistry.h"
#include "llvm/Support/Timer.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetOptions.h"
#include "llvm/Target/TargetSubtargetInfo.h"
#include "llvm/Transforms/IPO.h"
#include "llvm/Transforms/IPO/PassManagerBuilder.h"
#include "llvm/Transforms/Instrumentation.h"
#include "llvm/Transforms/ObjCARC.h"
#include "llvm/Transforms/Scalar.h"
#include "llvm/Transforms/Scalar/GVN.h"
#include "llvm/Transforms/Utils/SymbolRewriter.h"
#include <memory>
Include dependency graph for BackendUtil.cpp:

Go to the source code of this file.

Functions

static void addObjCARCAPElimPass (const PassManagerBuilder &Builder, PassManagerBase &PM)
 
static void addObjCARCExpandPass (const PassManagerBuilder &Builder, PassManagerBase &PM)
 
static void addObjCARCOptPass (const PassManagerBuilder &Builder, PassManagerBase &PM)
 
static void addAddDiscriminatorsPass (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addCleanupPassesForSampleProfiler (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addBoundsCheckingPass (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addSanitizerCoveragePass (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addAddressSanitizerPasses (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addKernelAddressSanitizerPasses (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addMemorySanitizerPass (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addThreadSanitizerPass (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addDataFlowSanitizerPass (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static void addEfficiencySanitizerPass (const PassManagerBuilder &Builder, legacy::PassManagerBase &PM)
 
static TargetLibraryInfoImpl * createTLII (llvm::Triple &TargetTriple, const CodeGenOptions &CodeGenOpts)
 
static void addSymbolRewriterPass (const CodeGenOptions &Opts, legacy::PassManager *MPM)
 
static const char * getSectionNameForBitcode (const Triple &T)
 
static const char * getSectionNameForCommandline (const Triple &T)
 

Function Documentation

static void addAddDiscriminatorsPass ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 145 of file BackendUtil.cpp.

static void addAddressSanitizerPasses ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static
static void addBoundsCheckingPass ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 161 of file BackendUtil.cpp.

static void addCleanupPassesForSampleProfiler ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 150 of file BackendUtil.cpp.

static void addDataFlowSanitizerPass ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 228 of file BackendUtil.cpp.

References Builder, and clang::LangOptions::SanitizerBlacklistFiles.

static void addEfficiencySanitizerPass ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static
static void addKernelAddressSanitizerPasses ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 194 of file BackendUtil.cpp.

static void addMemorySanitizerPass ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 203 of file BackendUtil.cpp.

References Builder.

static void addObjCARCAPElimPass ( const PassManagerBuilder &  Builder,
PassManagerBase &  PM 
)
static

Definition at line 130 of file BackendUtil.cpp.

static void addObjCARCExpandPass ( const PassManagerBuilder &  Builder,
PassManagerBase &  PM 
)
static

Definition at line 135 of file BackendUtil.cpp.

static void addObjCARCOptPass ( const PassManagerBuilder &  Builder,
PassManagerBase &  PM 
)
static

Definition at line 140 of file BackendUtil.cpp.

static void addSanitizerCoveragePass ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 166 of file BackendUtil.cpp.

References Builder.

static void addSymbolRewriterPass ( const CodeGenOptions Opts,
legacy::PassManager *  MPM 
)
static

Definition at line 272 of file BackendUtil.cpp.

References clang::CodeGenOptions::RewriteMapFiles.

static void addThreadSanitizerPass ( const PassManagerBuilder &  Builder,
legacy::PassManagerBase &  PM 
)
static

Definition at line 223 of file BackendUtil.cpp.

static TargetLibraryInfoImpl* createTLII ( llvm::Triple &  TargetTriple,
const CodeGenOptions CodeGenOpts 
)
static
static const char* getSectionNameForBitcode ( const Triple &  T)
static

Definition at line 766 of file BackendUtil.cpp.

Referenced by clang::EmbedBitcode().

static const char* getSectionNameForCommandline ( const Triple &  T)
static

Definition at line 778 of file BackendUtil.cpp.

Referenced by clang::EmbedBitcode().