A quiet week. One rather large regression on a synthetic benchmark and a few small improvements.
#77023 is an interesting case. It encoded an invariant about slice lengths as an assume
intrinsic inside len
function. It seems to have caused a small compile-time slowdown, but there was no improvement in check
build performance (a proxy for generated code quality). In fact, the LLVM documentation specifically advises against overuse of the assume
intrinsic in cases where the invariant is unlikely to be of much help to the optimizer. That seems to be the case here.
Triage done by @ecstaticmorse. Revision range: 6369a98ebdee8ce01510f5d4307ddb771c8cb0e5..ea7e131435a960d154e9a5d6a9297039574ffd7d
1 Regressions, 2 Improvements, 1 Mixed
1 of them in rollups
#77381 Rollup of 12 pull requests
incr-full
builds of deeply-nested-debug
)#77257 Optimize IntRange::from_pat
, then shrink ParamEnv
full
builds of ctfe-stress-4-check
)full
builds of unicode_normalization-check
)#77466 Re-land PR #71840 (Rework MIR drop tree lowering) #77466
full
builds of regex-opt
)incr-unchanged
builds of webrender-wrench-opt
)#77023 Hint the maximum length permitted by invariant of slices
incr-patched: sparse set
builds of regex-opt
)incr-patched: b9b3e592dd cherry picked
builds of style-servo-debug
)