[PGO] Introduce value profile data closure type.
The closure is designed to abstact away two types of value profile
data:
- InstrProfRecord which is the primary data structure used to
represent profile data in host tools (reader, writer, and profile-use)
- value profile runtime data structure suitable to be used by C
runtime library.
Both sources of data need to serialize to disk/memory-buffer in common
format: ValueProfData.
The abstraction allows compiler-rt's raw profiler writer to share
the same code with indexed profile writer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254008
91177308-0d34-0410-b5e6-
96231b3b80d8