-
-
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
gc-ext: only sweep unmarked objects #45035
Conversation
This prior conditional was a fixed constant branch, so this seems more like the intent.
I'm not up on how foreign objects are treated, but in general not sweeping marked objects seems like a good idea. |
I don't recall what the rationale for |
The change looks correct to me, too, yes. The reason why we probably didn't see crashes in GAP is that the only place where this may actually be used is the HPC-GAP code and some weak pointer code in the baseline GAP GC, neither of which is enabled in the Julia integration. |
It is also used by the Semigroups package these days, but again we don't use that by default. |
This prior conditional was a fixed constant branch, so this seems more like the intent. (cherry picked from commit ac51add)
This prior conditional was a fixed constant branch, so this seems more like the intent. (cherry picked from commit ac51add)
This prior conditional was a fixed constant branch, so this seems more like the intent. (cherry picked from commit ac51add)
This prior conditional was a fixed constant branch, so this seems more like the intent. (cherry picked from commit ac51add)
This prior conditional was a fixed constant branch on
!(v | 1)
, which was always true, since the pointer is never tagged by gc, so this seems more like the intent?@fingolfin @rbehrends from #28368