[Python-checkins] gh-104523: Inline minimal PGO rules (#104524)
erlend-aasland
webhook-mailer at python.org
Tue May 16 04:05:20 EDT 2023
https://github.com/python/cpython/commit/9084e1b04f8d35721b535a3acd550b920d50f11a
commit: 9084e1b04f8d35721b535a3acd550b920d50f11a
branch: main
author: Gregory Szorc <gregory.szorc at gmail.com>
committer: erlend-aasland <erlend.aasland at protonmail.com>
date: 2023-05-16T10:04:58+02:00
summary:
gh-104523: Inline minimal PGO rules (#104524)
Inline profiling rules where the existing indirection was unneeded.
files:
M Makefile.pre.in
diff --git a/Makefile.pre.in b/Makefile.pre.in
index d66574143267..8f43def305f3 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -643,7 +643,7 @@ profile-gen-stamp: profile-clean-stamp
exit 1;\
fi
@echo "Building with support for profile generation:"
- $(MAKE) build_all_generate_profile
+ $(MAKE) @DEF_MAKE_RULE@ CFLAGS_NODIST="$(CFLAGS_NODIST) $(PGO_PROF_GEN_FLAG)" LDFLAGS_NODIST="$(LDFLAGS_NODIST) $(PGO_PROF_GEN_FLAG)" LIBS="$(LIBS)"
touch $@
# Run task with profile generation build to create profile information.
@@ -653,8 +653,9 @@ profile-run-stamp:
# enabled.
$(MAKE) profile-gen-stamp
# Next, run the profile task to generate the profile information.
- $(MAKE) run_profile_task
- $(MAKE) build_all_merge_profile
+ @ # FIXME: can't run for a cross build
+ $(LLVM_PROF_FILE) $(RUNSHARED) ./$(BUILDPYTHON) $(PROFILE_TASK) || true
+ $(LLVM_PROF_MERGER)
# Remove profile generation binary since we are done with it.
$(MAKE) clean-retain-profile
# This is an expensive target to build and it does not have proper
@@ -662,19 +663,6 @@ profile-run-stamp:
# to record its completion and avoid re-running it.
touch $@
-.PHONY: build_all_generate_profile
-build_all_generate_profile:
- $(MAKE) @DEF_MAKE_RULE@ CFLAGS_NODIST="$(CFLAGS_NODIST) $(PGO_PROF_GEN_FLAG)" LDFLAGS_NODIST="$(LDFLAGS_NODIST) $(PGO_PROF_GEN_FLAG)" LIBS="$(LIBS)"
-
-.PHONY: run_profile_task
-run_profile_task:
- @ # FIXME: can't run for a cross build
- $(LLVM_PROF_FILE) $(RUNSHARED) ./$(BUILDPYTHON) $(PROFILE_TASK) || true
-
-.PHONY: build_all_merge_profile
-build_all_merge_profile:
- $(LLVM_PROF_MERGER)
-
# Compile Python binary with profile guided optimization.
# To force re-running of the profile task, remove the profile-run-stamp file.
.PHONY: profile-opt
More information about the Python-checkins
mailing list