LLVM: lib/CGData/CodeGenData.cpp File Reference (original) (raw)

Go to the source code of this file.

Macros
#define DEBUG_TYPE "cg-data"
#define CG_DATA_SECT_ENTRY(Kind, SectNameCommon, SectNameCoff, Prefix)
#define CG_DATA_SIMPLE_QUOTE(x)
#define CG_DATA_QUOTE(x)
#define CG_DATA_DEFINED
#define CG_DATA_OUTLINE_COMMON __llvm_outline
#define CG_DATA_MERGE_COMMON __llvm_merge
#define CG_DATA_OUTLINE_COFF ".loutline"
#define CG_DATA_MERGE_COFF ".lmerge"
#define CG_DATA_OUTLINE_SECT_NAME CG_DATA_QUOTE(CG_DATA_OUTLINE_COMMON)
#define CG_DATA_MERGE_SECT_NAME CG_DATA_QUOTE(CG_DATA_MERGE_COMMON)
#define CG_DATA_INDEX_VERSION 4
#define CG_DATA_SECT_ENTRY(Kind, SectNameCommon, SectNameCoff, Prefix)
#define CG_DATA_SIMPLE_QUOTE(x)
#define CG_DATA_QUOTE(x)
#define CG_DATA_DEFINED
#define CG_DATA_OUTLINE_COMMON __llvm_outline
#define CG_DATA_MERGE_COMMON __llvm_merge
#define CG_DATA_OUTLINE_COFF ".loutline"
#define CG_DATA_MERGE_COFF ".lmerge"
#define CG_DATA_OUTLINE_SECT_NAME CG_DATA_QUOTE(CG_DATA_OUTLINE_COMMON)
#define CG_DATA_MERGE_SECT_NAME CG_DATA_QUOTE(CG_DATA_MERGE_COMMON)
#define CG_DATA_INDEX_VERSION 4
#define CG_DATA_SECT_ENTRY(Kind, SectNameCommon, SectNameCoff, Prefix)
#define CG_DATA_SIMPLE_QUOTE(x)
#define CG_DATA_QUOTE(x)
#define CG_DATA_DEFINED
#define CG_DATA_OUTLINE_COMMON __llvm_outline
#define CG_DATA_MERGE_COMMON __llvm_merge
#define CG_DATA_OUTLINE_COFF ".loutline"
#define CG_DATA_MERGE_COFF ".lmerge"
#define CG_DATA_OUTLINE_SECT_NAME CG_DATA_QUOTE(CG_DATA_OUTLINE_COMMON)
#define CG_DATA_MERGE_SECT_NAME CG_DATA_QUOTE(CG_DATA_MERGE_COMMON)
#define CG_DATA_INDEX_VERSION 4
Functions
static std::string getCGDataErrString (cgdata_error Err, const std::string &ErrMsg="")
LLVM_ABI std::string llvm::getCodeGenDataSectionName (CGDataSectKind CGSK, Triple::ObjectFormatType OF, bool AddSegmentInfo=true)
LLVM_ABI void llvm::cgdata::warn (Twine Message, StringRef Whence="", StringRef Hint="")
LLVM_ABI void llvm::cgdata::warn (Error E, StringRef Whence="")
LLVM_ABI void llvm::cgdata::saveModuleForTwoRounds (const Module &TheModule, unsigned Task, AddStreamFn AddStream)
Save TheModule before the first codegen round.
LLVM_ABI std::unique_ptr< Module > llvm::cgdata::loadModuleForTwoRounds (BitcodeModule &OrigModule, unsigned Task, LLVMContext &Context, ArrayRef< StringRef > IRFiles)
Load the optimized bitcode module for the second codegen round.
LLVM_ABI Expected< stable_hash > llvm::cgdata::mergeCodeGenData (ArrayRef< StringRef > ObjectFiles)
Merge the codegen data from the scratch objects ObjectFiles from the first codegen round.
Variables
static cl::opt< bool > CodeGenDataGenerate ("codegen-data-generate", cl::init(false), cl::Hidden, cl::desc("Emit CodeGen Data into custom sections"))
static cl::opt< std::string > CodeGenDataUsePath ("codegen-data-use-path", cl::init(""), cl::Hidden, cl::desc("File path to where .cgdata file is read"))
cl::opt< bool > llvm::CodeGenDataThinLTOTwoRounds ("codegen-data-thinlto-two-rounds", cl::init(false), cl::Hidden, cl::desc("Enable two-round ThinLTO code generation. The first round " "emits codegen data, while the second round uses the emitted " "codegen data for further optimizations."))

CG_DATA_DEFINED [1/3]

CG_DATA_DEFINED [2/3]

CG_DATA_DEFINED [3/3]

CG_DATA_INDEX_VERSION [1/3]

#define CG_DATA_INDEX_VERSION 4

CG_DATA_INDEX_VERSION [2/3]

#define CG_DATA_INDEX_VERSION 4

CG_DATA_INDEX_VERSION [3/3]

#define CG_DATA_INDEX_VERSION 4

CG_DATA_MERGE_COFF [1/3]

#define CG_DATA_MERGE_COFF ".lmerge"

CG_DATA_MERGE_COFF [2/3]

#define CG_DATA_MERGE_COFF ".lmerge"

CG_DATA_MERGE_COFF [3/3]

#define CG_DATA_MERGE_COFF ".lmerge"

CG_DATA_MERGE_COMMON [1/3]

#define CG_DATA_MERGE_COMMON __llvm_merge

CG_DATA_MERGE_COMMON [2/3]

#define CG_DATA_MERGE_COMMON __llvm_merge

CG_DATA_MERGE_COMMON [3/3]

#define CG_DATA_MERGE_COMMON __llvm_merge

CG_DATA_MERGE_SECT_NAME [1/3]

CG_DATA_MERGE_SECT_NAME [2/3]

CG_DATA_MERGE_SECT_NAME [3/3]

CG_DATA_OUTLINE_COFF [1/3]

#define CG_DATA_OUTLINE_COFF ".loutline"

CG_DATA_OUTLINE_COFF [2/3]

#define CG_DATA_OUTLINE_COFF ".loutline"

CG_DATA_OUTLINE_COFF [3/3]

#define CG_DATA_OUTLINE_COFF ".loutline"

CG_DATA_OUTLINE_COMMON [1/3]

#define CG_DATA_OUTLINE_COMMON __llvm_outline

CG_DATA_OUTLINE_COMMON [2/3]

#define CG_DATA_OUTLINE_COMMON __llvm_outline

CG_DATA_OUTLINE_COMMON [3/3]

#define CG_DATA_OUTLINE_COMMON __llvm_outline

CG_DATA_OUTLINE_SECT_NAME [1/3]

CG_DATA_OUTLINE_SECT_NAME [2/3]

CG_DATA_OUTLINE_SECT_NAME [3/3]

CG_DATA_QUOTE [1/3]

#define CG_DATA_QUOTE ( x )

Value:

#define CG_DATA_SIMPLE_QUOTE(x)

CG_DATA_QUOTE [2/3]

#define CG_DATA_QUOTE ( x )

CG_DATA_QUOTE [3/3]

#define CG_DATA_QUOTE ( x )

CG_DATA_SECT_ENTRY [1/3]

#define CG_DATA_SECT_ENTRY ( Kind,
SectNameCommon,
SectNameCoff,
Prefix )

CG_DATA_SECT_ENTRY [2/3]

#define CG_DATA_SECT_ENTRY ( Kind,
SectNameCommon,
SectNameCoff,
Prefix )

CG_DATA_SECT_ENTRY [3/3]

#define CG_DATA_SECT_ENTRY ( Kind,
SectNameCommon,
SectNameCoff,
Prefix )

CG_DATA_SIMPLE_QUOTE [1/3]

#define CG_DATA_SIMPLE_QUOTE ( x )

CG_DATA_SIMPLE_QUOTE [2/3]

#define CG_DATA_SIMPLE_QUOTE ( x )

CG_DATA_SIMPLE_QUOTE [3/3]

#define CG_DATA_SIMPLE_QUOTE ( x )

DEBUG_TYPE

#define DEBUG_TYPE "cg-data"

getCGDataErrString()

CodeGenDataGenerate

cl::opt< bool > CodeGenDataGenerate("codegen-data-generate", cl::init(false), cl::Hidden, cl::desc("Emit CodeGen Data into custom sections")) ( "codegen-data-generate" , cl::init(false) , cl::Hidden , cl::desc("Emit CodeGen Data into custom sections") ) static

CodeGenDataUsePath