mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-19 04:32:19 +00:00
Don't emit the extra checksum into the .gcda file if the user hasn't asked for
it. Fortunately, versions of gcov that predate the extra checksum also ignore any extra data, so this isn't a problem. There will be a matching commit in compiler-rt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176745 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
24babfd234
commit
17d2f77601
@ -601,9 +601,10 @@ Constant *GCOVProfiler::getIncrementIndirectCounterFunc() {
|
||||
}
|
||||
|
||||
Constant *GCOVProfiler::getEmitFunctionFunc() {
|
||||
Type *Args[2] = {
|
||||
Type *Args[3] = {
|
||||
Type::getInt32Ty(*Ctx), // uint32_t ident
|
||||
Type::getInt8PtrTy(*Ctx), // const char *function_name
|
||||
Type::getInt8Ty(*Ctx), // uint8_t use_extra_checksum
|
||||
};
|
||||
FunctionType *FTy = FunctionType::get(Type::getVoidTy(*Ctx), Args, false);
|
||||
return M->getOrInsertFunction("llvm_gcda_emit_function", FTy);
|
||||
@ -668,12 +669,13 @@ void GCOVProfiler::insertCounterWriteout(
|
||||
I = CountersBySP.begin(), E = CountersBySP.end();
|
||||
I != E; ++I) {
|
||||
DISubprogram SP(I->second);
|
||||
Builder.CreateCall2(EmitFunction,
|
||||
Builder.CreateCall3(EmitFunction,
|
||||
Builder.getInt32(i),
|
||||
NoFunctionNamesInData ?
|
||||
Constant::getNullValue(Builder.getInt8PtrTy()) :
|
||||
Builder.CreateGlobalStringPtr(SP.getName()));
|
||||
|
||||
Builder.CreateGlobalStringPtr(SP.getName()),
|
||||
Builder.getInt8(UseExtraChecksum));
|
||||
|
||||
GlobalVariable *GV = I->first;
|
||||
unsigned Arcs =
|
||||
cast<ArrayType>(GV->getType()->getElementType())->getNumElements();
|
||||
|
Loading…
x
Reference in New Issue
Block a user