Add support for standalone GC back compatibility #78484
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, the version of the standalone GC has to match the version that the runtime was compiled with. This change enables loosening that requirement. Runtime is allowed to use any standalone GC as long as its version is larger or equal to a defined minimum version. GC is now passed the version of GC the runtime was compiled with, and it can use it to behave in a way compatible with that version. For example, if we add new methods to the GC to EE interface, that GC can check the GC version the runtime supports and skip calling the new methods if it is running with an older runtime.