[PATCH] D14401: [PGO] Make indexed value profile data more compact and add structural definitions for the data format

David Li via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 5 15:54:39 PST 2015


davidxl created this revision.
davidxl added reviewers: betulb, bogner.
davidxl added a subscriber: llvm-commits.

The patch include the following changes:
  - Make indexed value profile data more compact by peeling out the per-site value count field into its own smaller sized array.
  - Introduced formal data structure definitions to specify value profile data layout in indexed format. Previously the layout of the
    data is only assumed in the client code (scattered in three different places : size computation, EmitData, and ReadData) which
    can be out of sync.
  - The bulk of reading/writing is the implementation of serialization/deserialization of the value profile data: interfaces that convert
     between on-disk ValueProfData and InstrProfRecord class.
  - The new data structure also serves as a central place for layout documentation.

http://reviews.llvm.org/D14401

Files:
  include/llvm/ProfileData/InstrProf.h
  lib/ProfileData/InstrProfReader.cpp
  lib/ProfileData/InstrProfWriter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14401.39431.patch
Type: text/x-patch
Size: 17241 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151105/a12c3490/attachment.bin>


More information about the llvm-commits mailing list