-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Add TypeName
APIs to simplify metadata lookup.
#111598
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
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 runtime/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems Lines 1492 to 1494 in 29013d8
(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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.