mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-11 21:57:55 +00:00
[PGO] Introduce coverage map header structure in PGO data template file /NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@256710 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
c4a05c2991
commit
edf18107db
@ -612,8 +612,14 @@ template <class IntPtrT> struct CovMapFunctionRecord {
|
||||
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Init) Type Name;
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
LLVM_PACKED_END
|
||||
// Per module coverage mapping data header, i.e. CoverageMapFileHeader
|
||||
// documented above.
|
||||
struct CovMapHeader {
|
||||
#define COVMAP_HEADER(Type, LLVMType, Name, Init) Type Name;
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
|
||||
LLVM_PACKED_END
|
||||
}
|
||||
|
||||
} // end namespace llvm
|
||||
|
@ -167,6 +167,25 @@ COVMAP_FUNC_RECORD(const uint64_t, llvm::Type::getInt64Ty(Ctx), FuncHash, \
|
||||
#undef COVMAP_FUNC_RECORD
|
||||
/* COVMAP_FUNC_RECORD end. */
|
||||
|
||||
/* COVMAP_HEADER start */
|
||||
/* Definition of member fields of coverage map header.
|
||||
*/
|
||||
#ifndef COVMAP_HEADER
|
||||
#define COVMAP_HEADER(Type, LLVMType, Name, Initializer)
|
||||
#else
|
||||
#define INSTR_PROF_DATA_DEFINED
|
||||
#endif
|
||||
COVMAP_HEADER(uint32_t, Int32Ty, NRecords, \
|
||||
llvm::ConstantInt::get(Int32Ty, FunctionRecords.size()))
|
||||
COVMAP_HEADER(uint32_t, Int32Ty, FilenamesSize, \
|
||||
llvm::ConstantInt::get(Int32Ty, FilenamesSize))
|
||||
COVMAP_HEADER(uint32_t, Int32Ty, CoverageSize, \
|
||||
llvm::ConstantInt::get(Int32Ty, CoverageMappingSize))
|
||||
COVMAP_HEADER(uint32_t, Int32Ty, Version, \
|
||||
llvm::ConstantInt::get(Int32Ty, CoverageMappingVersion1))
|
||||
#undef COVMAP_HEADER
|
||||
/* COVMAP_HEADER end. */
|
||||
|
||||
|
||||
#ifdef INSTR_PROF_VALUE_PROF_DATA
|
||||
#define INSTR_PROF_DATA_DEFINED
|
||||
|
Loading…
Reference in New Issue
Block a user