Skip to content
This repository has been archived by the owner on Jan 23, 2023. It is now read-only.

Commit

Permalink
Add manual roots for ILLink
Browse files Browse the repository at this point in the history
These represent dynamic dependencies that are not caught by ILLink.

See individual files for details on the dependencies.
  • Loading branch information
ericstj committed Apr 3, 2017
1 parent c42fd56 commit 2277db9
Show file tree
Hide file tree
Showing 8 changed files with 67 additions and 0 deletions.
13 changes: 13 additions & 0 deletions src/System.Diagnostics.DiagnosticSource/src/ILLinkTrim.xml
@@ -0,0 +1,13 @@
<linker>
<assembly fullname="System.Diagnostics.DiagnosticSource">
<type fullname="System.Diagnostics.DiagnosticSourceEventSource">
<!-- DiagnosticSourceEventSource calls these methods through reflection based on strings passed from user code -->
<method name="Activity1Start" />
<method name="Activity1Stop" />
<method name="Activity2Start" />
<method name="Activity2Stop" />
<method name="RecursiveActivity1Start" />
<method name="RecursiveActivity1Stop" />
</type>
</assembly>
</linker>
8 changes: 8 additions & 0 deletions src/System.Linq.Expressions/src/ILLinkTrim.xml
@@ -0,0 +1,8 @@
<linker>
<assembly fullname="System.Linq.Expressions">
<type fullname="System.Linq.Expressions.Interpreter.LightLambda">
<!-- required by debugger -->
<method name="get_DebugView" />
</type>
</assembly>
</linker>
8 changes: 8 additions & 0 deletions src/System.Linq/src/ILLinkTrim.xml
@@ -0,0 +1,8 @@
<linker>
<assembly fullname="System.Linq">
<!-- required by debugger, see comment in System/Linq/DebugView.cs -->
<type fullname="System.Linq.SystemCore_EnumerableDebugView" />
<type fullname="System.Linq.SystemCore_EnumerableDebugView`1" />
<type fullname="System.Linq.SystemCore_EnumerableDebugViewEmptyException" />
</assembly>
</linker>
6 changes: 6 additions & 0 deletions src/System.Net.Http/src/ILLinkTrim.xml
@@ -0,0 +1,6 @@
<linker>
<assembly fullname="System.Net.Http">
<!-- Anonymous types are used with DiagnosticSource logging and subscribers reflect over those, calling their public getters. -->
<type fullname="*f__AnonymousType*" />
</assembly>
</linker>
6 changes: 6 additions & 0 deletions src/System.Net.NetworkInformation/src/ILLinkTrim.xml
@@ -0,0 +1,6 @@
<linker>
<assembly fullname="System.Net.NetworkInformation">
<!-- NetEventSource isn't used by this assembly but tests check for its presence -->
<type fullname="System.Net.NetEventSource" />
</assembly>
</linker>
6 changes: 6 additions & 0 deletions src/System.Net.Ping/src/ILLinkTrim.xml
@@ -0,0 +1,6 @@
<linker>
<assembly fullname="System.Net.Ping">
<!-- NetEventSource isn't used by this assembly but tests check for its presence -->
<type fullname="System.Net.NetEventSource" />
</assembly>
</linker>
12 changes: 12 additions & 0 deletions src/System.Net.Security/src/ILLinkTrim.xml
@@ -0,0 +1,12 @@
<linker>
<assembly fullname="System.Net.Security">
<type fullname="System.Net.NTAuthentication">
<!-- Called through reflection by System.Net.Mail tests -->
<method name="GetOutgoingBlob" />
<method name="MakeSignature" />
<method name="VerifySignature" />
</type>
<!-- required by tests -->
<type fullname="System.Net.NetEventSource" />
</assembly>
</linker>
@@ -0,0 +1,8 @@
<linker>
<assembly fullname="System.Private.DataContractSerialization">
<type fullname="System.Runtime.Serialization.DataContractSerializer">
<!-- called through reflection by tests -->
<method name="set_Option" />
</type>
</assembly>
</linker>

0 comments on commit 2277db9

Please sign in to comment.