From: Eugene Rozenfeld Date: Fri, 30 Jun 2023 02:38:41 +0000 (-0700) Subject: Collect both user and kernel events for autofdo tests and autoprofiledbootstrap X-Git-Tag: basepoints/gcc-15~7752 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=275f7bc35fb864ef7867ff7e12bf5b27277ecc36;p=thirdparty%2Fgcc.git 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 --- diff --git a/Makefile.in b/Makefile.in index f19a9db621e3..04307ca561be 100644 --- a/Makefile.in +++ b/Makefile.in @@ -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 diff --git a/Makefile.tpl b/Makefile.tpl index 3a5b7ed3c920..d0fe7e2fb778 100644 --- a/Makefile.tpl +++ b/Makefile.tpl @@ -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 diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 4d04df2a7099..b16853d76df9 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -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.