Re-factor sample profile reader into lib/ProfileData.


Re-factor sample profile reader into lib/ProfileData.

This patch moves the profile reading logic out of the Sample Profile
transformation into a generic profile reader facility in

The intent is to use this new reader to implement a sample profile
reader/writer that can be used to convert sample profiles from external
sources into LLVM.

This first patch introduces no functional changes. It moves the profile
reading code from lib/Transforms/SampleProfile.cpp into

In subsequent patches I will:

  • Add a bitcode format for sample profiles to allow for more efficient encoding of the profile.
  • Add a writer for both text and bitcode format profiles.
  • Add a 'convert' command to llvm-profdata to be able to convert between the two (and serve as entry point for other sample profile formats).

Reviewers: bogner, echristo

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D5250

Event Timeline