Change the API of the instrumented profiling library to work with shared
objects.
- Most things are now declared hidden, so that each executable gets
its own copy.
- Initialization hooks up a linked list of writers.
- The raw format with shared objects that are profiled consists of a
concatenated series of profiles. llvm-profdata knows how to deal
with that since r208938.
<rdar://problem/16918688>
llvm-svn: 208940
10 lines
156 B
C++
10 lines
156 B
C++
#include "instrprof-dynamic-header.h"
|
|
void foo(int K) { if (K) {} }
|
|
int main(int argc, char *argv[]) {
|
|
foo(5);
|
|
bar<void>();
|
|
a();
|
|
b();
|
|
return 0;
|
|
}
|