Add TypeName APIs to simplify metadata lookup.#111598
Conversation
|
Note regarding the |
|
Note regarding the |
...libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/TypeNameParserHelpers.cs
Outdated
Show resolved
Hide resolved
|
Could you please delete (Other uses of TypeNameHelpers.cs should be delete too once these APIs are available in the LKG runtime.) |
...libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/TypeNameParserHelpers.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/TypeName.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Reflection.Metadata/tests/Metadata/TypeNameTests.cs
Show resolved
Hide resolved
There was a problem hiding this comment.
Copilot reviewed 5 out of 17 changed files in this pull request and generated no comments.
Files not reviewed (12)
- src/coreclr/tools/ILVerification/ILVerification.projitems: Language not supported
- src/coreclr/tools/aot/ILCompiler.Compiler/ILCompiler.Compiler.csproj: Language not supported
- src/coreclr/tools/aot/ILCompiler.TypeSystem/ILCompiler.TypeSystem.csproj: Language not supported
- src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems: Language not supported
- src/tools/illink/src/linker/Mono.Linker.csproj: Language not supported
- src/libraries/Common/src/System/Reflection/Metadata/TypeNameHelpers.cs: Evaluated as low risk
- src/coreclr/tools/Common/TypeSystem/Common/Utilities/CustomAttributeTypeNameParser.cs: Evaluated as low risk
- src/tools/illink/src/linker/Linker/TypeNameResolver.cs: Evaluated as low risk
- src/mono/System.Private.CoreLib/src/System/Reflection/TypeNameResolver.Mono.cs: Evaluated as low risk
- src/libraries/System.Private.CoreLib/src/System/Reflection/TypeNameResolver.cs: Evaluated as low risk
- src/coreclr/System.Private.CoreLib/src/System/Reflection/TypeNameResolver.CoreCLR.cs: Evaluated as low risk
- src/coreclr/nativeaot/System.Private.CoreLib/src/System/Reflection/TypeNameResolver.NativeAot.cs: Evaluated as low risk
e1a9730 to
d08be6b
Compare
d08be6b to
1e3f969
Compare
…in Mono, while still avoiding changes to the Mono runtime code.
87cf79d to
b924a6f
Compare
src/mono/System.Private.CoreLib/src/System/TypeLoadException.Mono.cs
Outdated
Show resolved
Hide resolved
src/mono/System.Private.CoreLib/src/System/TypeLoadException.Mono.cs
Outdated
Show resolved
Hide resolved
...libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/TypeNameParserHelpers.cs
Outdated
Show resolved
Hide resolved
src/libraries/System.Reflection.Metadata/src/System/Reflection/Metadata/TypeName.cs
Outdated
Show resolved
Hide resolved
…/Metadata/TypeName.cs
|
I have opened #112376 as a follow up to use these APIs in more places. |
* main: Code clean up in AP for NonNull* (dotnet#112027) JIT: Invalidate LSRA's DFS tree if we aren't running new layout phase (dotnet#112364) Update dependencies from https://github.com/dotnet/source-build-reference-packages build 20250204.2 (dotnet#112339) Add doc on OS onboarding (dotnet#112026) Add `TypeName` APIs to simplify metadata lookup. (dotnet#111598) Internal monitor impl not using coop mutex causing deadlocks on Android. (dotnet#112358) Do not run NAOT arm64 OSX testing on all PRs (dotnet#112342) Special-case empty enumerables in AsyncEnumerable (dotnet#112321) Have mono handle ConvertToIntegerNative for Double and Single (dotnet#112206) Update dependencies from https://github.com/dotnet/arcade build 20250206.4 (dotnet#112338) System.Configuration.ConfigurationManager.Tests: use Assembly.Location to determine ThisApplicationPath. (dotnet#112231) Force write of local file header when "version needed to extract" changes (dotnet#112032) JIT: Don't reorder handler blocks (dotnet#112292) [RISC-V] Synthesize some floating constants inline (dotnet#111529) Enable `SA1000`: Spacing around keywords (dotnet#112302) Fix relocs for linux-riscv64 AOT (dotnet#112331)
It's strange, this regression is WASM specific:
If we zoom in, CLR has actually improved performance in that time range:
@lewing I am 100% occupied with AI-related projects and I won't be able to help, but please report a new issue (it's very easy to miss GH notification from an old PR) and assign it to 10.0 milestone so we don't regress type loading for WASM in 10 |
I expect that the regression is Mono interpreter specific. This change https://github.com/dotnet/runtime/pull/111598/files#diff-02398900754074bfbfe1f634cd44c490e92f433d7cdd8eb217effde64b3581baR49 switched If we care about this regression, we can revert the change in Type.Mono.cs to fix it. It will re-introduce bugs and behavior differences on Mono that will need to be dealt with. |



Fixes #101774.