https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103666
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |WONTFIX Summary|[11/12 Regression] |[11/12 Regression] |compiling single-file |compiling single-file |preprocessed programs with |programs with |-fprofile-generate no |-fprofile-generate no |longer leads to intended |longer leads to intended |results since |results since |r11-627-g1dedc12d186a1108 |r11-627-g1dedc12d186a1108 --- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> --- that's because the explicitely named linker output in the -fprofile-use case. A fix might be to separate compile and link step. I don't think there's anything special about using preprocessed source: > cat t.c int main(){} > ./xgcc -B. t.c -fprofile-generate > ./a.out > ./xgcc -B. t.c -fprofile-use -o a.out-use t.c: In function 'main': t.c:1:1: warning: '/tmp/obj/gcc/a.out-use-t.gcda' profile count data file not found [-Wmissing-profile] 1 | int main(){} | ^~~ > ls *.gcda a-t.gcda I'd declare this as WONTFIX. I've adjusted the C++ tester for tramp3d to use an explicit -dumpbase