Collect both user and kernel events for autofdo tests and autoprofiledbootstrap

When we collect just user events for autofdo with lbr we get some events where branch
sources are kernel addresses and branch targets are user addresses. Without kernel MMAP
events create_gcov can't make sense of kernel addresses. Currently create_gcov fails if
it can't map at least 95% of events. We sometimes get below this threshold with just
user events. The change is to collect both user events and kernel events.

Tested on x86_64-pc-linux-gnu.

ChangeLog:

	* Makefile.in: Collect both kernel and user events for autofdo
	* Makefile.tpl: Collect both kernel and user events for autofdo

gcc/testsuite/ChangeLog:

	* lib/target-supports.exp: Collect both kernel and user events for autofdo
This commit is contained in:
Eugene Rozenfeld 2023-06-29 19:38:41 -07:00
parent bdf2737cda
commit 275f7bc35f
3 changed files with 3 additions and 3 deletions

View file

@ -404,7 +404,7 @@ MAKEINFO = @MAKEINFO@
EXPECT = @EXPECT@
RUNTEST = @RUNTEST@
AUTO_PROFILE = gcc-auto-profile -c 10000000
AUTO_PROFILE = gcc-auto-profile --all -c 10000000
# This just becomes part of the MAKEINFO definition passed down to
# sub-makes. It lets flags be given on the command line while still

View file

@ -407,7 +407,7 @@ MAKEINFO = @MAKEINFO@
EXPECT = @EXPECT@
RUNTEST = @RUNTEST@
AUTO_PROFILE = gcc-auto-profile -c 10000000
AUTO_PROFILE = gcc-auto-profile --all -c 10000000
# This just becomes part of the MAKEINFO definition passed down to
# sub-makes. It lets flags be given on the command line while still

View file

@ -704,7 +704,7 @@ proc check_effective_target_keeps_null_pointer_checks { } {
# this allows parallelism of 16 and higher of parallel gcc-auto-profile
proc profopt-perf-wrapper { } {
global srcdir
return "$srcdir/../config/i386/gcc-auto-profile -m8 "
return "$srcdir/../config/i386/gcc-auto-profile --all -m8 "
}
# Return true if profiling is supported on the target.