From 62255cbf19ab429f9dbce6b6a9e3a5b826995d04 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Mon, 13 Oct 2025 21:56:13 +0000 Subject: [PATCH 1/8] =?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.7 [skip ci] --- .ci/generate_test_report_lib.py | 40 ++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 15 deletions(-) diff --git a/.ci/generate_test_report_lib.py b/.ci/generate_test_report_lib.py index 5026c292a7934..2d18932ace135 100644 --- a/.ci/generate_test_report_lib.py +++ b/.ci/generate_test_report_lib.py @@ -98,6 +98,23 @@ def _format_ninja_failures(ninja_failures: list[tuple[str, str]]) -> list[str]: ) return output +def get_failures(junit_objects) -> dict[str, list[tuple[str, str]]]: + failures = {} + for results in junit_objects: + for testsuite in results: + for test in testsuite: + if ( + not test.is_passed + and test.result + and isinstance(test.result[0], Failure) + ): + if failures.get(testsuite.name) is None: + failures[testsuite.name] = [] + failures[testsuite.name].append( + (test.classname + "/" + test.name, test.result[0].text) + ) + return failures + # Set size_limit to limit the byte size of the report. The default is 1MB as this # is the most that can be put into an annotation. If the generated report exceeds @@ -113,7 +130,7 @@ def generate_report( size_limit=1024 * 1024, list_failures=True, ): - failures = {} + failures = get_failures(junit_objects) tests_run = 0 tests_skipped = 0 tests_failed = 0 @@ -124,18 +141,6 @@ def generate_report( tests_skipped += testsuite.skipped tests_failed += testsuite.failures - for test in testsuite: - if ( - not test.is_passed - and test.result - and isinstance(test.result[0], Failure) - ): - if failures.get(testsuite.name) is None: - failures[testsuite.name] = [] - failures[testsuite.name].append( - (test.classname + "/" + test.name, test.result[0].text) - ) - report = [f"# {title}", ""] if tests_run == 0: @@ -258,7 +263,7 @@ def plural(num_tests): return report -def generate_report_from_files(title, return_code, build_log_files): +def load_info_from_files(build_log_files): junit_files = [ junit_file for junit_file in build_log_files if junit_file.endswith(".xml") ] @@ -271,6 +276,11 @@ def generate_report_from_files(title, return_code, build_log_files): ninja_logs.append( [log_line.strip() for log_line in ninja_log_file_handle.readlines()] ) + return [JUnitXml.fromfile(p) for p in junit_files], ninja_logs + + +def generate_report_from_files(title, return_code, build_log_files): + junit_objects, ninja_logs = load_info_from_files(build_log_files) return generate_report( - title, return_code, [JUnitXml.fromfile(p) for p in junit_files], ninja_logs + title, return_code, junit_objects, ninja_logs ) From 7df7aff85af72f06cb4e73906b6fe3d3fc13cca3 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Mon, 13 Oct 2025 22:02:24 +0000 Subject: [PATCH 2/8] =?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.7 [skip ci] --- .ci/generate_test_report_lib.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.ci/generate_test_report_lib.py b/.ci/generate_test_report_lib.py index 2d18932ace135..36c95852452ac 100644 --- a/.ci/generate_test_report_lib.py +++ b/.ci/generate_test_report_lib.py @@ -281,6 +281,4 @@ def load_info_from_files(build_log_files): def generate_report_from_files(title, return_code, build_log_files): junit_objects, ninja_logs = load_info_from_files(build_log_files) - return generate_report( - title, return_code, junit_objects, ninja_logs - ) + return generate_report(title, return_code, junit_objects, ninja_logs) From 736fbda8f9e2e81f5db83ceccaa79feb13bdb9ea Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Mon, 13 Oct 2025 22:37:09 +0000 Subject: [PATCH 3/8] fix Created using spr 1.3.7 --- .ci/premerge_advisor_upload.py | 1 - 1 file changed, 1 deletion(-) diff --git a/.ci/premerge_advisor_upload.py b/.ci/premerge_advisor_upload.py index 27e45bdd7f589..fb2bc251044b3 100644 --- a/.ci/premerge_advisor_upload.py +++ b/.ci/premerge_advisor_upload.py @@ -45,4 +45,3 @@ def main(commit_sha, workflow_run_number, build_log_files): args = parser.parse_args() main(args.commit_sha, args.workflow_run_number, args.build_log_files) - main() From cae46e55bae8f1edb36e030162836e99ae44e5d0 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Tue, 14 Oct 2025 21:13:18 +0000 Subject: [PATCH 4/8] fix Created using spr 1.3.7 --- llvm/utils/TableGen/llvm-tblgen.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llvm/utils/TableGen/llvm-tblgen.cpp b/llvm/utils/TableGen/llvm-tblgen.cpp index e3bfa1faf03c6..b1d625e358ea4 100644 --- a/llvm/utils/TableGen/llvm-tblgen.cpp +++ b/llvm/utils/TableGen/llvm-tblgen.cpp @@ -12,7 +12,7 @@ #include "Basic/TableGen.h" -#error compilation_erro +#error compilation_error /// Command line parameters are shared between llvm-tblgen and llvm-min-tblgen. /// The indirection to tblgen_main exists to ensure that the static variables From 2ffbec77827877671dfe40cb1115fa6474a1e7ee Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Tue, 14 Oct 2025 21:19:01 +0000 Subject: [PATCH 5/8] fix Created using spr 1.3.7 --- .ci/monolithic-linux.sh | 3 ++- .ci/premerge_advisor_upload.py | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.ci/monolithic-linux.sh b/.ci/monolithic-linux.sh index c8f331204bd49..500e1c2721b78 100755 --- a/.ci/monolithic-linux.sh +++ b/.ci/monolithic-linux.sh @@ -65,7 +65,8 @@ cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \ start-group "ninja" # Targets are not escaped as they are passed as separate arguments. -ninja -C "${BUILD_DIR}" -k 0 ${targets} |& tee ninja.log +# DO NOT SUBMIT: Readd -k 0 +ninja -C "${BUILD_DIR}" ${targets} |& tee ninja.log if [[ "${runtime_targets}" != "" ]]; then start-group "ninja Runtimes" diff --git a/.ci/premerge_advisor_upload.py b/.ci/premerge_advisor_upload.py index fb2bc251044b3..b4a7694c376ef 100644 --- a/.ci/premerge_advisor_upload.py +++ b/.ci/premerge_advisor_upload.py @@ -10,7 +10,7 @@ import generate_test_report_lib -PREMERGE_ADVISOR_URL = "http://premerge-advisor:5000/upload" +PREMERGE_ADVISOR_URL = "http://premerge-advisor.premerge-advisor:5000/upload" def main(commit_sha, workflow_run_number, build_log_files): From 0e56261adaca23c3c667839927021df4e6f7fa32 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Tue, 14 Oct 2025 21:37:41 +0000 Subject: [PATCH 6/8] fix Created using spr 1.3.7 --- .ci/premerge_advisor_upload.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/premerge_advisor_upload.py b/.ci/premerge_advisor_upload.py index b4a7694c376ef..6fcf8cba6a275 100644 --- a/.ci/premerge_advisor_upload.py +++ b/.ci/premerge_advisor_upload.py @@ -10,7 +10,7 @@ import generate_test_report_lib -PREMERGE_ADVISOR_URL = "http://premerge-advisor.premerge-advisor:5000/upload" +PREMERGE_ADVISOR_URL = "http://premerge-advisor.premerge-advisor.svc.cluster.local:5000/upload" def main(commit_sha, workflow_run_number, build_log_files): From 8e84e9cd255d2d8445f6e329b573c594d5c20f12 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Wed, 15 Oct 2025 01:08:14 +0000 Subject: [PATCH 7/8] fix some stuff Created using spr 1.3.7 --- .ci/monolithic-linux.sh | 3 +-- .ci/premerge_advisor_upload.py | 4 +++- llvm/utils/TableGen/llvm-tblgen.cpp | 2 -- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.ci/monolithic-linux.sh b/.ci/monolithic-linux.sh index 500e1c2721b78..c8f331204bd49 100755 --- a/.ci/monolithic-linux.sh +++ b/.ci/monolithic-linux.sh @@ -65,8 +65,7 @@ cmake -S "${MONOREPO_ROOT}"/llvm -B "${BUILD_DIR}" \ start-group "ninja" # Targets are not escaped as they are passed as separate arguments. -# DO NOT SUBMIT: Readd -k 0 -ninja -C "${BUILD_DIR}" ${targets} |& tee ninja.log +ninja -C "${BUILD_DIR}" -k 0 ${targets} |& tee ninja.log if [[ "${runtime_targets}" != "" ]]; then start-group "ninja Runtimes" diff --git a/.ci/premerge_advisor_upload.py b/.ci/premerge_advisor_upload.py index 6fcf8cba6a275..dd8e7d9491662 100644 --- a/.ci/premerge_advisor_upload.py +++ b/.ci/premerge_advisor_upload.py @@ -10,7 +10,9 @@ import generate_test_report_lib -PREMERGE_ADVISOR_URL = "http://premerge-advisor.premerge-advisor.svc.cluster.local:5000/upload" +PREMERGE_ADVISOR_URL = ( + "http://premerge-advisor.premerge-advisor.svc.cluster.local:5000/upload" +) def main(commit_sha, workflow_run_number, build_log_files): diff --git a/llvm/utils/TableGen/llvm-tblgen.cpp b/llvm/utils/TableGen/llvm-tblgen.cpp index b1d625e358ea4..a38382472a992 100644 --- a/llvm/utils/TableGen/llvm-tblgen.cpp +++ b/llvm/utils/TableGen/llvm-tblgen.cpp @@ -12,8 +12,6 @@ #include "Basic/TableGen.h" -#error compilation_error - /// Command line parameters are shared between llvm-tblgen and llvm-min-tblgen. /// The indirection to tblgen_main exists to ensure that the static variables /// for the llvm::cl:: mechanism are linked into both executables. From 203dc3d6040edfa206569cdcab27bc105eac6a72 Mon Sep 17 00:00:00 2001 From: Aiden Grossman Date: Wed, 15 Oct 2025 01:29:58 +0000 Subject: [PATCH 8/8] update Created using spr 1.3.7 --- .ci/premerge_advisor_upload.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.ci/premerge_advisor_upload.py b/.ci/premerge_advisor_upload.py index dd8e7d9491662..84214f8a6d7ef 100644 --- a/.ci/premerge_advisor_upload.py +++ b/.ci/premerge_advisor_upload.py @@ -5,6 +5,8 @@ import argparse import os +import platform +import sys import requests @@ -46,4 +48,9 @@ def main(commit_sha, workflow_run_number, build_log_files): ) args = parser.parse_args() + # Skip uploading results on AArch64 for now because the premerge advisor + # service is not available on AWS currently. + if platform.machine() == "arm64": + sys.exit(0) + main(args.commit_sha, args.workflow_run_number, args.build_log_files)