[llvm-branch-commits] [clang-tools-extra] 5fccb47 - Revert "[clang-tidy] Fix OOB access in `FormatStringConverter` with signed ch…"

2025-11-28 Thread via llvm-branch-commits
Author: mitchell Date: 2025-11-29T15:45:34+08:00 New Revision: 5fccb47c046a3c5e91c5e4ae4e95c8316773895a URL: https://github.com/llvm/llvm-project/commit/5fccb47c046a3c5e91c5e4ae4e95c8316773895a DIFF: https://github.com/llvm/llvm-project/commit/5fccb47c046a3c5e91c5e4ae4e95c8316773895a.diff LOG:

[llvm-branch-commits] [llvm] [DA] Add overflow check when calculating Delta in GCD MIV (PR #169928)

2025-11-28 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-llvm-analysis Author: Ryotaro Kasuga (kasuga-fj) Changes Add overflow check when computing `Delta` in `gcdMIVtest`. Fix one of the tests added by #169926. --- Full diff: https://github.com/llvm/llvm-project/pull/169928.diff 2 Files Affected: - (modi

[llvm-branch-commits] [llvm] [DA] Remove special handling for SCEVAddExpr in GCD MIV (PR #169927)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj ready_for_review https://github.com/llvm/llvm-project/pull/169927 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [DA] Remove special handling for SCEVAddExpr in GCD MIV (PR #169927)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj edited https://github.com/llvm/llvm-project/pull/169927 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [GOFF] Write out relocations in the GOFF writer (PR #167054)

2025-11-28 Thread Kai Nacke via llvm-branch-commits
@@ -16,12 +17,35 @@ namespace { class SystemZGOFFObjectWriter : public MCGOFFObjectTargetWriter { public: SystemZGOFFObjectWriter(); + + unsigned getRelocType(const MCValue &Target, const MCFixup &Fixup, +bool IsPCRel) const override; }; } // end an

[llvm-branch-commits] [llvm] [GOFF] Write out relocations in the GOFF writer (PR #167054)

2025-11-28 Thread Kai Nacke via llvm-branch-commits
@@ -545,8 +743,68 @@ GOFFObjectWriter::GOFFObjectWriter( GOFFObjectWriter::~GOFFObjectWriter() = default; +void GOFFObjectWriter::recordRelocation(const MCFragment &F, +const MCFixup &Fixup, MCValue Target, +

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj updated https://github.com/llvm/llvm-project/pull/169902 >From 285364b1989e6c9b603cbb505380cde77ea7beda Mon Sep 17 00:00:00 2001 From: Ryotaro Kasuga Date: Fri, 28 Nov 2025 11:12:41 + Subject: [PATCH 1/3] [Delinearization] Add validation for large size arrays -

[llvm-branch-commits] [llvm] [DA] Add overflow check when calculating Delta in GCD MIV (PR #169928)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj ready_for_review https://github.com/llvm/llvm-project/pull/169928 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [DA] Remove special handling for SCEVAddExpr in GCD MIV (PR #169927)

2025-11-28 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-llvm-analysis Author: Ryotaro Kasuga (kasuga-fj) Changes In `gcdMIVtest`, there is logic that assumes the addition(s) of `SCEVAddExpr` don't overflow without any checks. Adding overflow checks would be fine, but this part appeart to be less useful. So

[llvm-branch-commits] [llvm] [GOFF] Write out relocations in the GOFF writer (PR #167054)

2025-11-28 Thread Kai Nacke via llvm-branch-commits
https://github.com/redstar updated https://github.com/llvm/llvm-project/pull/167054 >From 0d1109a022dfaeab8022870c248fe35a2398ddae Mon Sep 17 00:00:00 2001 From: Kai Nacke Date: Fri, 7 Nov 2025 11:13:49 -0500 Subject: [PATCH 1/8] [GOFF] Write out relocations in the GOFF writer Add support for

[llvm-branch-commits] [llvm] [DA] Add overflow check when calculating Delta in GCD MIV (PR #169928)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj edited https://github.com/llvm/llvm-project/pull/169928 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [GOFF] Write out relocations in the GOFF writer (PR #167054)

2025-11-28 Thread Kai Nacke via llvm-branch-commits
redstar wrote: @uweigand I changed the code according to your comments. https://github.com/llvm/llvm-project/pull/167054 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch

[llvm-branch-commits] [clang] [flang] [llvm] [openmp] [Flang] Move builtin .mod generation into runtimes (Reapply #137828) (PR #169638)

2025-11-28 Thread Michael Kruse via llvm-branch-commits
https://github.com/Meinersbur edited https://github.com/llvm/llvm-project/pull/169638 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [GOFF] Write out relocations in the GOFF writer (PR #167054)

2025-11-28 Thread Kai Nacke via llvm-branch-commits
https://github.com/redstar updated https://github.com/llvm/llvm-project/pull/167054 >From 0d1109a022dfaeab8022870c248fe35a2398ddae Mon Sep 17 00:00:00 2001 From: Kai Nacke Date: Fri, 7 Nov 2025 11:13:49 -0500 Subject: [PATCH 1/7] [GOFF] Write out relocations in the GOFF writer Add support for

[llvm-branch-commits] [llvm] [GOFF] Write out relocations in the GOFF writer (PR #167054)

2025-11-28 Thread Kai Nacke via llvm-branch-commits
https://github.com/redstar updated https://github.com/llvm/llvm-project/pull/167054 >From 0d1109a022dfaeab8022870c248fe35a2398ddae Mon Sep 17 00:00:00 2001 From: Kai Nacke Date: Fri, 7 Nov 2025 11:13:49 -0500 Subject: [PATCH 1/6] [GOFF] Write out relocations in the GOFF writer Add support for

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [GOFF] Write out relocations in the GOFF writer (PR #167054)

2025-11-28 Thread Kai Nacke via llvm-branch-commits
redstar wrote: @tltao I updated the HLASM output to use `AD` instead `A`, etc, to make sure that we get the 8 byte length for the fields. https://github.com/llvm/llvm-project/pull/167054 ___ llvm-branch-commits mailing list [email protected]

[llvm-branch-commits] [llvm] [BOLT][PAC] Warn about synchronous unwind tables (PR #165227)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/165227 From 14d7b87afe18ce26ec43bff1e218532090076976 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Mon, 27 Oct 2025 09:29:54 + Subject: [PATCH 1/4] [BOLT][PAC] Warn about synchronous unwind tables BOLT cur

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Michael Kruse via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Michael Kruse via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [BOLT] Rename Pointer Auth DWARF rewriter passes (PR #164622)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/164622 From a4bdfd54efa376bf96b03439df7f0d22633f2944 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Wed, 22 Oct 2025 12:44:37 + Subject: [PATCH 1/6] [BOLT][NFC] Rename Pointer Auth DWARF rewriter passes Ori

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Michael Kruse via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [BOLT] Rename Pointer Auth DWARF rewriter passes (PR #164622)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/164622 From a4bdfd54efa376bf96b03439df7f0d22633f2944 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Wed, 22 Oct 2025 12:44:37 + Subject: [PATCH 1/6] [BOLT][NFC] Rename Pointer Auth DWARF rewriter passes Ori

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj updated https://github.com/llvm/llvm-project/pull/169902 >From 285364b1989e6c9b603cbb505380cde77ea7beda Mon Sep 17 00:00:00 2001 From: Ryotaro Kasuga Date: Fri, 28 Nov 2025 11:12:41 + Subject: [PATCH 1/2] [Delinearization] Add validation for large size arrays -

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Michael Kruse via llvm-branch-commits
@@ -755,6 +769,43 @@ bool llvm::validateDelinearizationResult(ScalarEvolution &SE, if (!isKnownLessThan(&SE, Subscript, Size)) return false; } + + // The offset computation is as follows: + // + // Offset = I_n + + //S_n * I_{n-1} + + //

[llvm-branch-commits] [llvm] [BOLT][PAC] Warn about synchronous unwind tables (PR #165227)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/165227 From 14d7b87afe18ce26ec43bff1e218532090076976 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Mon, 27 Oct 2025 09:29:54 + Subject: [PATCH 1/4] [BOLT][PAC] Warn about synchronous unwind tables BOLT cur

[llvm-branch-commits] [llvm] [DA] Remove special handling for SCEVAddExpr in GCD MIV (PR #169927)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
kasuga-fj wrote: > [!WARNING] > This pull request is not mergeable via GitHub because a downstack PR is > open. Once all requirements are satisfied, merge this PR as a stack href="https://app.graphite.com/github/pr/llvm/llvm-project/169927?utm_source=stack-comment-downstack-mergeability-warning

[llvm-branch-commits] [llvm] [DA] Add overflow check when calculating Delta in GCD MIV (PR #169928)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
kasuga-fj wrote: > [!WARNING] > This pull request is not mergeable via GitHub because a downstack PR is > open. Once all requirements are satisfied, merge this PR as a stack href="https://app.graphite.com/github/pr/llvm/llvm-project/169928?utm_source=stack-comment-downstack-mergeability-warning

[llvm-branch-commits] [llvm] [DA] Remove special handling for SCEVAddExpr in GCD MIV (PR #169927)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj created https://github.com/llvm/llvm-project/pull/169927 None >From 10136adf83f398d157b1456ac912fa4a70a1cf9b Mon Sep 17 00:00:00 2001 From: Ryotaro Kasuga Date: Fri, 28 Nov 2025 15:20:49 + Subject: [PATCH] [DA] Remove special handling for SCEVAddExpr in GCD MIV

[llvm-branch-commits] [llvm] [DA] Add overflow check when calculating Delta in GCD MIV (PR #169928)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj created https://github.com/llvm/llvm-project/pull/169928 None >From e764580a15d8dbc47787aaf358b4b344f4a51a75 Mon Sep 17 00:00:00 2001 From: Ryotaro Kasuga Date: Fri, 28 Nov 2025 15:14:30 + Subject: [PATCH] [DA] Add overflow check when calculating Delta in GCD M

[llvm-branch-commits] [llvm] AMDGPU/GlobalISel: Report RegBankLegalize errors using reportGISelFailure (PR #169918)

2025-11-28 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-backend-amdgpu Author: Petar Avramovic (petar-avramovic) Changes Use standard GlobalISel error reporting with reportGISelFailure and pass returning false instead of llvm_unreachable. Also enables -global-isel-abort=0 or 2 for -global-isel -new-reg-bank-s

[llvm-branch-commits] [llvm] AMDGPU/GlobalISel: Report RegBankLegalize errors using reportGISelFailure (PR #169918)

2025-11-28 Thread Petar Avramovic via llvm-branch-commits
https://github.com/petar-avramovic created https://github.com/llvm/llvm-project/pull/169918 Use standard GlobalISel error reporting with reportGISelFailure and pass returning false instead of llvm_unreachable. Also enables -global-isel-abort=0 or 2 for -global-isel -new-reg-bank-select. Note: ne

[llvm-branch-commits] [llvm] AMDGPU/GlobalISel: Report RegBankLegalize errors using reportGISelFailure (PR #169918)

2025-11-28 Thread Petar Avramovic via llvm-branch-commits
petar-avramovic wrote: > [!WARNING] > This pull request is not mergeable via GitHub because a downstack PR is > open. Once all requirements are satisfied, merge this PR as a stack href="https://app.graphite.com/github/pr/llvm/llvm-project/169918?utm_source=stack-comment-downstack-mergeability-w

[llvm-branch-commits] [llvm] AMDGPU/GlobalISel: Report RegBankLegalize errors using reportGISelFailure (PR #169918)

2025-11-28 Thread Petar Avramovic via llvm-branch-commits
https://github.com/petar-avramovic ready_for_review https://github.com/llvm/llvm-project/pull/169918 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-llvm-transforms Author: Ryotaro Kasuga (kasuga-fj) Changes This patch adds a check in validation for delinearization to ensure that the offset calculation does not overflow. If it overflows, different subscripts could map to the same linear index, lead

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj edited https://github.com/llvm/llvm-project/pull/169902 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-llvm-analysis Author: Ryotaro Kasuga (kasuga-fj) Changes This patch adds a check in validation for delinearization to ensure that the offset calculation does not overflow. If it overflows, different subscripts could map to the same linear index, leadin

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj ready_for_review https://github.com/llvm/llvm-project/pull/169902 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [llvm] [BOLT] Rename Pointer Auth DWARF rewriter passes (PR #164622)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/164622 From e0a245ef4263f7b4576ae4365e4f7cf877ef3394 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Wed, 22 Oct 2025 12:44:37 + Subject: [PATCH 1/6] [BOLT][NFC] Rename Pointer Auth DWARF rewriter passes Ori

[llvm-branch-commits] [llvm] [BOLT][PAC] Warn about synchronous unwind tables (PR #165227)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/165227 From 85c15eb2ad4a572ad725b06c499d57d1a6af9b1e Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Mon, 27 Oct 2025 09:29:54 + Subject: [PATCH 1/4] [BOLT][PAC] Warn about synchronous unwind tables BOLT cur

[llvm-branch-commits] [llvm] [BOLT] Rename Pointer Auth DWARF rewriter passes (PR #164622)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/164622 From d74db61dbd29139a54c8ba4a205a61544180cf96 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Wed, 22 Oct 2025 12:44:37 + Subject: [PATCH 1/6] [BOLT][NFC] Rename Pointer Auth DWARF rewriter passes Ori

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread via llvm-branch-commits
github-actions[bot] wrote: # :penguin: Linux x64 Test Results * 166430 tests passed * 2874 tests skipped * 1 test failed ## Failed Tests (click on a test name to see its output) ### LLVM LLVM.Transforms/LICM/lnicm.ll ``` Exit Code: 1 Command Output (stdout): -- # RUN: at line 2 /home/gha/a

[llvm-branch-commits] [llvm] [BOLT][PAC] Warn about synchronous unwind tables (PR #165227)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/165227 From e53aff33f3e1f6a1bc1ed4b487f4f4c00fe9d67c Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Mon, 27 Oct 2025 09:29:54 + Subject: [PATCH 1/4] [BOLT][PAC] Warn about synchronous unwind tables BOLT cur

[llvm-branch-commits] [llvm] [BOLT] Rename Pointer Auth DWARF rewriter passes (PR #164622)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/164622 From d74db61dbd29139a54c8ba4a205a61544180cf96 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Wed, 22 Oct 2025 12:44:37 + Subject: [PATCH 1/6] [BOLT][NFC] Rename Pointer Auth DWARF rewriter passes Ori

[llvm-branch-commits] [llvm] [BOLT] Rename Pointer Auth DWARF rewriter passes (PR #164622)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/164622 From e0a245ef4263f7b4576ae4365e4f7cf877ef3394 Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Wed, 22 Oct 2025 12:44:37 + Subject: [PATCH 1/6] [BOLT][NFC] Rename Pointer Auth DWARF rewriter passes Ori

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj updated https://github.com/llvm/llvm-project/pull/169902 >From 285364b1989e6c9b603cbb505380cde77ea7beda Mon Sep 17 00:00:00 2001 From: Ryotaro Kasuga Date: Fri, 28 Nov 2025 11:12:41 + Subject: [PATCH] [Delinearization] Add validation for large size arrays ---

[llvm-branch-commits] [llvm] [BOLT][PAC] Warn about synchronous unwind tables (PR #165227)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/165227 From 85c15eb2ad4a572ad725b06c499d57d1a6af9b1e Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Mon, 27 Oct 2025 09:29:54 + Subject: [PATCH 1/4] [BOLT][PAC] Warn about synchronous unwind tables BOLT cur

[llvm-branch-commits] [llvm] [BOLT][PAC] Warn about synchronous unwind tables (PR #165227)

2025-11-28 Thread Gergely Bálint via llvm-branch-commits
https://github.com/bgergely0 updated https://github.com/llvm/llvm-project/pull/165227 From e53aff33f3e1f6a1bc1ed4b487f4f4c00fe9d67c Mon Sep 17 00:00:00 2001 From: Gergely Balint Date: Mon, 27 Oct 2025 09:29:54 + Subject: [PATCH 1/4] [BOLT][PAC] Warn about synchronous unwind tables BOLT cur

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
kasuga-fj wrote: > [!WARNING] > This pull request is not mergeable via GitHub because a downstack PR is > open. Once all requirements are satisfied, merge this PR as a stack href="https://app.graphite.com/github/pr/llvm/llvm-project/169902?utm_source=stack-comment-downstack-mergeability-warning

[llvm-branch-commits] [llvm] [Delinearization] Add validation for large size arrays (PR #169902)

2025-11-28 Thread Ryotaro Kasuga via llvm-branch-commits
https://github.com/kasuga-fj created https://github.com/llvm/llvm-project/pull/169902 None >From 2e9f6e6f4e2d1a5737b5349845a729844656fc4a Mon Sep 17 00:00:00 2001 From: Ryotaro Kasuga Date: Fri, 28 Nov 2025 11:12:41 + Subject: [PATCH] [Delinearization] Add validation for large size arrays

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread lonely eagle via llvm-branch-commits
https://github.com/linuxlonelyeagle approved this pull request. I also think it's good to do this. https://github.com/llvm/llvm-project/pull/169269 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/m

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Mehdi Amini via llvm-branch-commits
https://github.com/joker-eph approved this pull request. https://github.com/llvm/llvm-project/pull/169269 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Mehdi Amini via llvm-branch-commits
@@ -786,9 +824,14 @@ static void cleanUpDeadVals(RDVFinalCleanupList &list) { // 3. Operations LDBG() << "Cleaning up " << list.operations.size() << " operations"; - for (auto &op : list.operations) { + for (Operation *op : list.operations) { LDBG() << "Erasing oper

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Mehdi Amini via llvm-branch-commits
https://github.com/joker-eph approved this pull request. https://github.com/llvm/llvm-project/pull/169873 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Mehdi Amini via llvm-branch-commits
@@ -57,8 +58,33 @@ Operation *UBDialect::materializeConstant(OpBuilder &builder, Attribute value, return nullptr; } +//===--===// +// PoisonOp +//===-

[llvm-branch-commits] [mlir] e6304ea - Revert "[MLIR][SCF] Sink scf.if from scf.while before region into after regio…"

2025-11-28 Thread via llvm-branch-commits
Author: Ming Yan Date: 2025-11-28T17:30:38+08:00 New Revision: e6304ea7e524609c33329a8bcb5c618832f0d381 URL: https://github.com/llvm/llvm-project/commit/e6304ea7e524609c33329a8bcb5c618832f0d381 DIFF: https://github.com/llvm/llvm-project/commit/e6304ea7e524609c33329a8bcb5c618832f0d381.diff LOG:

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Mehdi Amini via llvm-branch-commits
@@ -57,8 +58,33 @@ Operation *UBDialect::materializeConstant(OpBuilder &builder, Attribute value, return nullptr; } +//===--===// +// PoisonOp +//===-

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Mehdi Amini via llvm-branch-commits
@@ -445,14 +446,43 @@ struct CondBranchTruthPropagation : public OpRewritePattern { return success(replaced); } }; + +struct DropUnreachableCondBranch : public OpRewritePattern { joker-eph wrote: Can you add a small snippet/explanation summary of the tr

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Mehdi Amini via llvm-branch-commits
@@ -22,7 +22,7 @@ include "mlir/Interfaces/SideEffectInterfaces.td" def ControlFlow_Dialect : Dialect { let name = "cf"; let cppNamespace = "::mlir::cf"; - let dependentDialects = ["arith::ArithDialect"]; + let dependentDialects = ["arith::ArithDialect", "ub::UBDialect"];

[llvm-branch-commits] [libcxx] 670ee5c - Revert "[libc++] Fix the locale base API on Linux with musl (#167980)"

2025-11-28 Thread via llvm-branch-commits
Author: Nikolas Klauser Date: 2025-11-28T09:51:56+01:00 New Revision: 670ee5c2e8470f0558d0e03e84c1908359c68666 URL: https://github.com/llvm/llvm-project/commit/670ee5c2e8470f0558d0e03e84c1908359c68666 DIFF: https://github.com/llvm/llvm-project/commit/670ee5c2e8470f0558d0e03e84c1908359c68666.dif

[llvm-branch-commits] [flang] [llvm] [mlir] [MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_device_ptr (PR #169367)

2025-11-28 Thread Kareem Ergawy via llvm-branch-commits
@@ -0,0 +1,46 @@ +! Validate that a device pointer obtained via omp_get_mapped_ptr can be used +! inside a TARGET region with the is_device_ptr clause. +! REQUIRES: flang, amdgcn-amd-amdhsa + +! RUN: %libomptarget-compile-fortran-run-and-check-generic + +program is_device_ptr_targ

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer updated https://github.com/llvm/llvm-project/pull/169269 >From c1b8c55aa730c27e4cc5c9910e2303604f1d50ed Mon Sep 17 00:00:00 2001 From: Matthias Springer Date: Mon, 24 Nov 2025 02:42:09 + Subject: [PATCH 1/2] [mlir][Transforms] Fix crash in `-remove-dead-

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
@@ -141,6 +141,33 @@ static bool hasLive(ValueRange values, const DenseSet &nonLiveSet, return false; } +/// Return true iff at least one value in `values` is dead, given the liveness +/// information in `la`. +static bool hasDead(ValueRange values, const DenseSet &nonLiveS

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
@@ -118,6 +118,17 @@ func.func @main(%arg0 : i32) { // - +// CHECK-LABEL: func.func private @clean_func_op_remove_side_effecting_op() { +// CHECK-NEXT:return +// CHECK-NEXT: } +func.func private @clean_func_op_remove_side_effecting_op(%arg0: i32) -> (i32) { + // ve

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer edited https://github.com/llvm/llvm-project/pull/169269 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer edited https://github.com/llvm/llvm-project/pull/169269 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer edited https://github.com/llvm/llvm-project/pull/169269 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [mlir] [mlir][Transforms] Fix crash in `-remove-dead-values` on private functions (PR #169269)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
matthias-springer wrote: > Seems to me that this is a case where we would insert a "unreachable" > terminator instead? I like this approach. This allows us to fix the `-remove-dead-values` pass without having to run a second analysis such as "finding dead symbols" -- the pass stays relatively

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer updated https://github.com/llvm/llvm-project/pull/169873 >From 561b6ca75f36e253bc73b7de27a4a55bd129a2f2 Mon Sep 17 00:00:00 2001 From: Matthias Springer Date: Fri, 28 Nov 2025 04:59:57 + Subject: [PATCH] [mlir][UB] Add `ub.unreachable` canonicalization

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer created https://github.com/llvm/llvm-project/pull/169873 Basic blocks with a `ub.unreachable` terminator are unreachable. This commit adds a canonicalization pattern that drops all preceding operations. This commit also adds a canonicalization pattern that

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread Matthias Springer via llvm-branch-commits
https://github.com/matthias-springer edited https://github.com/llvm/llvm-project/pull/169873 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [mlir] [mlir][UB] Add `ub.unreachable` canonicalization (PR #169873)

2025-11-28 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-mlir-cf Author: Matthias Springer (matthias-springer) Changes Basic blocks with a `ub.unreachable` terminator are unreachable. This commit adds a canonicalization pattern that drops all preceding operations. This commit also adds a canonicalization pat

[llvm-branch-commits] [flang] [llvm] [mlir] [MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_device_ptr (PR #169367)

2025-11-28 Thread Akash Banerjee via llvm-branch-commits
TIFitis wrote: > Thanks Akash. Just a few comments about mapping flags. Also, can you please > add an MLIR to LLVM test? Thanks for the review, I've added an MLIR test although it checks the same thing as the flang/test/Integration/OpenMP/map-types-and-sizes.f90 test. https://github.com/llvm/

[llvm-branch-commits] [flang] [llvm] [mlir] [MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_device_ptr (PR #169367)

2025-11-28 Thread Akash Banerjee via llvm-branch-commits
@@ -3875,6 +3870,10 @@ convertClauseMapFlags(omp::ClauseMapFlags mlirFlags) { if (mapTypeToBool(omp::ClauseMapFlags::attach)) mapType |= llvm::omp::OpenMPOffloadMappingFlags::OMP_MAP_ATTACH; + // No dedicated LLVM runtime flag for is_device_ptr; handled separately. + i

[llvm-branch-commits] [clang] [Clang] [C++26] Expansion Statements (Part 5: Iterating Expansion Statements) (PR #169684)

2025-11-28 Thread Timm Baeder via llvm-branch-commits
tbaederr wrote: > (I’m currently leaning towards approach 1) I agree with that. https://github.com/llvm/llvm-project/pull/169684 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/l

[llvm-branch-commits] [flang] [llvm] [mlir] [MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_device_ptr (PR #169367)

2025-11-28 Thread Akash Banerjee via llvm-branch-commits
@@ -1146,7 +1146,8 @@ bool ClauseProcessor::processIsDevicePtr( const parser::CharBlock &source) { mlir::Location location = converter.genLocation(source); mlir::omp::ClauseMapFlags mapTypeBits = -mlir::omp::ClauseMapFlags::storage; +

[llvm-branch-commits] [flang] [llvm] [mlir] [MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_device_ptr (PR #169367)

2025-11-28 Thread Akash Banerjee via llvm-branch-commits
https://github.com/TIFitis updated https://github.com/llvm/llvm-project/pull/169367 >From 247991827a0177c447946c0e7a7d3512bd91dcf9 Mon Sep 17 00:00:00 2001 From: Akash Banerjee Date: Thu, 27 Nov 2025 19:41:59 + Subject: [PATCH] [MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_de

[llvm-branch-commits] [flang] [llvm] [mlir] [MLIR][OpenMP] Add OpenMPToLLVMIRTranslation support for is_device_ptr (PR #169367)

2025-11-28 Thread Akash Banerjee via llvm-branch-commits
@@ -0,0 +1,46 @@ +! Validate that a device pointer obtained via omp_get_mapped_ptr can be used +! inside a TARGET region with the is_device_ptr clause. +! REQUIRES: flang, amdgcn-amd-amdhsa + +! RUN: %libomptarget-compile-fortran-run-and-check-generic + +program is_device_ptr_targ

[llvm-branch-commits] [llvm] 78686bb - Revert "[ShrinkWrap] Modify shrink wrapping to accommodate functions terminat…"

2025-11-28 Thread via llvm-branch-commits
Author: Alex Bradbury Date: 2025-11-27T18:38:25Z New Revision: 78686bbf84f50f328ba1e9315b47cd51793dc836 URL: https://github.com/llvm/llvm-project/commit/78686bbf84f50f328ba1e9315b47cd51793dc836 DIFF: https://github.com/llvm/llvm-project/commit/78686bbf84f50f328ba1e9315b47cd51793dc836.diff LOG:

[llvm-branch-commits] [clang] [Clang] [C++26] Expansion Statements (Part 5: Iterating Expansion Statements) (PR #169684)

2025-11-28 Thread via llvm-branch-commits
Sirraide wrote: > One thing that I still need to figure out is how to construct and evaluate a > lambda in Sema, because that’s required for computing the expansion size. Essentially, the expression we need to evaluate is this (CWG 3131 may end up changing this a bit, but not in ways that matt

[llvm-branch-commits] [llvm] a11d5ea - Revert "[OMPIRBuilder] always leave PARALLEL via the same barrier (#164586)"

2025-11-28 Thread via llvm-branch-commits
Author: Tom Eccles Date: 2025-11-27T16:19:01Z New Revision: a11d5ea0ad65b3bb5a6846310b2b2cc91136d8b3 URL: https://github.com/llvm/llvm-project/commit/a11d5ea0ad65b3bb5a6846310b2b2cc91136d8b3 DIFF: https://github.com/llvm/llvm-project/commit/a11d5ea0ad65b3bb5a6846310b2b2cc91136d8b3.diff LOG: Re

[llvm-branch-commits] [clang] [Clang][CodeGen] Remove explicit insertion of AllocToken pass (PR #169360)

2025-11-28 Thread Marco Elver via llvm-branch-commits
https://github.com/melver updated https://github.com/llvm/llvm-project/pull/169360 >From 3c13dc3871b39304144d2ac3da7498d3d8cec495 Mon Sep 17 00:00:00 2001 From: Marco Elver Date: Mon, 24 Nov 2025 17:44:32 +0100 Subject: [PATCH 1/3] fix formatting Created using spr 1.3.8-beta.1 --- clang/lib/D

[llvm-branch-commits] [clang] [Clang][CodeGen] Remove explicit insertion of AllocToken pass (PR #169360)

2025-11-28 Thread Marco Elver via llvm-branch-commits
https://github.com/melver updated https://github.com/llvm/llvm-project/pull/169360 >From 3c13dc3871b39304144d2ac3da7498d3d8cec495 Mon Sep 17 00:00:00 2001 From: Marco Elver Date: Mon, 24 Nov 2025 17:44:32 +0100 Subject: [PATCH 1/3] fix formatting Created using spr 1.3.8-beta.1 --- clang/lib/D

[llvm-branch-commits] [clang] [llvm] Continuation of fexec-charset (PR #169803)

2025-11-28 Thread via llvm-branch-commits
github-actions[bot] wrote: # :penguin: Linux x64 Test Results * 192859 tests passed * 6180 tests skipped https://github.com/llvm/llvm-project/pull/169803 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/c

[llvm-branch-commits] [clang] [Clang][CodeGen] Remove explicit insertion of AllocToken pass (PR #169360)

2025-11-28 Thread Marco Elver via llvm-branch-commits
https://github.com/melver updated https://github.com/llvm/llvm-project/pull/169360 >From 3c13dc3871b39304144d2ac3da7498d3d8cec495 Mon Sep 17 00:00:00 2001 From: Marco Elver Date: Mon, 24 Nov 2025 17:44:32 +0100 Subject: [PATCH 1/3] fix formatting Created using spr 1.3.8-beta.1 --- clang/lib/D

[llvm-branch-commits] [clang] [Clang][CodeGen] Remove explicit insertion of AllocToken pass (PR #169360)

2025-11-28 Thread Marco Elver via llvm-branch-commits
https://github.com/melver edited https://github.com/llvm/llvm-project/pull/169360 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [clang] [Clang][CodeGen] Remove explicit insertion of AllocToken pass (PR #169360)

2025-11-28 Thread Marco Elver via llvm-branch-commits
https://github.com/melver edited https://github.com/llvm/llvm-project/pull/169360 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [clang] [Clang][CodeGen] Remove explicit insertion of AllocToken pass (PR #169360)

2025-11-28 Thread Marco Elver via llvm-branch-commits
https://github.com/melver updated https://github.com/llvm/llvm-project/pull/169360 >From 3c13dc3871b39304144d2ac3da7498d3d8cec495 Mon Sep 17 00:00:00 2001 From: Marco Elver Date: Mon, 24 Nov 2025 17:44:32 +0100 Subject: [PATCH 1/3] fix formatting Created using spr 1.3.8-beta.1 --- clang/lib/D

[llvm-branch-commits] [flang] 1778938 - Revert "[MLIR][OpenMP] Add MLIR Lowering Support for dist_schedule (#152736)"

2025-11-28 Thread via llvm-branch-commits
Author: Jack Styles Date: 2025-11-27T14:41:59Z New Revision: 1778938460a1686f8f44bfa41df03b165ca8 URL: https://github.com/llvm/llvm-project/commit/1778938460a1686f8f44bfa41df03b165ca8 DIFF: https://github.com/llvm/llvm-project/commit/1778938460a1686f8f44bfa41df03b165ca8.diff LOG: R

[llvm-branch-commits] [clang] [llvm] [mlir] [OMPIRBuilder] CANCEL IF(FALSE) is still a cancellation point (PR #164587)

2025-11-28 Thread Tom Eccles via llvm-branch-commits
https://github.com/tblah closed https://github.com/llvm/llvm-project/pull/164587 ___ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

[llvm-branch-commits] [clang] [llvm] Continuation of fexec-charset (PR #169803)

2025-11-28 Thread Abhina Sree via llvm-branch-commits
https://github.com/abhina-sree updated https://github.com/llvm/llvm-project/pull/169803 >From ec0efa55da6e216ae811ff97279c1cd2024b549f Mon Sep 17 00:00:00 2001 From: Abhina Sreeskantharajan Date: Mon, 24 Nov 2025 11:00:04 -0500 Subject: [PATCH 1/3] add ParserConversionAction (cherry picked fro

[llvm-branch-commits] [clang] [llvm] Continuation of fexec-charset (PR #169803)

2025-11-28 Thread via llvm-branch-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff origin/main HEAD --extensions h,cpp,c -- clang/include/clang/AST/Expr.h clang/include

[llvm-branch-commits] [clang] [llvm] Continuation of fexec-charset (PR #169803)

2025-11-28 Thread via llvm-branch-commits
llvmbot wrote: @llvm/pr-subscribers-llvm-support Author: Abhina Sree (abhina-sree) Changes This patch builds upon https://github.com/llvm/llvm-project/pull/138895 and introduces a ParserConversionAction which is able to control which charset to use for various string literals. I also int

[llvm-branch-commits] [clang] [llvm] Continuation of fexec-charset (PR #169803)

2025-11-28 Thread Abhina Sree via llvm-branch-commits
https://github.com/abhina-sree created https://github.com/llvm/llvm-project/pull/169803 This patch builds upon https://github.com/llvm/llvm-project/pull/138895 and introduces a ParserConversionAction which is able to control which charset to use for various string literals. I also introduce a

[llvm-branch-commits] [flang] [flang][OpenMP] Reject END DO on construct that crosses label-DO (PR #169714)

2025-11-28 Thread Tom Eccles via llvm-branch-commits
@@ -141,8 +144,27 @@ class CanonicalizationOfDoLoops { stack.pop_back(); } while (!stack.empty() && stack.back().label == currentLabel); i = --next; + return true; +} else { + return false; } } + + void MarkOpenMPConstruct(OpenMPConstr

[llvm-branch-commits] [flang] [flang][OpenMP] Reject END DO on construct that crosses label-DO (PR #169714)

2025-11-28 Thread Tom Eccles via llvm-branch-commits
https://github.com/tblah approved this pull request. LGTM. I found the CanonicalizeIfMatch function pretty difficult to reason about, but that wasn't added in this commit and it might just be me so it can stay how it is. From the tests included in the PR and my own manual testing I am satisfie

  1   2   3   4   5   6   7   >