From 050bd3772a1dbb889fd607efa401bced9080d6c9 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Sun, 23 Mar 2025 22:43:40 +0000 Subject: [PATCH 1/7] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20ch?= =?UTF-8?q?anges=20to=20main=20this=20commit=20is=20based=20on?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Created using spr 1.3.4 [skip ci] --- .ci/compute_projects.py | 186 +++++++++++++++++++++++++++++++++++ .ci/compute_projects_test.py | 166 +++++++++++++++++++++++++++++++ 2 files changed, 352 insertions(+) create mode 100644 .ci/compute_projects.py create mode 100644 .ci/compute_projects_test.py diff --git a/.ci/compute_projects.py b/.ci/compute_projects.py new file mode 100644 index 0000000000000..3ae386d198730 --- /dev/null +++ b/.ci/compute_projects.py @@ -0,0 +1,186 @@ +# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +# See https://llvm.org/LICENSE.txt for license information. +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +"""Computes the list of projects that need to be tested from a diff. + +Does some things, spits out a list of projects. +""" + +from collections.abc import Set +import pathlib +import platform +import sys + +PROJECT_DEPENDENCIES = { + "llvm": set(), + "clang": {"llvm"}, + "bolt": {"clang", "lld", "llvm"}, + "clang-tools-extra": {"clang", "llvm"}, + "compiler-rt": {"clang", "lld"}, + "libc": {"clang", "lld"}, + "openmp": {"clang", "lld"}, + "flang": {"llvm", "clang"}, + "lldb": {"llvm", "clang"}, + "libclc": {"llvm", "clang"}, + "lld": {"llvm"}, + "mlir": {"llvm"}, + "polly": {"llvm"}, +} + +DEPENDENTS_TO_TEST = { + "llvm": {"bolt", "clang", "clang-tools-extra", "lld", "lldb", "mlir", "polly"}, + "lld": {"bolt", "cross-project-tests"}, + "clang": {"clang-tools-extra", "compiler-rt", "cross-project-tests"}, + "clang-tools-extra": {"libc"}, + "mlir": {"flang"}, +} + +DEPENDENT_RUNTIMES_TO_TEST = {"clang": {"libcxx", "libcxxabi", "libunwind"}} + +EXCLUDE_LINUX = { + "cross-project-tests", # Tests are failing. + "openmp", # https://github.com/google/llvm-premerge-checks/issues/410 +} + +EXCLUDE_WINDOWS = { + "cross-project-tests", # Tests are failing. + "compiler-rt", # Tests are taking too long. + "openmp", # Does not detect perl installation. + "libc", # No Windows Support. + "lldb", # Custom environment requirements. + "bolt", # No Windows Support. +} + +EXCLUDE_MAC = { + "bolt", + "compiler-rt", + "cross-project-tests", + "flang", + "libc", + "libcxx", + "libcxxabi", + "libunwind", + "lldb", + "openmp", + "polly", +} + +PROJECT_CHECK_TARGETS = { + "clang-tools-extra": "check-clang-tools", + "compiler-rt": "check-compiler-rt", + "cross-project-tests": "check-cross-project", + "libcxx": "check-cxx", + "libcxxabi": "check-cxxabi", + "libunwind": "check-unwind", + "lldb": "check-lldb", + "llvm": "check-llvm", + "clang": "check-clang", + "bolt": "check-bolt", + "lld": "check-lld", + "flang": "check-flang", + "libc": "check-libc", + "lld": "check-lld", + "lldb": "check-lldb", + "mlir": "check-mlir", + "openmp": "check-openmp", + "polly": "check-polly", +} + + +def _add_dependencies(projects: Set[str]) -> Set[str]: + projects_with_dependents = set(projects) + current_projects_count = 0 + while current_projects_count != len(projects_with_dependents): + current_projects_count = len(projects_with_dependents) + for project in list(projects_with_dependents): + if project not in PROJECT_DEPENDENCIES: + continue + projects_with_dependents.update(PROJECT_DEPENDENCIES[project]) + return projects_with_dependents + + +def _compute_projects_to_test(modified_projects: Set[str], platform: str) -> Set[str]: + projects_to_test = set() + for modified_project in modified_projects: + # Skip all projects where we cannot run tests. + if modified_project not in PROJECT_CHECK_TARGETS: + continue + projects_to_test.add(modified_project) + if modified_project not in DEPENDENTS_TO_TEST: + continue + projects_to_test.update(DEPENDENTS_TO_TEST[modified_project]) + if platform == "Linux": + for to_exclude in EXCLUDE_LINUX: + if to_exclude in projects_to_test: + projects_to_test.remove(to_exclude) + elif platform == "Windows": + for to_exclude in EXCLUDE_WINDOWS: + if to_exclude in projects_to_test: + projects_to_test.remove(to_exclude) + elif platform == "Darwin": + for to_exclude in EXCLUDE_MAC: + if to_exclude in projects_to_test: + projects_to_test.remove(to_exclude) + else: + raise ValueError("Unexpected platform.") + return projects_to_test + + +def _compute_projects_to_build(projects_to_test: Set[str]) -> Set[str]: + return _add_dependencies(projects_to_test) + + +def _compute_project_check_targets(projects_to_test: Set[str]) -> Set[str]: + check_targets = set() + for project_to_test in projects_to_test: + if project_to_test not in PROJECT_CHECK_TARGETS: + continue + check_targets.add(PROJECT_CHECK_TARGETS[project_to_test]) + return check_targets + + +def _compute_runtimes_to_test(projects_to_test: Set[str]) -> Set[str]: + runtimes_to_test = set() + for project_to_test in projects_to_test: + if project_to_test not in DEPENDENT_RUNTIMES_TO_TEST: + continue + runtimes_to_test.update(DEPENDENT_RUNTIMES_TO_TEST[project_to_test]) + return runtimes_to_test + + +def _compute_runtime_check_targets(runtimes_to_test: Set[str]) -> Set[str]: + check_targets = set() + for runtime_to_test in runtimes_to_test: + check_targets.add(PROJECT_CHECK_TARGETS[runtime_to_test]) + return check_targets + + +def _get_modified_projects(modified_files: list[str]) -> Set[str]: + modified_projects = set() + for modified_file in modified_files: + modified_projects.add(pathlib.Path(modified_file).parts[0]) + return modified_projects + + +def get_env_variables(modified_files: list[str], platform: str) -> Set[str]: + modified_projects = _get_modified_projects(modified_files) + projects_to_test = _compute_projects_to_test(modified_projects, platform) + projects_to_build = _compute_projects_to_build(projects_to_test) + projects_check_targets = _compute_project_check_targets(projects_to_test) + runtimes_to_test = _compute_runtimes_to_test(projects_to_test) + runtimes_check_targets = _compute_runtime_check_targets(runtimes_to_test) + return { + "projects_to_build": ";".join(sorted(projects_to_build)), + "project_check_targets": " ".join(sorted(projects_check_targets)), + "runtimes_to_build": ";".join(sorted(runtimes_to_test)), + "runtimes_check_targets": " ".join(sorted(runtimes_check_targets)), + } + + +if __name__ == "__main__": + current_platform = platform.system() + if len(sys.argv) == 2: + current_platform = sys.argv[1] + env_variables = get_env_variables(sys.stdin.readlines(), current_platform) + for env_variable in env_variables: + print(f"{env_variable}=\"{env_variables[env_variable]}\"") diff --git a/.ci/compute_projects_test.py b/.ci/compute_projects_test.py new file mode 100644 index 0000000000000..a10b663a5fd29 --- /dev/null +++ b/.ci/compute_projects_test.py @@ -0,0 +1,166 @@ +# Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +# See https://llvm.org/LICENSE.txt for license information. +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +"""Does some stuff.""" + +import unittest + +import compute_projects + + +class TestComputeProjects(unittest.TestCase): + def test_llvm(self): + env_variables = compute_projects.get_env_variables( + ["llvm/CMakeLists.txt"], "Linux" + ) + self.assertEqual( + env_variables["projects_to_build"], + "bolt;clang;clang-tools-extra;lld;lldb;llvm;mlir;polly", + ) + self.assertEqual( + env_variables["project_check_targets"], + "check-bolt check-clang check-clang-tools check-lld check-lldb check-llvm check-mlir check-polly", + ) + self.assertEqual( + env_variables["runtimes_to_build"], "libcxx;libcxxabi;libunwind" + ) + self.assertEqual( + env_variables["runtimes_check_targets"], + "check-cxx check-cxxabi check-unwind", + ) + + def test_llvm_windows(self): + env_variables = compute_projects.get_env_variables( + ["llvm/CMakeLists.txt"], "Windows" + ) + self.assertEqual( + env_variables["projects_to_build"], + "clang;clang-tools-extra;lld;llvm;mlir;polly", + ) + self.assertEqual( + env_variables["project_check_targets"], + "check-clang check-clang-tools check-lld check-llvm check-mlir check-polly", + ) + self.assertEqual( + env_variables["runtimes_to_build"], "libcxx;libcxxabi;libunwind" + ) + self.assertEqual( + env_variables["runtimes_check_targets"], + "check-cxx check-cxxabi check-unwind", + ) + + def test_llvm_mac(self): + env_variables = compute_projects.get_env_variables( + ["llvm/CMakeLists.txt"], "Darwin" + ) + self.assertEqual( + env_variables["projects_to_build"], + "clang;clang-tools-extra;lld;llvm;mlir", + ) + self.assertEqual( + env_variables["project_check_targets"], + "check-clang check-clang-tools check-lld check-llvm check-mlir", + ) + self.assertEqual( + env_variables["runtimes_to_build"], "libcxx;libcxxabi;libunwind" + ) + self.assertEqual( + env_variables["runtimes_check_targets"], + "check-cxx check-cxxabi check-unwind", + ) + + def test_clang(self): + env_variables = compute_projects.get_env_variables( + ["clang/CMakeLists.txt"], "Linux" + ) + self.assertEqual( + env_variables["projects_to_build"], + "clang;clang-tools-extra;compiler-rt;lld;llvm", + ) + self.assertEqual( + env_variables["project_check_targets"], + "check-clang check-clang-tools check-compiler-rt", + ) + self.assertEqual( + env_variables["runtimes_to_build"], "libcxx;libcxxabi;libunwind" + ) + self.assertEqual( + env_variables["runtimes_check_targets"], + "check-cxx check-cxxabi check-unwind", + ) + + def test_clang_windows(self): + env_variables = compute_projects.get_env_variables( + ["clang/CMakeLists.txt"], "Windows" + ) + self.assertEqual( + env_variables["projects_to_build"], "clang;clang-tools-extra;llvm" + ) + self.assertEqual( + env_variables["project_check_targets"], "check-clang check-clang-tools" + ) + self.assertEqual( + env_variables["runtimes_to_build"], "libcxx;libcxxabi;libunwind" + ) + self.assertEqual( + env_variables["runtimes_check_targets"], + "check-cxx check-cxxabi check-unwind", + ) + + def test_bolt(self): + env_variables = compute_projects.get_env_variables( + ["bolt/CMakeLists.txt"], "Linux" + ) + self.assertEqual(env_variables["projects_to_build"], "bolt;clang;lld;llvm") + self.assertEqual(env_variables["project_check_targets"], "check-bolt") + self.assertEqual(env_variables["runtimes_to_build"], "") + self.assertEqual(env_variables["runtimes_check_targets"], "") + + def test_lldb(self): + env_variables = compute_projects.get_env_variables( + ["lldb/CMakeLists.txt"], "Linux" + ) + self.assertEqual(env_variables["projects_to_build"], "clang;lldb;llvm") + self.assertEqual(env_variables["project_check_targets"], "check-lldb") + self.assertEqual(env_variables["runtimes_to_build"], "") + self.assertEqual(env_variables["runtimes_check_targets"], "") + + def test_mlir(self): + env_variables = compute_projects.get_env_variables( + ["mlir/CMakeLists.txt"], "Linux" + ) + self.assertEqual(env_variables["projects_to_build"], "clang;flang;llvm;mlir") + self.assertEqual( + env_variables["project_check_targets"], "check-flang check-mlir" + ) + self.assertEqual(env_variables["runtimes_to_build"], "") + self.assertEqual(env_variables["runtimes_check_targets"], "") + + def test_flang(self): + env_variables = compute_projects.get_env_variables( + ["flang/CMakeLists.txt"], "Linux" + ) + self.assertEqual(env_variables["projects_to_build"], "clang;flang;llvm") + self.assertEqual(env_variables["project_check_targets"], "check-flang") + self.assertEqual(env_variables["runtimes_to_build"], "") + self.assertEqual(env_variables["runtimes_check_targets"], "") + + def test_invalid_subproject(self): + env_variables = compute_projects.get_env_variables( + [".ci/compute_projects.py"], "Linux" + ) + self.assertEqual(env_variables["projects_to_build"], "") + self.assertEqual(env_variables["project_check_targets"], "") + self.assertEqual(env_variables["runtimes_to_build"], "") + self.assertEqual(env_variables["runtimes_check_targets"], "") + + def test_top_level_file(self): + env_variables = compute_projects.get_env_variables(["README.md"], "Linux") + self.assertEqual(env_variables["projects_to_build"], "") + self.assertEqual(env_variables["project_check_targets"], "") + self.assertEqual(env_variables["runtimes_to_build"], "") + self.assertEqual(env_variables["runtimes_check_targets"], "") + + +if __name__ == "__main__": + unittest.main() From fcaf69799b9f66a48eaae715d56be717a800c6a7 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Mon, 24 Mar 2025 18:25:28 +0000 Subject: [PATCH 2/7] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20ch?= =?UTF-8?q?anges=20introduced=20through=20rebase?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Created using spr 1.3.4 [skip ci] --- .ci/compute_projects.py | 26 ++++++++++++++++++++------ .ci/compute_projects_test.py | 2 +- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/.ci/compute_projects.py b/.ci/compute_projects.py index 3ae386d198730..9f06cef47e8af 100644 --- a/.ci/compute_projects.py +++ b/.ci/compute_projects.py @@ -11,6 +11,11 @@ import platform import sys +# This mapping lists out the dependencies for each project. These should be +# direct dependencies. The code will handle transitive dependencies. Some +# projects might have optional dependencies depending upon how they are built. +# The dependencies listed here should be the dependencies required for the +# configuration built/tested in the premerge CI. PROJECT_DEPENDENCIES = { "llvm": set(), "clang": {"llvm"}, @@ -27,9 +32,14 @@ "polly": {"llvm"}, } +# This mapping describes the additional projects that should be tested when a +# specific project is touched. We enumerate them specifically rather than +# just invert the dependencies list to give more control over what exactly is +# tested. DEPENDENTS_TO_TEST = { "llvm": {"bolt", "clang", "clang-tools-extra", "lld", "lldb", "mlir", "polly"}, "lld": {"bolt", "cross-project-tests"}, + # TODO(issues/132795): LLDB should be enabled on clang changes. "clang": {"clang-tools-extra", "compiler-rt", "cross-project-tests"}, "clang-tools-extra": {"libc"}, "mlir": {"flang"}, @@ -38,16 +48,16 @@ DEPENDENT_RUNTIMES_TO_TEST = {"clang": {"libcxx", "libcxxabi", "libunwind"}} EXCLUDE_LINUX = { - "cross-project-tests", # Tests are failing. + "cross-project-tests", # TODO(issues/132796): Tests are failing. "openmp", # https://github.com/google/llvm-premerge-checks/issues/410 } EXCLUDE_WINDOWS = { - "cross-project-tests", # Tests are failing. - "compiler-rt", # Tests are taking too long. - "openmp", # Does not detect perl installation. + "cross-project-tests", # TODO(issues/132797): Tests are failing. + "compiler-rt", # TODO(issues/132798): Tests take excessive time. + "openmp", # TODO(issues/132799): Does not detect perl installation. "libc", # No Windows Support. - "lldb", # Custom environment requirements. + "lldb", # TODO(issues/132800): Needs environment setup. "bolt", # No Windows Support. } @@ -169,6 +179,10 @@ def get_env_variables(modified_files: list[str], platform: str) -> Set[str]: projects_check_targets = _compute_project_check_targets(projects_to_test) runtimes_to_test = _compute_runtimes_to_test(projects_to_test) runtimes_check_targets = _compute_runtime_check_targets(runtimes_to_test) + # We use a semicolon to separate the projects/runtimes as they get passed + # to the CMake invocation and thus we need to use the CMake list separator + # (;). We use spaces to separate the check targets as they end up getting + # passed to ninja. return { "projects_to_build": ";".join(sorted(projects_to_build)), "project_check_targets": " ".join(sorted(projects_check_targets)), @@ -183,4 +197,4 @@ def get_env_variables(modified_files: list[str], platform: str) -> Set[str]: current_platform = sys.argv[1] env_variables = get_env_variables(sys.stdin.readlines(), current_platform) for env_variable in env_variables: - print(f"{env_variable}=\"{env_variables[env_variable]}\"") + print(f"{env_variable}='{env_variables[env_variable]}'") diff --git a/.ci/compute_projects_test.py b/.ci/compute_projects_test.py index a10b663a5fd29..253fa5c241bb4 100644 --- a/.ci/compute_projects_test.py +++ b/.ci/compute_projects_test.py @@ -48,7 +48,7 @@ def test_llvm_windows(self): env_variables["runtimes_check_targets"], "check-cxx check-cxxabi check-unwind", ) - + def test_llvm_mac(self): env_variables = compute_projects.get_env_variables( ["llvm/CMakeLists.txt"], "Darwin" From 128b293be90b28b61ad1d5cd07b6d6930c5019b8 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Mon, 24 Mar 2025 18:44:43 +0000 Subject: [PATCH 3/7] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20ch?= =?UTF-8?q?anges=20introduced=20through=20rebase?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Created using spr 1.3.4 [skip ci] --- .ci/compute_projects.py | 26 ++++++++++++++++++++++++-- .ci/compute_projects_test.py | 4 ++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/.ci/compute_projects.py b/.ci/compute_projects.py index 9f06cef47e8af..8bae8359ff231 100644 --- a/.ci/compute_projects.py +++ b/.ci/compute_projects.py @@ -37,7 +37,16 @@ # just invert the dependencies list to give more control over what exactly is # tested. DEPENDENTS_TO_TEST = { - "llvm": {"bolt", "clang", "clang-tools-extra", "lld", "lldb", "mlir", "polly"}, + "llvm": { + "bolt", + "clang", + "clang-tools-extra", + "lld", + "lldb", + "mlir", + "polly", + "flang", + }, "lld": {"bolt", "cross-project-tests"}, # TODO(issues/132795): LLDB should be enabled on clang changes. "clang": {"clang-tools-extra", "compiler-rt", "cross-project-tests"}, @@ -61,6 +70,13 @@ "bolt", # No Windows Support. } +# These are projects that we should test if the project itself is changed but +# where testing is not yet stable enough for it to be enabled on changes to +# dependencies. +EXCLUDE_DEPENDENTS_WINDOWS = { + "flang", # TODO(issues/132803): Flang is not stable. +} + EXCLUDE_MAC = { "bolt", "compiler-rt", @@ -118,7 +134,13 @@ def _compute_projects_to_test(modified_projects: Set[str], platform: str) -> Set projects_to_test.add(modified_project) if modified_project not in DEPENDENTS_TO_TEST: continue - projects_to_test.update(DEPENDENTS_TO_TEST[modified_project]) + for dependent_project in DEPENDENTS_TO_TEST[modified_project]: + if ( + platform == "Windows" + and dependent_project in EXCLUDE_DEPENDENTS_WINDOWS + ): + continue + projects_to_test.add(dependent_project) if platform == "Linux": for to_exclude in EXCLUDE_LINUX: if to_exclude in projects_to_test: diff --git a/.ci/compute_projects_test.py b/.ci/compute_projects_test.py index 253fa5c241bb4..4e79f9368539d 100644 --- a/.ci/compute_projects_test.py +++ b/.ci/compute_projects_test.py @@ -15,11 +15,11 @@ def test_llvm(self): ) self.assertEqual( env_variables["projects_to_build"], - "bolt;clang;clang-tools-extra;lld;lldb;llvm;mlir;polly", + "bolt;clang;clang-tools-extra;flang;lld;lldb;llvm;mlir;polly", ) self.assertEqual( env_variables["project_check_targets"], - "check-bolt check-clang check-clang-tools check-lld check-lldb check-llvm check-mlir check-polly", + "check-bolt check-clang check-clang-tools check-flang check-lld check-lldb check-llvm check-mlir check-polly", ) self.assertEqual( env_variables["runtimes_to_build"], "libcxx;libcxxabi;libunwind" From 512ff9eb431a4d83c0a7628a424bc63448855868 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Wed, 26 Mar 2025 22:20:25 +0000 Subject: [PATCH 4/7] fix Created using spr 1.3.4 --- .ci/generate-buildkite-pipeline-premerge | 4 ++-- .github/workflows/premerge.yaml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.ci/generate-buildkite-pipeline-premerge b/.ci/generate-buildkite-pipeline-premerge index 296b3b605f49b..5e5f916f35b72 100755 --- a/.ci/generate-buildkite-pipeline-premerge +++ b/.ci/generate-buildkite-pipeline-premerge @@ -71,13 +71,13 @@ fi # needs while letting them run on the infrastructure provided by LLVM. # Figure out which projects need to be built on each platform -source <(git diff --name-only HEAD~2..HEAD | python3 .ci/compute_projects.py Linux) +source <(git diff --name-only origin/${BUILDKITE_PULL_REQUEST_BASE_BRANCH}...HEAD | python3 .ci/compute_projects.py Linux) linux_projects=${projects_to_build} linux_check_targets=${project_check_targets} linux_runtimes=${runtimes_to_build} linux_runtime_check_targets=${runtimes_check_targets} -source <(git diff --name-only HEAD~2..HEAD | python3 .ci/compute_projects.py Windows) +source <(git diff --name-only origin/${BUILDKITE_PULL_REQUEST_BASE_BRANCH}...HEAD | python3 .ci/compute_projects.py Windows) windows_projects=${projects_to_build} windows_check_targets=${project_check_targets} diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml index deb4cf7d70447..00eae45e02ad5 100644 --- a/.github/workflows/premerge.yaml +++ b/.github/workflows/premerge.yaml @@ -49,7 +49,7 @@ jobs: run: | git config --global --add safe.directory '*' - source <(git diff --name-only HEAD~2..HEAD | python3 .ci/compute_projects.py) + source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py) if [[ "${projects_to_build}" == "" ]]; then echo "No projects to build" @@ -88,7 +88,7 @@ jobs: - name: Compute Projects id: vars run: | - source <(git diff --name-only HEAD~2..HEAD | python3 .ci/compute_projects.py) + source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py) if [[ "${projects_to_build}" == "" ]]; then echo "No projects to build" From 489715181db80922f7afc23544ce49627e0cf8ab Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Sat, 29 Mar 2025 04:59:04 +0000 Subject: [PATCH 5/7] testing Created using spr 1.3.4 --- polly/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/polly/CMakeLists.txt b/polly/CMakeLists.txt index c3232752d307c..a97b635cea13c 100644 --- a/polly/CMakeLists.txt +++ b/polly/CMakeLists.txt @@ -1,4 +1,5 @@ # Check if this is a in tree build. +# Testing. if (NOT DEFINED LLVM_MAIN_SRC_DIR) project(Polly) cmake_minimum_required(VERSION 3.20.0) From dc84bb2bca725bd25cc4991c7b5fe8c5e733dc85 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Sat, 29 Mar 2025 05:07:15 +0000 Subject: [PATCH 6/7] fix windows Created using spr 1.3.4 --- .github/workflows/premerge.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/premerge.yaml b/.github/workflows/premerge.yaml index 00eae45e02ad5..b7d2c7154762e 100644 --- a/.github/workflows/premerge.yaml +++ b/.github/workflows/premerge.yaml @@ -88,7 +88,7 @@ jobs: - name: Compute Projects id: vars run: | - source <(git diff --name-only HEAD~1...HEAD | python3 .ci/compute_projects.py) + source <(git diff --name-only HEAD~1...HEAD | python .ci/compute_projects.py) if [[ "${projects_to_build}" == "" ]]; then echo "No projects to build" From 2d9fcb12260d0ff9cb78518451266094798abb2c Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Sat, 29 Mar 2025 05:25:13 +0000 Subject: [PATCH 7/7] remove test change Created using spr 1.3.4 --- polly/CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/polly/CMakeLists.txt b/polly/CMakeLists.txt index a97b635cea13c..c3232752d307c 100644 --- a/polly/CMakeLists.txt +++ b/polly/CMakeLists.txt @@ -1,5 +1,4 @@ # Check if this is a in tree build. -# Testing. if (NOT DEFINED LLVM_MAIN_SRC_DIR) project(Polly) cmake_minimum_required(VERSION 3.20.0)