Re: Extract function properties

soma pal via Gcc <[email protected]>
Newsgroups gmane.comp.gcc.devel
Message-ID <CAAsrpJPTARw50UXa+4SgjvYaw3WaYNSzV611+CMBiwM00z5i+A@mail.gmail.com>
Hi Dave,

Thanks for the suggestions. I will look into -fsave-optimization-record and
pugin implementation.

Thanks

Soma

On Thu, Apr 9, 2026 at 2:57 PM David Malcolm <[email protected]> wrote:

> On Wed, 2026-04-08 at 11:47 -0500, soma pal via Gcc wrote:
> > Hi ,
>
> Hi Soma
>
> >
> > I am a research scholar working with GCC, and I am interested in
> > extracting
> > properties of individual functions in a program, especially the hot
> > functions identified through profiling. I would like to obtain
> > features
> > such as function_name, bb_count, loop_count, branch_count,
> > call_count,
> > load_count, store_count, and instruction_count to use as input for an
> > ML
> > model.
> >
> > Could you please suggest a way to extract this information?
>
> Some possible approaches you could try:
>
> * -fsave-optimization-record will write out a SRCFILE.opt-
> record.json.gz with information on optimization, including some of the
> information you want (e.g. profile data)
>
> * -fdump-tree-all, -fdump-rtl-all, etc will dump a lot more info,
> albeit not necessarily in a readily-consumable form
>
> * in the not-yet-released trunk (gcc 16), -fdiagnostics-add-
> output=sarif:cfgs=yes emits a .sarif file containing detailed
> information about the CFGs for all functions at the start of each
> optimization pass (both for the gimple and RTL intermediate
> representations).
>
> * write a plugin that captures exactly the information you need
> (perhaps looking at the implementation of the above for inspiration)
>
> Hope this is constructive
> Dave
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.