Add gcc-auto-profile script
authorAndi Kleen <ak@linux.intel.com>
Thu, 23 Jun 2016 14:33:53 +0000 (14:33 +0000)
committerAndi Kleen <ak@gcc.gnu.org>
Thu, 23 Jun 2016 14:33:53 +0000 (14:33 +0000)
commit7b72d14a9fc6f99caf54ed7b2a5b567d97bd3bb3
tree216126c09cb0d4e822fbfb1aac9111a1067ecc67
parent60fa7862a0a1ad80f587cb29bcc8613a78303f90
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
contrib/ChangeLog
contrib/gen_autofdo_event.py [new file with mode: 0755]
gcc/ChangeLog
gcc/config/i386/gcc-auto-profile [new file with mode: 0755]