forked from OSchip/llvm-project
[GCOV] Skip artificial functions from being emitted
This is a patch to support D66328, which was reverted until this lands. Enable a compiler-rt test that used to fail previously with D66328. Differential Revision: https://reviews.llvm.org/D67283
This commit is contained in:
parent
e06f3e064a
commit
478ad94c8e
|
@ -1,9 +1,6 @@
|
|||
// RUN: %clangxx_asan -coverage -O0 %s -o %t
|
||||
// RUN: %env_asan_opts=check_initialization_order=1 %run %t 2>&1 | FileCheck %s
|
||||
|
||||
// We don't really support running tests using profile runtime on Windows.
|
||||
// UNSUPPORTED: windows-msvc
|
||||
|
||||
#include <stdio.h>
|
||||
int foo() { return 1; }
|
||||
int XXX = foo();
|
||||
|
|
|
@ -714,7 +714,10 @@ void GCOVProfiler::emitProfileNotes() {
|
|||
// to have a counter for the function definition.
|
||||
uint32_t Line = SP->getLine();
|
||||
auto Filename = getFilename(SP);
|
||||
Func.getBlock(&EntryBlock).getFile(Filename).addLine(Line);
|
||||
|
||||
// Artificial functions such as global initializers
|
||||
if (!SP->isArtificial())
|
||||
Func.getBlock(&EntryBlock).getFile(Filename).addLine(Line);
|
||||
|
||||
for (auto &BB : F) {
|
||||
GCOVBlock &Block = Func.getBlock(&BB);
|
||||
|
|
Loading…
Reference in New Issue