Commit Graph

1 Commits

Author SHA1 Message Date
Andi Kleen
7b72d14a9f Add gcc-auto-profile script
Using autofdo is currently something difficult. It requires using the
model specific branches taken event, which differs on different CPUs.
The example shown in the manual requires a special patched version of
perf that is non standard, and also will likely not work everywhere.

This patch adds a new gcc-auto-profile script that figures out the
correct event and runs perf.

This is needed to actually make use of autofdo in a generic way
in the build system and in the test suite.

Since maintaining the script would be somewhat tedious (needs changes
every time a new CPU comes out) I auto generated it from the online
Intel event database. The script to do that is in contrib and can be
rerun.

Right now there is no test if perf works in configure. This
would vary depending on the build and target system, and since
it currently doesn't work in virtualization and needs uptodate
kernel it may often fail in common distribution build setups.

So far the script is not installed.

gcc/:
2016-06-23  Andi Kleen  <ak@linux.intel.com>

	* config/i386/gcc-auto-profile: New file.

contrib/:

2016-06-23  Andi Kleen  <ak@linux.intel.com>

	* gen_autofdo_event.py: New file to regenerate
	gcc-auto-profile.

From-SVN: r237731
2016-06-23 14:33:53 +00:00