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
refactor: Synchronize naming of GC public API #3652
refactor: Synchronize naming of GC public API #3652
Conversation
…refix instead of `scalanative_` Merge `GCScalaNative.h` into `ScalaNativeGC.h` defining common interface
Great that you are finishing this up. Just as a note, there could be a couple more that can be shared with Boehm - https://github.com/ivmai/bdwgc/blob/master/docs/README.environment. We also could support shared macros for special GC building if needed too. |
Thank you for the links Eric! Yes, some of these might be integrated as well, but this might require some additional work. One interesting would be adding improved logging mechanism, altough the BoehmGC specificaiton seems to not be perfect. It is using:
I don't think we should follow that. Instead we should define In the Immix/Commix to should redirect all outputs within Because it would require way more work I'd leave it for a follow up PR at some point in the future or if some volunteer shows up. |
Sure thing. I agree that the Boehm macros are not ideal.
This is certainly a good idea. |
@@ -262,6 +262,9 @@ are used on all GCs. The last one works on Boehm and Commix. | |||
* GC_INITIAL_HEAP_SIZE (was SCALANATIVE_MIN_HEAP_SIZE) | |||
* GC_MAXIMUM_HEAP_SIZE (was SCALANATIVE_MAX_HEAP_SIZE) | |||
* GC_NPROCS (was SCALANATIVE_GC_THREADS) | |||
* GC_TIME_RATIO (was SCALANATIVE_TIME_RATIO) | |||
* GC_FREE_RATION (was SCALANATIVE_FREE_RATIO) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oops, this should have been GC_FREE_RATIO
. Seems to be fine in the code.
scalanative_*
functions toscalanative_GC_*
to keep Boehm GC naming convention (eg.GC_alloc
,GC_collect
)GC_
prefix instead ofSCALANATIVE_
GCScalaNative.h
into existingScalaNativeGC.h
header defining a common API GC should implement or stub.