-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Delay finalizers until after codegen is done #11956
Comments
would probably be fine, put the run_finalizers() in gc.c under a global flag, then maybe do the call when you reenable them (and probably need to put it under a jl_in_gc = 1 to avoid running gc while doing the backlog) |
See a backtrace that might be relevant at #11937 (comment). @vtjnash has a sneaky feeling that this may be behind at least part of #7942 / #11818 |
Semi-related: #5502 |
I don't really understand the parenthetical of @carnaval's comment, but for the first part I think it could be as simple as a counter in Lines 730 to 793 in b824dc9
Then pop the counter on the other side (be sure to reset it in the Then check if the counter is non-zero in Lines 149 to 159 in d2f065e
|
Thanks, @ihnorton. What's more problematic here, emit or compile? |
On the mailing lists @vtjnash noted that we have the potential for recursive codegen if the GC tries to run finalizers during codegen. @carnaval Can we delay running finalizers while in codegen?
The text was updated successfully, but these errors were encountered: