Avatar for the ProvableHQ user
ProvableHQ
leo
BlogDocsChangelog

Performance History

Latest Results

Bump to 4.0.2, run cargo update, and update to rust 1.95.0 (#29369) Co-authored-by: Mohammad Fawaz <mohammadfawaz@gmail.com>
master
24 hours ago
merged release.yml
feat/devnode-persistent-storage
1 day ago
Trim wasm support to ABI generation
josh/wasm-friendly-frontend-abi-path
2 days ago
feat(LSP) Implement semantic highlighting.
josh/semantic_hightlighting
2 days ago
Collapse redundant Optional wrapping around storage vector access (#29360) * Avoid receiver duplication in option_lowering unwrap lowerings `OptionalUnwrap` and `OptionalUnwrapOr` synthesize two member accesses (`.is_some` and `.val`) on the reconstructed receiver. Previously the receiver expression was cloned for each access, so a receiver like `vec.get(idx)` — which lowers to a ternary containing a mapping read — was emitted twice per unwrap site. Bind the reconstructed receiver to a fresh `$opt$N` temporary before building the two member accesses, so the subtree is only emitted once and downstream passes duplicate just a `Path`. Includes pass-level tests covering function-call, ternary, nested unwrap_or, mixed unwrap/unwrap_or, and library / submodule receivers. Addresses part of #29343. * Add composite forwarding and boolean ternary folding to ssa_const_propagation Three orthogonal extensions to the existing fixpoint pass, sharing one visitor state: 1. Track composite literal bindings whose fields are all atoms (paths or literals). `let s = S { a: x, b: y }` records `s → {a: x, b: y}` in an `atom_fielded_composites` map. 2. In `reconstruct_member_access`, forward `x.field` to the stored atom when `x` is tracked. This is scalar replacement of aggregates for short-lived structs; the struct binding itself is left for DCE once every field access is forwarded. 3. In `reconstruct_ternary`, fold all four bool-literal branch combinations — (true,false) → cond, (false,true) → !cond, and both-branches-equal → that literal. These commonly arise after the above composite forwarding erases a boolean flag that was selected across a ternary. On its own the composite-forwarding change is a general-purpose SRA that helps any short-lived aggregate; in combination with #29353's receiver binding it collapses the option ceremony that storage-vector accesses generate. Includes pass-level tests covering literal and path fields, all four bool-ternary combinations, the non-fold variable-branch case, combined forwarding-then-folding, the single-hop limitation on nested composites, and library / submodule struct types used as composite literals. Addresses part of #29343. * Update dynamic_storage_interface expectation after Optional wrapping collapse --------- Co-authored-by: Mohammad Fawaz <mohammadfawaz@gmail.com>
master
2 days ago

Latest Branches

CodSpeed Performance Gauge
0%
[Feature] Persistent storage for Devnode#29251
1 day ago
2433f48
feat/devnode-persistent-storage
CodSpeed Performance Gauge
0%
2 days ago
63a8dc5
josh/wasm-friendly-frontend-abi-path
CodSpeed Performance Gauge
0%
2 days ago
7edaf40
josh/semantic_hightlighting
© 2026 CodSpeed Technology
Home Terms Privacy Docs