rust icon indicating copy to clipboard operation
rust copied to clipboard

match lowering: handle or-patterns one layer at a time

Open Nadrieril opened this issue 1 year ago • 1 comments

create_or_subcandidates and merge_trivial_subcandidates both call themselves recursively to handle nested or-patterns, which is hard to follow. In this PR I avoid the need for that; we now process a single "layer" of or-patterns at a time.

r? @matthewjasper

Nadrieril avatar Mar 05 '24 21:03 Nadrieril

:umbrella: The latest upstream changes (presumably #122283) made this pull request unmergeable. Please resolve the merge conflicts.

bors avatar Mar 10 '24 14:03 bors

Gentle ping on this one, I got a few things blocked on it

Nadrieril avatar Mar 16 '24 16:03 Nadrieril

:umbrella: The latest upstream changes (presumably #123098) made this pull request unmergeable. Please resolve the merge conflicts.

bors avatar Mar 26 '24 20:03 bors

r? @oli-obk

Nadrieril avatar Mar 27 '24 19:03 Nadrieril

Sorry about taking so long on this r? @matthewjasper @bors r+

matthewjasper avatar Apr 01 '24 12:04 matthewjasper

:pushpin: Commit 7410f78e9a3a8a47bea05bb2c52e0ac307712a68 has been approved by matthewjasper

It is now in the queue for this repository.

bors avatar Apr 01 '24 12:04 bors

:hourglass: Testing commit 7410f78e9a3a8a47bea05bb2c52e0ac307712a68 with merge 6bb6b816bfcf9e26fac5175e3e907dcefe5ecdbc...

bors avatar Apr 01 '24 12:04 bors

:sunny: Test successful - checks-actions Approved by: matthewjasper Pushing 6bb6b816bfcf9e26fac5175e3e907dcefe5ecdbc to master...

bors avatar Apr 01 '24 14:04 bors

Finished benchmarking commit (6bb6b816bfcf9e26fac5175e3e907dcefe5ecdbc): comparison URL.

Overall result: ✅ improvements - no action needed

@rustbot label: -perf-regression

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-2.4% [-2.4%, -2.4%] 1
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
1.7% [1.4%, 1.9%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Cycles

This benchmark run did not return any relevant results for this metric.

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 669.305s -> 667.497s (-0.27%) Artifact size: 315.75 MiB -> 315.72 MiB (-0.01%)

rust-timer avatar Apr 01 '24 16:04 rust-timer