Skip to content

Add linker annotations to some of CoreLib#36532

Merged
MichalStrehovsky merged 7 commits into
dotnet:masterfrom
MichalStrehovsky:linkCoreLib
Jun 9, 2020
Merged

Add linker annotations to some of CoreLib#36532
MichalStrehovsky merged 7 commits into
dotnet:masterfrom
MichalStrehovsky:linkCoreLib

Conversation

@MichalStrehovsky

Copy link
Copy Markdown
Member

Some of these are handled as linker intrinsics, so they'll actually keep less than what the annotation declares. The annotation mostly serves to suppress warnings when linker analyzes the body of the method itself.

@ghost

ghost commented May 15, 2020

Copy link
Copy Markdown

Tagging subscribers to this area: @ViktorHofer
Notify danmosemsft if you want to be subscribed.

Comment thread src/libraries/System.Private.CoreLib/src/System/Reflection/TypeDelegator.cs Outdated
@MichalStrehovsky

Copy link
Copy Markdown
Member Author

Cc @vitek-karas @eerhardt

Comment thread src/libraries/System.Private.CoreLib/src/System/Activator.cs Outdated
Comment thread src/libraries/System.Private.CoreLib/src/System/Activator.RuntimeType.cs Outdated
Some of these are handled as linker intrinsics, so they'll actually keep less than what the annotation declares. The annotation mostly serves to suppress warnings when linker analyzes the body of the method itself.
@MichalStrehovsky

Copy link
Copy Markdown
Member Author
    profiler\unittest\getappdomainstaticaddress\getappdomainstaticaddress.cmd [FAIL]
      
      Assert failure(PID 5408 [0x00001520], Thread: 1720 [0x06b8]): The 'LastThrownObject' should not be, but is, NULL.
      The runtime may have lost track of the type of an exception in flight.
      Please get a good stack trace, find the caller of Validate, and file a bug against the owner.
      
      To suppress this assert 'set COMPlus_SuppressLostExceptionTypeAssert=1'
      
      CORECLR! CLRLastThrownObjectException::Validate + 0x1B2 (0x00007ffd`1230fcb2)
      CORECLR! `ETW::GCLog::ForceGCForDiagnostics'::`1'::catch$14 + 0xA1 (0x00007ffd`12c06e97)
      CORECLR! CallSettingFrame_LookupContinuationIndex + 0x20 (0x00007ffd`12aefcc0)
      CORECLR! _FrameHandler4::CxxCallCatchBlock + 0x1DE (0x00007ffd`12aedbfe)
      NTDLL! RtlCaptureContext + 0x3C3 (0x00007ffd`44939b23)
      CORECLR! ETW::GCLog::ForceGCForDiagnostics + 0x283 (0x00007ffd`1232aa9f)
      CORECLR! ProfToEEInterfaceImpl::ForceGC + 0x2F2 (0x00007ffd`126f60d2)
      PROFILER! <lambda_a711db0726cd25ae1a2ebca18937f4db>::operator() + 0xA6 (0x00007ffd`113eeeea)
      PROFILER! std::_Invoker_functor::_Call<<lambda_a711db0726cd25ae1a2ebca18937f4db> > + 0x11 (0x00007ffd`113ed881)
      PROFILER! std::invoke<<lambda_a711db0726cd25ae1a2ebca18937f4db> > + 0x11 (0x00007ffd`113ee015)
          File: F:\workspace\_work\1\s\src\coreclr\src\vm\clrex.cpp Line: 2474
          Image: C:\h\w\B593098A\p\CoreRun.exe

I would say this is unrelated.

@janvorli

Copy link
Copy Markdown
Member

There is already an issue for this test failure, although the failure mode differs:
#37117
I've noticed this test failing in one of the regularly scheduled tests on Saturday already.

Comment thread src/coreclr/src/System.Private.CoreLib/src/System/Reflection/Emit/ILGenerator.cs Outdated
MichalStrehovsky added a commit to MichalStrehovsky/runtime that referenced this pull request Jun 2, 2020
API review was done over email.

Approved by @stephentoub, Immo's opinion here: dotnet#36532 (comment). There were no objections.

@eerhardt eerhardt left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:shipit:

@eerhardt

eerhardt commented Jun 4, 2020

Copy link
Copy Markdown
Member

release mono_interpreter Linux arm64 Debug failure is #37430

eerhardt
eerhardt approved these changes Jun 4, 2020
@MichalStrehovsky MichalStrehovsky merged commit 29c4895 into dotnet:master Jun 9, 2020
@MichalStrehovsky MichalStrehovsky deleted the linkCoreLib branch June 9, 2020 09:39
@ghost ghost locked as resolved and limited conversation to collaborators Dec 9, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants