This repository has been archived by the owner on Nov 1, 2020. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Interpreter] Static constructors and field access (#8370)
* Add support for ldfld and stfld (#5011) * Make interpreter methods take an concrete *Desc types * Update load and store field methods to handle specific types (5011) * Add support for static fields belonging to dynamically loaded types * Add support for loading and storing fields in native metadata * Use byte arrays to represent statics bases * Add support for static constructors * Include module name in key identity check * Ensure static class constructor is run for native format types * Retrieve non gc statics from typeloader environment * Allocate memory for non gc statics (#5011) * Add support for dynamic static constructors in runtime (#5011) * Ensure static constructors of compiled in types are run (#5011) * Use RuntimeTypeHandle when type is in native binary (#5011) * Simplify static field load/store methods (#5011) * Add support for gc statics of dynamic types (#5011) * Fix static field get/set for pre-compiled in types * Add TryGetThreadStaticFieldDataDirect method * Remove StaticsRegion class * Use state.GcDataSize to calculate eetype base size * Improve support for gc statics * s/GetHasCode/GetHashCode * Improve code comments * Clean up thread static support code
- Loading branch information