qopt-report, Qopt-report

Enables the generation of a transformation remarks report.

Syntax

Linux:

-qopt-report

Windows:

/Qopt-report

Arguments

None

Default

OFF

No optimization report is generated.

Description

This option enables the generation of a transformation remarks report.

Use this option to emit a YAML-formatted optimization report for the the source file being compiled. For example:

  icx -fiopenmp -qopt-report foo.c

This command will generate a file called foo.opt.yaml containing the optimization report messages.

Use opt-viewer.py (from llvm/tools/opt-viewer) to create html files from the YAML file. For example:

  opt-viewer.py foo.opt.yaml 

You can use any web-browser to open the html file to see the opt-report messages displayed inline with the original. For example:

  Firefox html/foo.c.html source code

For SYCL compilations, you can also use this option to detail the variables passed to the OpenCL kernel in the optimization report. For example:

  icx -fsycl -qopt-report foo.cpp          ! command for the C++ compiler
  dpcpp -qopt-report foo.cpp               ! command for the DPC++ compiler

The above command will generate a YAML-formatted optimization report that contains optimization remarks for the SYCL pass. These remarks will list the OpenCL kernel arguments generated by the compiler for the user-defined SYCL kernels in foo.cpp. The remarks will also provide additional information like name, type, and size for the OpenCL kernel arguments.

You can then use opt-viewer.py to create html files from the YAML file, and use any web-browser to open the html file to see the opt-report remarks.

IDE Equivalent

None

Alternate Options

None