From 864027ca91ce784fb22ec273431cbb463e8dd753 Mon Sep 17 00:00:00 2001 From: Zachary Ware Date: Fri, 22 Nov 2024 19:00:51 -0600 Subject: [PATCH] Add Windows PGO builder (#561) Along with some minor cleanup of dead code/comments. --- master/custom/builders.py | 9 ++++++--- master/custom/factories.py | 7 +++++++ master/master.cfg | 6 ------ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/master/custom/builders.py b/master/custom/builders.py index fbbd636c..3283aa75 100644 --- a/master/custom/builders.py +++ b/master/custom/builders.py @@ -35,6 +35,7 @@ Windows64Build, Windows64BigmemBuild, Windows64NoGilBuild, + Windows64PGOBuild, Windows64RefleakBuild, Windows64ReleaseBuild, MacOSArmWithBrewBuild, @@ -219,6 +220,9 @@ ("AMD64 CentOS9 FIPS No Builtin Hashes", "cstratak-CentOS9-fips-x86_64", CentOS9NoBuiltinHashesUnixBuild), ("AMD64 Arch Linux Valgrind", "pablogsal-arch-x86_64", ValgrindBuild), + + # Windows MSVC + ("AMD64 Windows PGO", "bolen-windows10", Windows64PGOBuild), ] @@ -324,12 +328,11 @@ def get_builders(settings): # Match builder name (excluding the branch name) of builders that should only -# run on the main and "custom" branches. +# run on the main and PR branches. ONLY_MAIN_BRANCH = ( "Alpine Linux", - # Cygwin is not supported on 2.7, 3.6, 3.7 - "Cygwin", "ARM64 Windows", + "Windows PGO", "AMD64 Arch Linux Perf", "AMD64 Arch Linux Valgrind", ) diff --git a/master/custom/factories.py b/master/custom/factories.py index 6d6bb87c..7a9f6e0f 100644 --- a/master/custom/factories.py +++ b/master/custom/factories.py @@ -666,6 +666,13 @@ class Windows64ReleaseBuild(Windows64Build): factory_tags = ["win64", "nondebug"] +class Windows64PGOBuild(Windows64ReleaseBuild): + buildersuffix = ".pgo" + buildFlags = Windows64Build.buildFlags + ["--pgo"] + testFlags = [*Windows64Build.testFlags, "+d"] + factory_tags = ["win64", "nondebug", "pgo"] + + class Windows64NoGilBuild(Windows64Build): buildersuffix = '.x64.nogil' buildFlags = Windows64Build.buildFlags + ["--disable-gil"] diff --git a/master/master.cfg b/master/master.cfg index fa5bdada..2dd0b695 100644 --- a/master/master.cfg +++ b/master/master.cfg @@ -342,12 +342,6 @@ stable_pull_request_builders = [] all_pull_request_builders = [] for name, worker_name, buildfactory, stability, tier in BUILDERS: - if "Windows XP" in name or "VS9.0" in name: - continue - # bpo-39911: Python 3.9 dropped Windows 7 support - if "Windows7" in name: - continue - buildername = f"{name} PR" all_pull_request_builders.append(buildername) if stability == STABLE: