forked from OSchip/llvm-project
Use profile data template file for covmap func record (NFC)
llvm-svn: 252147
This commit is contained in:
parent
1084a94bf4
commit
a026a43719
|
@ -910,24 +910,23 @@ static void dump(llvm::raw_ostream &OS, StringRef FunctionName,
|
|||
}
|
||||
|
||||
void CoverageMappingModuleGen::addFunctionMappingRecord(
|
||||
llvm::GlobalVariable *FunctionName, StringRef FunctionNameValue,
|
||||
uint64_t FunctionHash, const std::string &CoverageMapping) {
|
||||
llvm::GlobalVariable *NamePtr, StringRef NameValue,
|
||||
uint64_t FuncHash, const std::string &CoverageMapping) {
|
||||
llvm::LLVMContext &Ctx = CGM.getLLVMContext();
|
||||
auto *Int32Ty = llvm::Type::getInt32Ty(Ctx);
|
||||
auto *Int64Ty = llvm::Type::getInt64Ty(Ctx);
|
||||
auto *Int8PtrTy = llvm::Type::getInt8PtrTy(Ctx);
|
||||
if (!FunctionRecordTy) {
|
||||
llvm::Type *FunctionRecordTypes[] = {Int8PtrTy, Int32Ty, Int32Ty, Int64Ty};
|
||||
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Init) LLVMType,
|
||||
llvm::Type *FunctionRecordTypes[] = {
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
FunctionRecordTy =
|
||||
llvm::StructType::get(Ctx, makeArrayRef(FunctionRecordTypes),
|
||||
/*isPacked=*/true);
|
||||
}
|
||||
|
||||
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Init) Init,
|
||||
llvm::Constant *FunctionRecordVals[] = {
|
||||
llvm::ConstantExpr::getBitCast(FunctionName, Int8PtrTy),
|
||||
llvm::ConstantInt::get(Int32Ty, FunctionNameValue.size()),
|
||||
llvm::ConstantInt::get(Int32Ty, CoverageMapping.size()),
|
||||
llvm::ConstantInt::get(Int64Ty, FunctionHash)};
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
FunctionRecords.push_back(llvm::ConstantStruct::get(
|
||||
FunctionRecordTy, makeArrayRef(FunctionRecordVals)));
|
||||
CoverageMappings += CoverageMapping;
|
||||
|
@ -949,7 +948,7 @@ void CoverageMappingModuleGen::addFunctionMappingRecord(
|
|||
Expressions, Regions);
|
||||
if (Reader.read())
|
||||
return;
|
||||
dump(llvm::outs(), FunctionNameValue, Expressions, Regions);
|
||||
dump(llvm::outs(), NameValue, Expressions, Regions);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue