[LLVMdev] RFC: Binary format for instrumentation based profiling data (original) (raw)
Diego Novillo dnovillo at google.com
Thu Mar 13 05:48:19 PDT 2014
- Previous message: [LLVMdev] RFC: Binary format for instrumentation based profiling data
- Next message: [LLVMdev] RFC: Binary format for instrumentation based profiling data
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Wed, Mar 12, 2014 at 9:09 PM, Justin Bogner <mail at justinbogner.com> wrote:
Functions are represented by strings, determined by the part of the frontend that both generates and uses this data. In our case, these are generally whatever clang thinks of as the function's name, with minor details added to disambiguate names that aren't necessarily unique.
Why not just use mangled names here? No need to add minor details, nor ad-hoc disambiguation. If you're already using mangled names, then I'm not sure why we need disambiguating details.
The counter data is simply an array of unsigned 64 bit values. Given an offset found in the index, a sequence follows:
<counters...> This is all of the data needed for a given function.
How are counters represented? Are these line numbers together with the counter? Basic blocks? Edges?
I wonder if it would make sense to use the existing gcov format for this. OTOH, we could provide a converter in the Profile library.
Thanks. Diego.
- Previous message: [LLVMdev] RFC: Binary format for instrumentation based profiling data
- Next message: [LLVMdev] RFC: Binary format for instrumentation based profiling data
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]