Skip to content

base: Fix #25066 via `noinline`

Ben Gamari requested to merge wip/T25066 into master

As noted in #25066 (closed), the exception backtrace proposal introduced a rather subtle performance regression due to simplification producing Core which the demand analyser concludes may diverge with a precise exception. The nature of the problem is more completely described in the new Note [Hiding precise exception signature in throw].

The (rather hacky) solution we use here hides the problematic optimisation through judicious use of noinline. Ultimately however we will want a more principled solution (e.g. #23847).

Merge request reports

Loading