diff options
author | Aleksey Kliger (λgeek) <akliger@gmail.com> | 2018-02-06 00:31:42 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-02-06 00:31:42 +0300 |
commit | 993ed19a6ffb74edc285f7983d15c2e2fd4d9090 (patch) | |
tree | 207f8b5e5e8f970c1dc95375dcc958eba2b7fa25 /msvc/libmonoruntime-common.targets.filters | |
parent | f01083ac485b9333c85536ef31e3af332d621929 (diff) |
[metadata] Move MonoClass initialization to a separate file (#6611)
Use `git blame -C10 mono/metadata/class-init.c` to see attribution for most of the old code.
This PR comprises:
* [metadata] Move (some) MonoClass construction to class-init.c
So far moved MonoClassDef, MonoClassGtd and MonoClassGenericInst construction
functions.
The idea is to eventually isolate functions that needs write/setter access to
MonoClass fields in a separate translation unit and make MonoClass opaque and
only accessible via getters everywhere else.
* [metadata] Move pointer MonoClass creation to class-init.c
* Mark mono_ptr_class_get as external only, runtime should use
mono_class_create_ptr.
* [msvc] Add mono/metadata/class-init.c (and .h) to the .targets file
* [metadata] Rename mono_generic_class_get_class
to mono_class_create_generic_inst
* [metadata] Move array class creation to class-init.c
* Mark mono_array_class_get external only, runtime should use
mono_class_create_array
* Mark mono_bounded_array_class_get external only, runtime should use
mono_class_create_bounded_array
* [metadata] Move generic param creation to class-init.c
* Also move mono_class_setup_vtable_general, mono_class_init_sizes, mono_class_setup_methods
* [metadata] Move mono_class_setup_basic_field_info to class-init.c
* [metadata] Move mono_class_setup_fields to class-init.c
* [metadata] Rename mono_class_from_generic_parameter_internal
to mono_class_create_generic_parameter
* [metadata] Move mono_class_layout_fields to class-init.c
* [metadata] Move mono_class_setup_{properties,events} to class-init.h
* [metadata] Move mono_class_setup_interfaces to class-init.c
* Also move mono_class_setup_mono_type
* [metadata] Move mono_class_setup_parent to class-init.c
* [metadata] remove some extern statistics
Diffstat (limited to 'msvc/libmonoruntime-common.targets.filters')
-rw-r--r-- | msvc/libmonoruntime-common.targets.filters | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/msvc/libmonoruntime-common.targets.filters b/msvc/libmonoruntime-common.targets.filters index a3ac5643453..6892b165a04 100644 --- a/msvc/libmonoruntime-common.targets.filters +++ b/msvc/libmonoruntime-common.targets.filters @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0" encoding="utf-8"?> <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <ItemGroup Label="common_sources"> <ClCompile Include="$(MonoSourceLocation)\mono\metadata\appdomain.c"> @@ -37,6 +37,12 @@ <ClCompile Include="$(MonoSourceLocation)\mono\metadata\class-accessors.c"> <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter> </ClCompile> + <ClCompile Include="$(MonoSourceLocation)\mono\metadata\class-init.c"> + <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter> + </ClCompile> + <ClInclude Include="$(MonoSourceLocation)\mono\metadata\class-init.h"> + <Filter>Header Files$(MonoRuntimeFilterSubFolder)\common</Filter> + </ClInclude> <ClCompile Include="$(MonoSourceLocation)\mono\metadata\cominterop.c"> <Filter>Source Files$(MonoRuntimeFilterSubFolder)\common</Filter> </ClCompile> @@ -680,4 +686,4 @@ <UniqueIdentifier>{D27FE656-8C2C-4D3B-8F25-4BAEAEAB7C6D}</UniqueIdentifier> </Filter> </ItemGroup> -</Project>
\ No newline at end of file +</Project> |