Skip to content

perf: remove void JP arguments#12790

Merged
hargoniX merged 1 commit intomasterfrom
hbv/void_jp_args
Mar 4, 2026
Merged

perf: remove void JP arguments#12790
hargoniX merged 1 commit intomasterfrom
hbv/void_jp_args

Conversation

@hargoniX
Copy link
Copy Markdown
Contributor

@hargoniX hargoniX commented Mar 4, 2026

This PR makes the compiler removes arguments to join points that are void, avoiding a bunch of dead
stores in the bytecode and the initial C (though LLVM was surely able to optimize these away further
down the line already).

@hargoniX hargoniX requested a review from leodemoura as a code owner March 4, 2026 15:22
@hargoniX
Copy link
Copy Markdown
Contributor Author

hargoniX commented Mar 4, 2026

!bench

@leanprover-radar
Copy link
Copy Markdown

leanprover-radar commented Mar 4, 2026

Benchmark results for a068019 against 36f05c4 are in! @hargoniX

  • 🟥 build//instructions: +324.0M (+0.00%)

Small changes (1✅, 1🟥)

  • 🟥 build/module/Lean.Compiler.LCNF.ToImpure//instructions: +337.6M (+6.26%) (reduced significance based on *//lines)
  • size/all/.ir//bytes: -813kiB (-0.25%)

@hargoniX hargoniX added the changelog-compiler Compiler, runtime, and FFI label Mar 4, 2026
@hargoniX hargoniX added this pull request to the merge queue Mar 4, 2026
Merged via the queue into master with commit e78ba3b Mar 4, 2026
21 checks passed
@github-actions github-actions bot added the toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN label Mar 4, 2026
@mathlib-lean-pr-testing
Copy link
Copy Markdown

Mathlib CI status (docs):

  • ❗ Batteries/Mathlib CI will not be attempted unless your PR branches off the nightly-with-mathlib branch. Try git rebase 36f05c4a18412c6a1699a98b283c5730eda904cb --onto cda84702e9b31165f1f83c657b532f36f34e0bd0. You can force Mathlib CI using the force-mathlib-ci label. (2026-03-04 16:31:25)

@leanprover-bot
Copy link
Copy Markdown
Collaborator

Reference manual CI status:

  • ❗ Reference manual CI will not be attempted unless your PR branches off the nightly-with-manual branch. Try git rebase 36f05c4a18412c6a1699a98b283c5730eda904cb --onto cda84702e9b31165f1f83c657b532f36f34e0bd0. You can force reference manual CI using the force-manual-ci label. (2026-03-04 16:31:26)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog-compiler Compiler, runtime, and FFI toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants