[PATCH] D14854: [PGO] runtime/instrumentation code restructuring

David Li via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 19 19:00:30 PST 2015


davidxl created this revision.
davidxl added a reviewer: vsk.
davidxl added a subscriber: llvm-commits.

This is the first step to enable code sharing (and being in sync) between LLVM and compiler-rt/lib/profile. In this patch, most of the data structures, key constant literals, enums, and signature affecting ABI and raw format are moved to the common file InstrProfData.inc which is to be shared (via copy) across runtime and LLVM. The file InstrProfData.inc is also restructured to allow it being included standalone. In particular
1) Moved raw header field defs into the template file
2) Moved VP kind enum to the file (affecting ProfData layout)
3) Moved raw version, magic definitions to the file
4) Moved runtime section name/namestring defs (with macros) in the file
5) Added value profiling entry point API signature def
6) change the comments into C style 
7) Added more documentation.



http://reviews.llvm.org/D14854

Files:
  include/llvm/ProfileData/InstrProf.h
  include/llvm/ProfileData/InstrProfData.inc
  lib/Transforms/Instrumentation/InstrProfiling.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14854.40727.patch
Type: text/x-patch
Size: 15902 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151120/050cfcfa/attachment.bin>


More information about the llvm-commits mailing list