Uh oh!
There was an error while loading. Please reload this page.
Don't log warnings for certain RemoveAttributeInstances - #91782
Conversation
Fixes#88994. ILLinker attribute XML format has a way to express "only remove these attributes when parameter X has value of Y". We currently generate a warning and don't trim the attribute at all. The savings from trimming these attributes are going to be miniscule. Even in IL, this is scraping the bottom of the barrel. In Native AOT these attributes are pretty effectively deduplicated across assemblies. We'll likely never need this. This keeps the existing behavior (don't trim the attribute), but removes the warning.
ghost
commented
Sep 8, 2023
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue DetailsFixes #88994. ILLinker attribute XML format has a way to express "only remove these attributes when parameter X has value of Y". We currently generate a warning and don't trim the attribute at all. The savings from trimming these attributes are going to be miniscule. Even in IL, this is scraping the bottom of the barrel. In Native AOT these attributes are pretty effectively deduplicated across assemblies. We'll likely never need this. This keeps the existing behavior (don't trim the attribute), but removes the warning. Cc @dotnet/ilc-contrib
|
ivanpovazan
commented
Sep 8, 2023
/cc: @rolfbjarne |
vitek-karas
left a comment
There was a problem hiding this comment.
We're likely missing a test here - this should have been caught by a test.
I agree that if NativeAOT doesn't support that feature, it should not warn because of it being used.
MichalStrehovsky
commented
Sep 11, 2023
We have validation for the things that work (unconditional removal) in Native AOT smoke test suite. We just don't run the shared ILLinker tests for these. We probably don't have any sort of Kept validation for attributes. One could extract that information from the dependency graph in theory. |
MichalStrehovsky
commented
Sep 11, 2023
/backport to release-8.0 |
Started backporting to release-8.0: https://github.com/dotnet/runtime/actions/runs/6143538866 |
@MichalStrehovsky an error occurred while backporting to release-8.0, please check the run log for details! Error: The specified backport target branch release-8.0 wasn't found in the repo. |
MichalStrehovsky
commented
Sep 11, 2023
/backport to release/8.0 |
Started backporting to release/8.0: https://github.com/dotnet/runtime/actions/runs/6143568355 |
Fixes#88994.
ILLinker attribute XML format has a way to express "only remove these attributes when parameter X has value of Y". We currently generate a warning and don't trim the attribute at all.
The savings from trimming these attributes are going to be miniscule. Even in IL, this is scraping the bottom of the barrel. In Native AOT these attributes are pretty effectively deduplicated across assemblies. We'll likely never need this.
This keeps the existing behavior (don't trim the attribute), but removes the warning.
Cc @dotnet/ilc-contrib