platform/upstream/dotnet/runtime.git
3 years agoImprove crossgen2 help text (#55977)
David Wrighton [Tue, 20 Jul 2021 02:29:13 +0000 (19:29 -0700)]
Improve crossgen2 help text (#55977)

- Add handling of "-?" and no command line arguments.
- Print out default values for --targetos and --targetarch
- Describe behavior of response files
- Describe the behavior of the -- switch
- Describe in much greater detail the valid values for the --instruction-set switch

Fix #47486

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agoDisable ConnectTimeout_PlaintextStreamFilterTimesOut_Throws (#55932)
Karel Zikmund [Tue, 20 Jul 2021 01:44:54 +0000 (03:44 +0200)]
Disable ConnectTimeout_PlaintextStreamFilterTimesOut_Throws (#55932)

Disable test ConnectTimeout_PlaintextStreamFilterTimesOut_Throws

Disabled test tracked by #55931

3 years agoRevert UnicodeDebug.cs to not depend on the Debug.Assert interpolated string handler...
Stephen Toub [Tue, 20 Jul 2021 01:18:52 +0000 (21:18 -0400)]
Revert UnicodeDebug.cs to not depend on the Debug.Assert interpolated string handler (#55954)

Turns out we use this file outside of corelib, in projects that build for pre-.NET 6, and the change was causing lots of string formatting for asserts that pass.

3 years agoLink with EmccCompileOptimizationFlag==-Oz by default in release (#55939)
Larry Ewing [Tue, 20 Jul 2021 00:53:25 +0000 (19:53 -0500)]
Link with EmccCompileOptimizationFlag==-Oz by default in release (#55939)

3 years ago[mono] Split iOS/tvOS/MacCatalyst runtime packs into their own workload (#55851)
Steve Pfister [Mon, 19 Jul 2021 20:15:37 +0000 (16:15 -0400)]
[mono] Split iOS/tvOS/MacCatalyst runtime packs into their own workload (#55851)

The ios/tvos/maccatalyst runtime packs need to be installable on Windows and as a result each need their own workload.

The microsoft-net-runtime-ios/tv/maccatalyst workloads will still function the same by extending the new runtimes-* workloads.

3 years agoAdd an assert concerning branch to BBJ_CALLFINALLY blocks (#55858)
Bruce Forstall [Mon, 19 Jul 2021 20:03:22 +0000 (13:03 -0700)]
Add an assert concerning branch to BBJ_CALLFINALLY blocks (#55858)

In the FEATURE_EH_CALLFINALLY_THUNKS case, BBJ_CALLFINALLY blocks live
in the EH region enclosing the `try` block that needs to call the finally.
However, we need all flow to the BBJ_CALLFINALLY to come from that try block;
we don't want flow optimizations to otherwise branch directly to this
BBJ_CALLFINALLY block. Add an assert to verify this is the case. The assert
also covers the non-FEATURE_EH_CALLFINALLY_THUNKS case.

3 years agoSwitch handwritten test serializer contexts to use source generator (#55844)
Layomi Akinrinade [Mon, 19 Jul 2021 17:22:33 +0000 (10:22 -0700)]
Switch handwritten test serializer contexts to use source generator (#55844)

3 years agoFixes building Host tests from VS (#55917)
Vitek Karas [Mon, 19 Jul 2021 16:54:03 +0000 (18:54 +0200)]
Fixes building Host tests from VS (#55917)

When building the Host tests projects from VS the CrossGen2 related properties are not set (probably because the build type is not set to Core - which doesn't matter for the tests).

Changed the includes to be conditional.

3 years agoJIT: refactor how opaque VNs are represented (#55853)
Andy Ayers [Mon, 19 Jul 2021 15:39:28 +0000 (08:39 -0700)]
JIT: refactor how opaque VNs are represented (#55853)

Use a unary function to capture opaque VN loop dependence, rather than factoring
that out as part of the owning chunk. As a result the VN chunk data no longer
has a per-loop component (no dependence on MAX_LOOP_NUM).

This gives us the flexibility to address #54118 by doing something similar for
`MapUpdate` VNs.

3 years agodisabled test (#55912)
Marie Píchová [Mon, 19 Jul 2021 15:14:34 +0000 (15:14 +0000)]
disabled test (#55912)

3 years agoWait for the request line before cancelling the request in EventSource_UnsuccessfulRe...
Miha Zupan [Mon, 19 Jul 2021 14:41:13 +0000 (07:41 -0700)]
Wait for the request line before cancelling the request in EventSource_UnsuccessfulRequest_LogsStartFailedStop (#55913)

3 years agoDelete IDE dispose analyzer rules (#55920)
xtqqczze [Mon, 19 Jul 2021 14:39:25 +0000 (15:39 +0100)]
Delete IDE dispose analyzer rules (#55920)

The IDE dispose analyzer rules have been deleted from Roslyn:

https://github.com/dotnet/roslyn/commit/eeba499ecf839ec35bca25062d69d2fc5c4885b9

3 years agoComments from code review (#55819)
Marie Píchová [Mon, 19 Jul 2021 14:38:30 +0000 (14:38 +0000)]
Comments from code review (#55819)

* Comments

* Update src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs

* Update src/libraries/System.Net.Quic/src/System/Net/Quic/Implementations/MsQuic/MsQuicStream.cs

Co-authored-by: Natalia Kondratyeva <knatalia@microsoft.com>
Co-authored-by: Natalia Kondratyeva <knatalia@microsoft.com>
3 years agoFix WriteGatherAtOffset IOVector count (#55909)
Stephen Toub [Mon, 19 Jul 2021 14:37:27 +0000 (10:37 -0400)]
Fix WriteGatherAtOffset IOVector count (#55909)

3 years agoAdd --debuginfo to superpmi (#55808)
Jakob Botsch Nielsen [Mon, 19 Jul 2021 08:01:44 +0000 (10:01 +0200)]
Add --debuginfo to superpmi (#55808)

3 years agoFix mono build on illumos (#55897)
Adeel Mujahid [Mon, 19 Jul 2021 07:49:06 +0000 (10:49 +0300)]
Fix mono build on illumos (#55897)

3 years agoDisable some library tests due to failures/crash (#55826)
Maxim Lipnin [Mon, 19 Jul 2021 06:09:35 +0000 (09:09 +0300)]
Disable some library tests due to failures/crash (#55826)

3 years ago[wasm] Use compile rsp instead of link, for compiling native files (#55848)
Ankit Jain [Mon, 19 Jul 2021 05:55:28 +0000 (01:55 -0400)]
[wasm] Use compile rsp instead of link, for compiling native files (#55848)

.. and fix logging that broke recently.

`tasks/Common/Utils.cs`:

TaskLoggingHelper Utils.Logger is a static field, which must be set by
task else any methods in Utils, eg. RunProcess, silently fail to log
any messages. Also, this would be a problem when building multiple
projects in parallel, since the logger is a task-specific one.

Instead, we pass logger as an arg to all the methods.

3 years ago[wasm] Add support for using custom native libraries (#55797)
Ankit Jain [Mon, 19 Jul 2021 05:02:01 +0000 (01:02 -0400)]
[wasm] Add support for using custom native libraries (#55797)

3 years ago[wasm] Run browser tests on helix/windows (#52699)
Radek Doulik [Mon, 19 Jul 2021 03:32:33 +0000 (05:32 +0200)]
[wasm] Run browser tests on helix/windows (#52699)

* [wasm] Run browser tests on helix/windows

* Build just wasm/browsertests on helix/windows

* Use $(ChromiumRevision) in windows links

* Fix conditions

* Set PATH differently

* Use backslash in PATH on windows

* Try different version of chromium

* Pass scenario and browser host to build

And set browser path on windows to be able to start chrome
from xharness

* Try to get more info from the helix workitems

* Fix dir separator, add broser path

* Create WasmBuildSupportDir

* Revert "Try to get more info from the helix workitems"

This reverts commit 8807434a33a09a27f2c21cb321b743f155955cb2.

* Put the dir cmds back, fix mkdir call

* More debug info

* Bump xharness

* Bump xharness again

With darc this time

* StressLogAnalyzer didn't print the number of messages correctly if it exceeded the int range (2 billion). (#54832)

Fix is to just use 64 bit ints instead.

* Found a race condition where the LOH flag on a segment is set too late. This gives another thread the chance to allocate in a fresh LOH region that doesn't have the LOH flag set just yet and trip over an assert in Object::ValidateInner. (#54839)

The fix is simply to set the flag in get_new_region before the region is put on the list for the LOH generation.

* Try to show the chrome logs

* Use different path for chrome logs

* Use newer image with font for chrome

The chrome was crashing, because it didn't find any sans-serif font.

* Increase timeouts

* Disable tests which timeout

* Remove debug calls

* Put back normal scenario

* Do not set scenario in build args

* Add browser sample exclusion

* Restore the platform matrix

* Remove the wasm build test changes

That will be handled in https://github.com/dotnet/runtime/pull/54451

* Remove duplicate exclusion

* Suggested property name change

* Fix last merge

* Simplify condition

We don't pass Scenario anymore

* Include chrome and chromedriver in the payload

Co-authored-by: Peter Sollich <petersol@microsoft.com>
3 years agoDisable array support for the COM variant wrapper classes when built-in COM is disabl...
Jeremy Koritzinsky [Sun, 18 Jul 2021 23:46:19 +0000 (18:46 -0500)]
Disable array support for the COM variant wrapper classes when built-in COM is disabled. (#55756)

* Disable array support for the COM variant wrapper classes when built-in COM is disabled.

Fixes #55600

* Fix config call.

* Fix one more location of wrapper class usage.

* Fix method name.

* Add trimming test.

* Fix AV in IsArrayOfWrappers

* Fix trimming test

* Apply suggestions from code review

Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
* Set Trim=true

Co-authored-by: Elinor Fung <elfung@microsoft.com>
Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
3 years agoSystem.Text.Json: stackalloc constants + misc PR feedback (#55350)
Mikel Blanchard [Sun, 18 Jul 2021 19:04:17 +0000 (12:04 -0700)]
System.Text.Json: stackalloc constants + misc PR feedback (#55350)

* Follow-up feedback from #54186.

* Code review.

* Code review.

* Dedicated constant for the max number of chars permitted to be allocated on the stack.

3 years agoFix WaitForConnectionAsync when NamedPipeServerStream is disposed (#52825)
Emmanuel André [Sun, 18 Jul 2021 17:30:16 +0000 (19:30 +0200)]
Fix WaitForConnectionAsync when NamedPipeServerStream is disposed (#52825)

* Fix WaitForConnectionAsync when NamedPipeServerStream is disposed

* Align Unix implementation on broken pipe IO exception as on Windows

* Add missing methods to test against ObjectDisposedException

* Apply suggestions from code review

Co-authored-by: Stephen Toub <stoub@microsoft.com>
* Rebase and fix suggestions

* Cancel Accept on dispose

* Improve test

* Apply suggestions from code review

Co-authored-by: Stephen Toub <stoub@microsoft.com>
3 years agoBugfix: System.Xml.Serialization: Compiler.GetTempAssemblyName is not deterministic...
Tal Aloni [Sun, 18 Jul 2021 14:18:25 +0000 (17:18 +0300)]
Bugfix: System.Xml.Serialization: Compiler.GetTempAssemblyName is not deterministic under .NET Core (#46499)

* Bugfix: System.Xml.Serialization: Compiler.GetTempAssemblyName is not persistent under .NET Core

The implementation of String.GetHashCode() was persistent by default in .NET Framework. allowing to predictably name an XmlSerializers.{HashCode}.dll containing the pre-generated serializers.
In .NET Core / .NET 5, String.GetHashCode() is no longer persistent, so the value of ns.GetHashCode() will change during each run, preventing it from picking up the XmlSerializers dll correctly.

* Remove trailing whitespace

* Use truncated SHA512

* Fixed compilation

* Dispose SHA512 instance

* Fixed compilation

* Update src/libraries/System.Private.Xml/src/System/Xml/Serialization/Compiler.cs

Co-authored-by: Stephen Toub <stoub@microsoft.com>
* Update src/libraries/System.Private.Xml/src/System/Xml/Serialization/Compiler.cs

Co-authored-by: Stephen Toub <stoub@microsoft.com>
* Update Compiler.cs

Co-authored-by: Stephen Toub <stoub@microsoft.com>
3 years agoEliminate backtracking in the interpreter for patterns with .* (#51508)
Prashanth Govindarajan [Sun, 18 Jul 2021 13:06:23 +0000 (06:06 -0700)]
Eliminate backtracking in the interpreter for patterns with .*  (#51508)

* First cut of look up table for speeding up Go()

* More efficient .* in RegexInterpreter

* sq

* Get more debug info

* Remove assert and add unit test

* Potential unit test

* temp

* Fix a bug

* sq

* Add extra protection to the backtracking optimization

* Add unit test

* Revert

* RegexCompiler changes

* sq

* Remove debug unit tests

* Add a length to the AsSpan call

* Address RegexCompiler comments and add unit tests

3 years agoset CLOEXEC on diagnostic server FDs (#55850)
John Salem [Sun, 18 Jul 2021 12:45:44 +0000 (05:45 -0700)]
set CLOEXEC on diagnostic server FDs (#55850)

* set CLOEXEC on diagnostic server FDs

* Add assert and comment

* fix compiler warning

* simplify asserts to appease all the different builds

3 years agoReduce the nullability bypasses in CryptoPool.Return (#55782)
Jeremy Barton [Sun, 18 Jul 2021 11:05:25 +0000 (04:05 -0700)]
Reduce the nullability bypasses in CryptoPool.Return (#55782)

* Reduce the nullability bypasses in CryptoPool.Return

This is a walk over src/libraries/.../*.cs to find any calls to
CryptoPool.Return which needed a "!" because of nullability
flow.

A couple of the bypasses were identifying legitimate issues,
and were resolved by moving the Rent to the last thing before
the try.

A couple were because of the use of ArraySegment which
can't structurally promise the array is non-null. But those
were usually preceded by a call to ZeroMemory, and there
is a CryptoPool.Return(ArraySegment) which does that
already, so those "!"s were removed by changing to that
overload.

* Apply feedback

Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
3 years ago[main] Update dependencies from dnceng/internal/dotnet-optimization dotnet/arcade...
dotnet-maestro[bot] [Sun, 18 Jul 2021 11:03:16 +0000 (07:03 -0400)]
[main] Update dependencies from dnceng/internal/dotnet-optimization dotnet/arcade dotnet/icu dotnet/roslyn-analyzers (#55812)

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20210715.5

optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.21364.4 -> To Version 1.0.0-prerelease.21365.5

* Update dependencies from https://github.com/dotnet/arcade build 20210715.11

Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.GenFacades , Microsoft.DotNet.GenAPI , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SharedFramework.Sdk
 From Version 6.0.0-beta.21364.3 -> To Version 6.0.0-beta.21365.11

* Update dependencies from https://github.com/dotnet/icu build 20210716.2

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-preview.7.21363.1 -> To Version 6.0.0-rc.1.21366.2

* Update dependencies from https://github.com/dotnet/arcade build 20210716.1

Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.GenFacades , Microsoft.DotNet.GenAPI , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SharedFramework.Sdk
 From Version 6.0.0-beta.21364.3 -> To Version 6.0.0-beta.21366.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20210716.2

Microsoft.CodeAnalysis.NetAnalyzers
 From Version 6.0.0-rc1.21362.2 -> To Version 6.0.0-rc1.21366.2

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
3 years agoFix strings in ApplicationId.ToString (#55879)
Stephen Toub [Sun, 18 Jul 2021 11:01:36 +0000 (07:01 -0400)]
Fix strings in ApplicationId.ToString (#55879)

In rolling out usage of StringBuilder.Append's support for interpolated strings, I mistook this occurrence as a StringBuilder rather than a ValueStringBuidler.  This reverts the changes to its ToString, but also switches to use EncodeToUtf16 rather than a custom loop.

3 years agoUpdate Roslyn to 4.0.0-3.21367.2 (#55878)
Stephen Toub [Sun, 18 Jul 2021 10:39:34 +0000 (06:39 -0400)]
Update Roslyn to 4.0.0-3.21367.2 (#55878)

3 years agoAdd VersionCheck (#55763)
naminodarie [Sun, 18 Jul 2021 10:31:10 +0000 (19:31 +0900)]
Add VersionCheck (#55763)

3 years agoenable two quic tests (#55880)
Tomas Weinfurt [Sun, 18 Jul 2021 10:12:40 +0000 (03:12 -0700)]
enable two quic tests (#55880)

3 years agoConsider CALLFINALLY block as pred of finally block during assertion props (#55674)
Kunal Pathak [Sun, 18 Jul 2021 06:42:24 +0000 (23:42 -0700)]
Consider CALLFINALLY block as pred of finally block during assertion props (#55674)

* Consider CALLFINALLY block as one of the pred of handler block during assertion prop

* Add test case

* Do not perform jump threading for first block of try-region

* fix bbNum

* revert dataflow changes

3 years agoRefactor runtime-specific logic out of CustomAttributeData (#55870)
Jan Kotas [Sat, 17 Jul 2021 22:32:54 +0000 (15:32 -0700)]
Refactor runtime-specific logic out of CustomAttributeData (#55870)

CustomAttributeData is meant to be abstract base class of reflection object model. Move the runtime-specific part
into a separate RuntimeCustomAttributeData type.

3 years agoFix System.Reflection.Metadata.MetadataUpdater.IsSupported (#55874)
Mike McLaughlin [Sat, 17 Jul 2021 19:15:04 +0000 (12:15 -0700)]
Fix System.Reflection.Metadata.MetadataUpdater.IsSupported (#55874)

Issue: https://github.com/dotnet/aspnetcore/issues/34440

3 years agoUse RetryHelper to improve reliability of revocation tests (#55873)
Kevin Jones [Sat, 17 Jul 2021 19:14:36 +0000 (15:14 -0400)]
Use RetryHelper to improve reliability of revocation tests (#55873)

3 years agoRemove old snow leopard hack (#55825)
Alfonso Gregory [Sat, 17 Jul 2021 04:39:31 +0000 (00:39 -0400)]
Remove old snow leopard hack (#55825)

* Remove old hack

It’s been a long time since snow leopard and the issue should be fixed by now

* Remove declaration

* Remove unnecessary include

3 years agoDon't probe mono aot-cache directory for AOT images (#55832)
Aleksey Kliger (λgeek) [Sat, 17 Jul 2021 04:37:59 +0000 (00:37 -0400)]
Don't probe mono aot-cache directory for AOT images (#55832)

We don't have a global AOT cache directory on any platform

Fixes https://github.com/dotnet/runtime/issues/33080

3 years agoFix debugger thread context validation after recent change (#55839)
Koundinya Veluri [Sat, 17 Jul 2021 01:37:57 +0000 (18:37 -0700)]
Fix debugger thread context validation after recent change (#55839)

Followup fix to https://github.com/dotnet/runtime/pull/55185

3 years agoReimplement dynamic member access for collection converters correctly (#55846)
Layomi Akinrinade [Fri, 16 Jul 2021 23:14:40 +0000 (16:14 -0700)]
Reimplement dynamic member access for collection converters correctly (#55846)

3 years agoFix nested calls to Assembly Load Start tracing (#55700)
David Wrighton [Fri, 16 Jul 2021 23:04:41 +0000 (16:04 -0700)]
Fix nested calls to Assembly Load Start tracing (#55700)

The name_with_pid test ends up testing the behavior of event tracing in the presence of composite images.

In the presence of a composite image, it might happen attempting to send trace data may force an attempt to load System.Private.CoreLib thus causing an stackoverflow as attempting to report the load of System.Private.CoreLib will trigger a load of System.Private.CoreLib, etc. This fix steps around the issue by using a thread local variable to skip subsequent attempts to report the load of System.Private.CoreLib.

Fixes #55786

3 years agoFix SslServerAuthenticationOptions.ApplicationProtocols empty list error #55447 ...
Chris Ross [Fri, 16 Jul 2021 21:36:53 +0000 (14:36 -0700)]
Fix SslServerAuthenticationOptions.ApplicationProtocols empty list error #55447 (#55772)

3 years agoDisable S.S.C.OpenSSL tests on the platforms that are PNSE.
Jeremy Barton [Fri, 16 Jul 2021 21:34:07 +0000 (14:34 -0700)]
Disable S.S.C.OpenSSL tests on the platforms that are PNSE.

3 years agoRe-enable some netfx tests (#55837)
Jeremy Barton [Fri, 16 Jul 2021 20:32:36 +0000 (13:32 -0700)]
Re-enable some netfx tests (#55837)

The patch states on the test machines should be in sync now...

3 years agoAccess modifier cleanup in Task (#55842)
WizardBrony [Fri, 16 Jul 2021 20:32:23 +0000 (16:32 -0400)]
Access modifier cleanup in Task (#55842)

* Update Task.cs

* Update TaskFactory.cs

3 years ago[mono] Allow overriding GetCustomAttributesData routines (#55726)
Ulrich Weigand [Fri, 16 Jul 2021 19:58:19 +0000 (21:58 +0200)]
[mono] Allow overriding GetCustomAttributesData routines (#55726)

* Merge common bits of Mono and CoreCLR CustomAttributeData implementation

* Have CustomAttributeData.GetCustomAttributes call target.GetCustomAttributesData
  to allow derived classes to override the latter (like in CoreCLR)

* Use Constructor, ConstructorArguments, and NamedArguments in internal
  routines to allow them being overridden (like with CoreCLR).

3 years agoupdate branding to rc1 (#55775)
Anirudh Agnihotry [Fri, 16 Jul 2021 17:35:38 +0000 (10:35 -0700)]
update branding to rc1 (#55775)

3 years agoFix UMEntryThunkCache::GetUMEntryThunk (#55834)
Jan Vorlicek [Fri, 16 Jul 2021 17:35:06 +0000 (19:35 +0200)]
Fix UMEntryThunkCache::GetUMEntryThunk (#55834)

The function was initializing UMThunkMarshInfo allocated from Stub heap
without using the ExecutableWriterHolder. That causes a crash when a
hosting application calls coreclr_create_delegate.
This was discovered in .NET 6 Preview 6 when running a xamarin app that
uses a special host.

This code path is exercised only by coreclr_create_delegate.

3 years agoFix case of DefaultValue using enum backing type. (#55793)
Eric StJohn [Fri, 16 Jul 2021 16:55:43 +0000 (09:55 -0700)]
Fix case of DefaultValue using enum backing type. (#55793)

3 years agoFix string comparison with ordinal casing with Surrogates (#55771)
Tarek Mahmoud Sayed [Fri, 16 Jul 2021 16:26:44 +0000 (09:26 -0700)]
Fix string comparison with ordinal casing with Surrogates (#55771)

* Fix string comparison with ordinal casing with Surrogates

* Address the feedback

3 years agoFix Http2Connection.GetIdleTicks (#55820)
Alexander Nikolaev [Fri, 16 Jul 2021 15:13:03 +0000 (17:13 +0200)]
Fix Http2Connection.GetIdleTicks (#55820)

There is currently a wrong operand order in the subtraction.

Fixes #43877

3 years agoStreamline rent/return on ArrayPool (#55710)
Stephen Toub [Fri, 16 Jul 2021 14:49:42 +0000 (10:49 -0400)]
Streamline rent/return on ArrayPool (#55710)

* Streamline rent/return on ArrayPool

- Stop storing and using a _bucketArraySizes.  It's cheaper to recompute the shift on each use than it is to index into the array (with a bounds check).  Plus less memory.
- The 99% case is renting a positive length for pooled array sizes (especially now that we've bumped the limit up to a gig).  Move the checks for lengths <= 0 to after the check for whether the length is poolable.
- Move arrays into locals to enable the JIT to eliminate some bounds checks.
- Use ThrowHelpers where we already have them
- Move non-generic helpers out of generic class into Utilities
- Consolidate buffer allocation in Rent to a single line
- Reorganize TLS checks to be as early as possible
- Use FastMod instead of % in per-core stacks

* Address PR feedback

3 years agoincrease default timout on RunClientServer methods (#55798)
Tomas Weinfurt [Fri, 16 Jul 2021 14:17:58 +0000 (07:17 -0700)]
increase default timout on RunClientServer methods (#55798)

3 years agoMake Named Pipe Server Stream name fit into allowed length on Android (#55731)
Maxim Lipnin [Fri, 16 Jul 2021 13:56:18 +0000 (16:56 +0300)]
Make Named Pipe Server Stream name fit into allowed length on Android (#55731)

* Make Named Pipe Server Stream name fit into allowed length on Android

* Apply Stephen's suggestion

* Remove redundant parameter

* Take into account possible null terminator

3 years agoRemove unnecessary intrinsics in mono/mini/intrinsics.c (#55806)
Alexander Köplinger [Fri, 16 Jul 2021 13:53:05 +0000 (15:53 +0200)]
Remove unnecessary intrinsics in mono/mini/intrinsics.c (#55806)

- System.Environment.IsRunningOnWindows doesn't exist in the dotnet/runtime corelib
- Microsoft.CodeAnalysis.CompilerServer.MemoryHelper.IsMemoryAvailable was used to workaround a bug that was fixed 2 years ago with https://github.com/dotnet/roslyn/pull/38239 and should no longer be relevant

3 years agoDisable SocketsHttpHandlerTest_Http3_MsQuic.ClientSettingsReceived_Success test ...
Karel Zikmund [Fri, 16 Jul 2021 13:52:52 +0000 (15:52 +0200)]
Disable SocketsHttpHandlerTest_Http3_MsQuic.ClientSettingsReceived_Success test (#55811)

Started failing too frequently - see #55774

3 years agoUpdate dependencies from https://github.com/dotnet/emsdk build 20210715.1 (#55784)
dotnet-maestro[bot] [Fri, 16 Jul 2021 10:49:24 +0000 (10:49 +0000)]
Update dependencies from https://github.com/dotnet/emsdk build 20210715.1 (#55784)

[main] Update dependencies from dotnet/emsdk

3 years agoUse more string interpolation (#55738)
Stephen Toub [Fri, 16 Jul 2021 10:38:51 +0000 (06:38 -0400)]
Use more string interpolation (#55738)

* Use more string interpolation

I previously did a pass looking for opportunities.  Finding a few more, as well as fixing some misuse of existing methods.

* Update src/libraries/System.Diagnostics.Process/tests/ProcessStartInfoTests.cs

Co-authored-by: halgab <24685886+halgab@users.noreply.github.com>
* Apply suggestions from code review

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Co-authored-by: halgab <24685886+halgab@users.noreply.github.com>
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agoAdd a time-based decay to the linear allocation model. (#55174)
Peter Sollich [Fri, 16 Jul 2021 09:58:27 +0000 (11:58 +0200)]
Add a time-based decay to the linear allocation model. (#55174)

Real world scenario that motivated this allocated a huge amount of data once a day, leading to high gen 0 and gen 1 budgets (several GB).

After this, there was relatively little activity, causing gen 1 budget to take several hours to normalize.

The new logic discounts the previous desired allocation over a period of 5 minutes.

3 years agoAnnotate WebSockets.RegisterPrefixes with [Obsolete] (#55640)
Alexander Nikolaev [Fri, 16 Jul 2021 09:37:04 +0000 (11:37 +0200)]
Annotate WebSockets.RegisterPrefixes with [Obsolete] (#55640)

Fixes #50530

3 years agoMitigate race condition in EventSource_ConnectionPoolAtMaxConnections_LogsRequestLeft...
Alexander Nikolaev [Fri, 16 Jul 2021 09:33:49 +0000 (11:33 +0200)]
Mitigate race condition in EventSource_ConnectionPoolAtMaxConnections_LogsRequestLeftQueue test (#55729)

There is a unavoidable race condition between updating event counters and reading their values in WaitForEventCountersAsync. It waits for at least 2 sets of EventCounter event groups to ensure the last group is captured after any actual work (tests check that counters reset back to 0 if there is nothing happening).
Since it looks for `requests-started` which occurs before `http11-requests-queue-duration` event, what it may see is only the tail of the last group and the start of the second, without waiting for a fresh `http11-requests-queue-duration`. In this, the assert `Assert.Equal(0, http11requestQueueDurations[^1])` on the line 549 will see a non-zero counter value and fail.

This PR changes the condition to `< 3`  to guarantee there is at least one full group of events in the window.

Co-authored by @MihaZupan

Fixes #46073

3 years agoSkip System.IO.IsolatedStorage.Tests.HelperTests.GetDataDirectory(scope: Machine...
Maxim Lipnin [Fri, 16 Jul 2021 08:47:08 +0000 (11:47 +0300)]
Skip System.IO.IsolatedStorage.Tests.HelperTests.GetDataDirectory(scope: Machine) on Android (#55719)

3 years agoDelete dead WinRT code in Activator (#55721)
Michal Strehovský [Fri, 16 Jul 2021 07:51:25 +0000 (09:51 +0200)]
Delete dead WinRT code in Activator (#55721)

3 years agoFix Unicode BiDi Category (#55790)
Tarek Mahmoud Sayed [Fri, 16 Jul 2021 04:01:18 +0000 (21:01 -0700)]
Fix Unicode BiDi Category (#55790)

3 years agoRemove sourceFullPath from Unix FileSystem.MoveDirectory exception (#55658)
Steve Berdy [Fri, 16 Jul 2021 02:32:43 +0000 (22:32 -0400)]
Remove sourceFullPath from Unix FileSystem.MoveDirectory exception (#55658)

* Update Path.Windows.cs

* Change helper method to internal

Switched method from a private protection level to an internal protection level. Also removed trailing whitespace.

* Removed sourceFullPath from Unix FileSystem.MoveDirectory thrown exception

* Undo commit from main fork branch

* Revert FileSystem.Windows.cs changes

3 years agoAdd a System.Runtime.Experimental package so users can still use the generic math...
Tanner Gooding [Fri, 16 Jul 2021 01:23:31 +0000 (18:23 -0700)]
Add a System.Runtime.Experimental package so users can still use the generic math preview (#55678)

* Add a System.Runtime.Experimental package so users can still use the generic math preview

This reverts commit f6eb259db626d563c15ba340feb6f440d1e1c8ee.

* Simplify S.R.Experimental so it only produces a ref and its build version is 100 higher

* Ensure a nuget package is being produced and resolve PR feedback

* Update src/libraries/System.Runtime.Experimental/Directory.Build.props

* Add a reference to System.Runtime.Experimental so mono can build

* Disable System.Runtime.Experimental.Tests on WASM AOT

3 years ago[main] Update dependencies from 8 repositories (#55636)
dotnet-maestro[bot] [Thu, 15 Jul 2021 22:27:46 +0000 (15:27 -0700)]
[main] Update dependencies from 8 repositories (#55636)

* Update dependencies from https://github.com/dotnet/arcade build 20210713.2

Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.GenFacades , Microsoft.DotNet.GenAPI , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SharedFramework.Sdk
 From Version 6.0.0-beta.21359.3 -> To Version 6.0.0-beta.21363.2

* Update dependencies from https://github.com/dotnet/icu build 20210713.1

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-preview.7.21362.1 -> To Version 6.0.0-preview.7.21363.1

* Update dependencies from https://github.com/dotnet/xharness build 20210713.1

Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Xunit
 From Version 1.0.0-prerelease.21357.4 -> To Version 1.0.0-prerelease.21363.1

* Update dependencies from https://github.com/mono/linker build 20210713.1

Microsoft.NET.ILLink.Tasks
 From Version 6.0.100-preview.6.21362.3 -> To Version 6.0.100-preview.6.21363.1

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20210712.2

Microsoft.CodeAnalysis.NetAnalyzers
 From Version 6.0.0-rc1.21356.1 -> To Version 6.0.0-rc1.21362.2

* Update dependencies from https://github.com/dotnet/emsdk build 20210714.1

Microsoft.NET.Workload.Emscripten.Manifest-6.0.100
 From Version 6.0.0-preview.7.21363.1 -> To Version 6.0.0-preview.7.21364.1

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20210714.4

optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.21362.2 -> To Version 1.0.0-prerelease.21364.4

* Update dependencies from https://github.com/dotnet/arcade build 20210714.3

Microsoft.DotNet.XUnitExtensions , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.ApiCompat , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.GenFacades , Microsoft.DotNet.GenAPI , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.SharedFramework.Sdk
 From Version 6.0.0-beta.21359.3 -> To Version 6.0.0-beta.21364.3

* Update dependencies from https://github.com/dotnet/xharness build 20210714.1

Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Xunit
 From Version 1.0.0-prerelease.21357.4 -> To Version 1.0.0-prerelease.21364.1

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20210714.1

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 1.0.1-alpha.0.21362.1 -> To Version 1.0.1-alpha.0.21364.1

* Revert linker change

* Roll back the version

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Andy Gocke <angocke@microsoft.com>
Co-authored-by: Larry Ewing <lewing@microsoft.com>
3 years agoUse pbeWithSHAAnd3-KeyTripleDES-CBC for SignedXml certificate.
Kevin Jones [Thu, 15 Jul 2021 22:09:02 +0000 (18:09 -0400)]
Use pbeWithSHAAnd3-KeyTripleDES-CBC for SignedXml certificate.

This changes the PKCS12 from being using RC2 to 3DES so that the test
passes on Android, which does not support RC2.

3 years ago[wasm] Support mono runtime components (#55680)
Radek Doulik [Thu, 15 Jul 2021 21:40:57 +0000 (23:40 +0200)]
[wasm] Support mono runtime components (#55680)

* [wasm] Support mono runtime components

* Do not use diagnostics_tracing component

* Allow custom @(_MonoComponent)

* Update src/mono/wasm/build/WasmApp.Native.targets

* Select components only with native workload

* Fixing CI when linking with stubs

* Adding what @radical asked for.

* Update sendtohelixhelp.proj

Fix helix work item prefix

Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Thays <thaystg@gmail.com>
Co-authored-by: Ankit Jain <radical@gmail.com>
3 years agoStringSegment behavior (#55501)
hrrrrustic [Thu, 15 Jul 2021 20:54:13 +0000 (23:54 +0300)]
StringSegment behavior (#55501)

* Add tests for old issue

* Add test for new issue

* fix behavior for old issue

* fix behavior for new issue

* Update IndexOf checks for consistency

Co-authored-by: Günther Foidl <gue@korporal.at>
Co-authored-by: Günther Foidl <gue@korporal.at>
3 years ago[wasm] Misc follow up improvements for workloads testing (#55647)
Ankit Jain [Thu, 15 Jul 2021 20:49:16 +0000 (16:49 -0400)]
[wasm] Misc follow up improvements for workloads testing (#55647)

* [wasm] Move UseMonoRuntime=true to WasmApp.props

* Move workloads installation for testing bits to

.. `src/libraries/workloads-testing.targets`.

* [wasm] EmccCompile: don't log `stderr` messages as warnings

emcc emits some (debug?) messages on stderr too, which are not always
errors. Emitting them as warning can be break the build too, when
running with warningsAsErrors .

* [wasm] Fix helix work item prefix

* improve readability of messages from parallel EmccCompile

* Improve emscripten version mismatch message, and convert to a warning

* Fix typo, so WBT runs can be differentiated correctly

3 years ago[class] Add GC Unsafe transitions to a few more external only functions (#55748)
Aleksey Kliger (λgeek) [Thu, 15 Jul 2021 20:44:40 +0000 (16:44 -0400)]
[class] Add GC Unsafe transitions to a few more external only functions (#55748)

3 years agoAdd option to MonoAOTCompiler msbuild task to generate .so files (#55753)
Alexander Köplinger [Thu, 15 Jul 2021 20:40:54 +0000 (22:40 +0200)]
Add option to MonoAOTCompiler msbuild task to generate .so files (#55753)

3 years agoXmlSerializer dont skip date time offset (#55101)
Steve Molloy [Thu, 15 Jul 2021 20:37:37 +0000 (13:37 -0700)]
XmlSerializer dont skip date time offset (#55101)

* Add DateTimeOffset as a primitive for XmlSerializer.

* Fix DefaultValueAttribute handling for DTO.

* Add tests for DateTimeAttribute and XmlSerializer.

* Missed a 'KnownType' spot.

* Update SGen tests to use current dotnet.exe from build.

* Unbreak runtimeconfig creation for testing.

* Debugging failure to resolve CoreCLR path.

* Test fixup.

* More test cleanup.

* Temporarily disable generator tests.

* Use InitObj instead of constructors for DateTimeOffset and TimeSpan.

3 years agoLocalized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 124001...
dotnet bot [Thu, 15 Jul 2021 20:07:34 +0000 (13:07 -0700)]
Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 1240010 (#55743)

* Localized file check-in by OneLocBuild Task

* Remove asserts against localized text from Logging generator tests

Co-authored-by: Eric StJohn <ericstj@microsoft.com>
3 years agoUse local assertion prop to omit casts on returns (#55632)
SingleAccretion [Thu, 15 Jul 2021 18:55:09 +0000 (21:55 +0300)]
Use local assertion prop to omit casts on returns (#55632)

When inserting normalizing casts for returns in pre-order
morph, "fgMorphCast" was used, which did not account for
the fact that local assertion propagation could tell us
that the cast is in fact unnecessary. Fix this by calling
"fgMorphTree" instead.

Also some miscellaneous code cleanup.

3 years agoRemove support for deprecated obs-fold in header values (#53505)
Miha Zupan [Thu, 15 Jul 2021 18:47:04 +0000 (11:47 -0700)]
Remove support for deprecated obs-fold in header values (#53505)

* Remove support for deprecated obs-fold in header values

* Add new-line validation to Well-Known header parsing

3 years agoDo abortive connection shutdown in MsQuicConnection.Dispose (#55493)
Geoff Kizer [Thu, 15 Jul 2021 18:42:40 +0000 (11:42 -0700)]
Do abortive connection shutdown in MsQuicConnection.Dispose (#55493)

* do abortive connection shutdown in MsQuicConnection.Dispose, add test for CloseAsync and Dispose, and remove CloseAsync from RunClientServer as it should not be necessary anymore

* CloseAsync is no-op if disposed

* more review feedback

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years agoSupport more collections in STJ source generator (#55566)
Layomi Akinrinade [Thu, 15 Jul 2021 18:41:56 +0000 (11:41 -0700)]
Support more collections in STJ source generator (#55566)

* Support more collections in STJ source generator

* Fix tests

* Revert redundant MLC change and address feedback

3 years agoImprove `TryTransformStoreObjAsStoreInd` optimization. (#55727)
Sergey Andreenko [Thu, 15 Jul 2021 18:13:15 +0000 (11:13 -0700)]
Improve `TryTransformStoreObjAsStoreInd` optimization. (#55727)

* Fix `TryTransformStoreObjAsStoreInd` optimization.

* Disable the assert.

It was failing on DevDiv_280120 arm32 linux, did not repro with an altjit.

3 years agoIncrease max loops optimized by RyuJIT from 16 to 64. (#55614)
Bruce Forstall [Thu, 15 Jul 2021 17:52:36 +0000 (10:52 -0700)]
Increase max loops optimized by RyuJIT from 16 to 64. (#55614)

16 seems remarkably small. Note that this number is used to allocate the
statically-sized loop table, as well as for memory allocation for value
numbering, so there is some overhead to increasing it.

A few microbenchmarks that have diffs show benefit, including 9% for MulMatrix

| Method |        Job |                                                                         Toolchain |     Mean |   Error |  StdDev |   Median |      Min |      Max | Ratio |
|------- |----------- |---------------------------------------------------------------------------------- |---------:|--------:|--------:|---------:|---------:|---------:|------:|
| LLoops | Job-JXEMSM | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 559.9 ms | 8.20 ms | 7.67 ms | 556.4 ms | 550.6 ms | 576.0 ms |  1.00 |
| LLoops | Job-MUOLTV |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 552.3 ms | 5.84 ms | 5.46 ms | 552.0 ms | 542.4 ms | 561.1 ms |  0.99 |
| MulMatrix | Job-JXEMSM | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 369.7 ms | 4.01 ms | 3.56 ms | 369.9 ms | 364.6 ms | 376.9 ms |  1.00 |
| MulMatrix | Job-MUOLTV |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 338.1 ms | 2.69 ms | 2.51 ms | 337.7 ms | 332.2 ms | 341.9 ms |  0.91 |
| Puzzle | Job-JXEMSM | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 403.4 ms | 6.93 ms | 6.48 ms | 402.3 ms | 394.8 ms | 412.5 ms |  1.00 |
| Puzzle | Job-MUOLTV |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 394.9 ms | 4.16 ms | 3.68 ms | 395.5 ms | 388.2 ms | 401.8 ms |  0.98 |

spmi diffs:

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 6264
Total bytes of diff: 6285
Total bytes of delta: 21 (0.34% of base)
Total relative delta: 0.00
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
          21 : 42451.dasm (0.34% of base)

1 total files with Code Size differences (0 improved, 1 regressed), 0 unchanged.

Top method regressions (bytes):
          21 ( 0.34% of base) : 42451.dasm - RelationalModel:Create(IModel,IRelationalAnnotationProvider):IRelationalModel

Top method regressions (percentages):
          21 ( 0.34% of base) : 42451.dasm - RelationalModel:Create(IModel,IRelationalAnnotationProvider):IRelationalModel

1 total methods with Code Size differences (0 improved, 1 regressed), 0 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 39243
Total bytes of diff: 39940
Total bytes of delta: 697 (1.78% of base)
Total relative delta: 0.16
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
         536 : 25723.dasm (18.29% of base)
         185 : 26877.dasm (2.21% of base)
          66 : 16212.dasm (1.39% of base)
          16 : 16196.dasm (0.36% of base)
          13 : 13322.dasm (0.27% of base)
           9 : 15596.dasm (0.16% of base)

Top file improvements (bytes):
        -125 : 27270.dasm (-6.93% of base)
          -3 : 13993.dasm (-0.05% of base)

8 total files with Code Size differences (2 improved, 6 regressed), 0 unchanged.

Top method regressions (bytes):
         536 (18.29% of base) : 25723.dasm - Benchstone.BenchI.MulMatrix:Inner(System.Int32[][],System.Int32[][],System.Int32[][])
         185 ( 2.21% of base) : 26877.dasm - Benchstone.BenchF.LLoops:Main1(int):this
          66 ( 1.39% of base) : 16212.dasm - Jil.Deserialize.Methods:SkipWithLeadChar(System.IO.TextReader,int)
          16 ( 0.36% of base) : 16196.dasm - DynamicClass:_DynamicMethod9(System.IO.TextReader,int):MicroBenchmarks.Serializers.MyEventsListerViewModel
          13 ( 0.27% of base) : 13322.dasm - DynamicClass:Regex1_Go(System.Text.RegularExpressions.RegexRunner)
           9 ( 0.16% of base) : 15596.dasm - DynamicClass:_DynamicMethod9(byref,int):MicroBenchmarks.Serializers.MyEventsListerViewModel

Top method improvements (bytes):
        -125 (-6.93% of base) : 27270.dasm - Benchstone.BenchI.Puzzle:DoIt():bool:this
          -3 (-0.05% of base) : 13993.dasm - Jil.Deserialize.Methods:SkipWithLeadCharThunkReader(byref,int)

Top method regressions (percentages):
         536 (18.29% of base) : 25723.dasm - Benchstone.BenchI.MulMatrix:Inner(System.Int32[][],System.Int32[][],System.Int32[][])
         185 ( 2.21% of base) : 26877.dasm - Benchstone.BenchF.LLoops:Main1(int):this
          66 ( 1.39% of base) : 16212.dasm - Jil.Deserialize.Methods:SkipWithLeadChar(System.IO.TextReader,int)
          16 ( 0.36% of base) : 16196.dasm - DynamicClass:_DynamicMethod9(System.IO.TextReader,int):MicroBenchmarks.Serializers.MyEventsListerViewModel
          13 ( 0.27% of base) : 13322.dasm - DynamicClass:Regex1_Go(System.Text.RegularExpressions.RegexRunner)
           9 ( 0.16% of base) : 15596.dasm - DynamicClass:_DynamicMethod9(byref,int):MicroBenchmarks.Serializers.MyEventsListerViewModel

Top method improvements (percentages):
        -125 (-6.93% of base) : 27270.dasm - Benchstone.BenchI.Puzzle:DoIt():bool:this
          -3 (-0.05% of base) : 13993.dasm - Jil.Deserialize.Methods:SkipWithLeadCharThunkReader(byref,int)

8 total methods with Code Size differences (2 improved, 6 regressed), 0 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 142908
Total bytes of diff: 143387
Total bytes of delta: 479 (0.34% of base)
Total relative delta: 0.42
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
         536 : 248723.dasm (18.29% of base)
         390 : 220441.dasm (14.45% of base)
         390 : 220391.dasm (14.61% of base)
         150 : 239253.dasm (1.78% of base)
          71 : 234803.dasm (1.72% of base)
          16 : 225588.dasm (1.00% of base)
          16 : 225590.dasm (1.00% of base)
           5 : 225285.dasm (0.26% of base)

Top file improvements (bytes):
        -359 : 215690.dasm (-0.99% of base)
        -320 : 215701.dasm (-1.16% of base)
        -128 : 215723.dasm (-0.73% of base)
        -128 : 215666.dasm (-0.62% of base)
        -125 : 239280.dasm (-6.93% of base)
         -29 : 216754.dasm (-0.33% of base)
          -3 : 225316.dasm (-0.15% of base)
          -3 : 225313.dasm (-0.15% of base)

16 total files with Code Size differences (8 improved, 8 regressed), 0 unchanged.

Top method regressions (bytes):
         536 (18.29% of base) : 248723.dasm - Benchstone.BenchI.MulMatrix:Inner(System.Int32[][],System.Int32[][],System.Int32[][])
         390 (14.45% of base) : 220441.dasm - VectorTest:Main():int
         390 (14.61% of base) : 220391.dasm - VectorTest:Main():int
         150 ( 1.78% of base) : 239253.dasm - Benchstone.BenchF.LLoops:Main1(int):this
          71 ( 1.72% of base) : 234803.dasm - SmallLoop1:Main():int
          16 ( 1.00% of base) : 225588.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
          16 ( 1.00% of base) : 225590.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
           5 ( 0.26% of base) : 225285.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int

Top method improvements (bytes):
        -359 (-0.99% of base) : 215690.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
        -320 (-1.16% of base) : 215701.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
        -128 (-0.73% of base) : 215723.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
        -128 (-0.62% of base) : 215666.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
        -125 (-6.93% of base) : 239280.dasm - Benchstone.BenchI.Puzzle:DoIt():bool:this
         -29 (-0.33% of base) : 216754.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
          -3 (-0.15% of base) : 225316.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
          -3 (-0.15% of base) : 225313.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int

Top method regressions (percentages):
         536 (18.29% of base) : 248723.dasm - Benchstone.BenchI.MulMatrix:Inner(System.Int32[][],System.Int32[][],System.Int32[][])
         390 (14.61% of base) : 220391.dasm - VectorTest:Main():int
         390 (14.45% of base) : 220441.dasm - VectorTest:Main():int
         150 ( 1.78% of base) : 239253.dasm - Benchstone.BenchF.LLoops:Main1(int):this
          71 ( 1.72% of base) : 234803.dasm - SmallLoop1:Main():int
          16 ( 1.00% of base) : 225588.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
          16 ( 1.00% of base) : 225590.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
           5 ( 0.26% of base) : 225285.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int

Top method improvements (percentages):
        -125 (-6.93% of base) : 239280.dasm - Benchstone.BenchI.Puzzle:DoIt():bool:this
        -320 (-1.16% of base) : 215701.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
        -359 (-0.99% of base) : 215690.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
        -128 (-0.73% of base) : 215723.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
        -128 (-0.62% of base) : 215666.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
         -29 (-0.33% of base) : 216754.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
          -3 (-0.15% of base) : 225316.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int
          -3 (-0.15% of base) : 225313.dasm - IntelHardwareIntrinsicTest.Program:Main(System.String[]):int

16 total methods with Code Size differences (8 improved, 8 regressed), 0 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 15351
Total bytes of diff: 15448
Total bytes of delta: 97 (0.63% of base)
Total relative delta: 0.08
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
          71 : 63973.dasm (7.63% of base)
          26 : 106039.dasm (0.19% of base)

2 total files with Code Size differences (0 improved, 2 regressed), 1 unchanged.

Top method regressions (bytes):
          71 ( 7.63% of base) : 63973.dasm - Microsoft.Diagnostics.Tracing.Parsers.Symbol.FileVersionTraceData:ToXml(System.Text.StringBuilder):System.Text.StringBuilder:this
          26 ( 0.19% of base) : 106039.dasm - Microsoft.VisualBasic.CompilerServices.VBBinder:BindToMethod(int,System.Reflection.MethodBase[],byref,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],byref):System.Reflection.MethodBase:this

Top method regressions (percentages):
          71 ( 7.63% of base) : 63973.dasm - Microsoft.Diagnostics.Tracing.Parsers.Symbol.FileVersionTraceData:ToXml(System.Text.StringBuilder):System.Text.StringBuilder:this
          26 ( 0.19% of base) : 106039.dasm - Microsoft.VisualBasic.CompilerServices.VBBinder:BindToMethod(int,System.Reflection.MethodBase[],byref,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],byref):System.Reflection.MethodBase:this

2 total methods with Code Size differences (0 improved, 2 regressed), 1 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 22540
Total bytes of diff: 22576
Total bytes of delta: 36 (0.16% of base)
Total relative delta: 0.01
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
          23 : 104600.dasm (0.15% of base)
          14 : 43143.dasm (0.47% of base)

Top file improvements (bytes):
          -1 : 35267.dasm (-0.03% of base)

3 total files with Code Size differences (1 improved, 2 regressed), 0 unchanged.

Top method regressions (bytes):
          23 ( 0.15% of base) : 104600.dasm - Microsoft.VisualBasic.CompilerServices.VBBinder:BindToMethod(int,System.Reflection.MethodBase[],byref,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],byref):System.Reflection.MethodBase:this
          14 ( 0.47% of base) : 43143.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:ForceComplete(Microsoft.CodeAnalysis.SourceLocation,System.Threading.CancellationToken):this

Top method improvements (bytes):
          -1 (-0.03% of base) : 35267.dasm - Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.LanguageParser:ParseNamespaceBody(byref,byref,byref,ushort):this

Top method regressions (percentages):
          14 ( 0.47% of base) : 43143.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:ForceComplete(Microsoft.CodeAnalysis.SourceLocation,System.Threading.CancellationToken):this
          23 ( 0.15% of base) : 104600.dasm - Microsoft.VisualBasic.CompilerServices.VBBinder:BindToMethod(int,System.Reflection.MethodBase[],byref,System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[],byref):System.Reflection.MethodBase:this

Top method improvements (percentages):
          -1 (-0.03% of base) : 35267.dasm - Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.LanguageParser:ParseNamespaceBody(byref,byref,byref,ushort):this

3 total methods with Code Size differences (1 improved, 2 regressed), 0 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 53782
Total bytes of diff: 53837
Total bytes of delta: 55 (0.10% of base)
Total relative delta: 0.00
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
          28 : 28889.dasm (0.16% of base)
          27 : 28887.dasm (0.15% of base)

2 total files with Code Size differences (0 improved, 2 regressed), 2 unchanged.

Top method regressions (bytes):
          28 ( 0.16% of base) : 28889.dasm - ManagedTests.DynamicCSharp.Conformance.dynamic.statements.freach.freach003.freach003.Test:MainMethod():int
          27 ( 0.15% of base) : 28887.dasm - ManagedTests.DynamicCSharp.Conformance.dynamic.statements.freach.freach004.freach004.Test:MainMethod():int

Top method regressions (percentages):
          28 ( 0.16% of base) : 28889.dasm - ManagedTests.DynamicCSharp.Conformance.dynamic.statements.freach.freach003.freach003.Test:MainMethod():int
          27 ( 0.15% of base) : 28887.dasm - ManagedTests.DynamicCSharp.Conformance.dynamic.statements.freach.freach004.freach004.Test:MainMethod():int

2 total methods with Code Size differences (0 improved, 2 regressed), 2 unchanged.

```

</details>

--------------------------------------------------------------------------------

3 years agoFix crash with unmapped shuffle thunk stub (#55718)
Jan Vorlicek [Thu, 15 Jul 2021 17:45:43 +0000 (19:45 +0200)]
Fix crash with unmapped shuffle thunk stub (#55718)

This change fixes an intermittent issue that was showing up in
the System.Linq.Expressions.Tests suite. When the delegate class
was in a collectible ALC, some of the stubs were being used even
after the underlying loader allocator was deleted, thus the memory
the stubs occupied was already unmapped.

Before my recent W^X change, the stubs were always being allocated
from an executable allocator / executable heap in the global loader
allocator due to a bug in the AssemblyLoaderAllocator::SetCollectible
and AssemblyLoaderAllocator::Init ordering (the SetCollectible
was being called before the Init, so the m_pStubHeap was not yet
set and the ShuffleThunkCache was being passed NULL as the heap
pointer. The cache handles that case as a request to allocate from
global executable heap.

In this fix, I've changed the AssemblyLoaderAllocator::Init to pass
the SystemDomain::GetGlobalLoaderAllocator()->GetExecutableHeap()
as the heap to the ShuffleThunkCache constructor. It is a workaround
until the actual issue with stubs outliving the delegate classes
is understood and fixed.

Besides the fix, this change also fixes two unrelated issues that
would only possibly cause trouble when the W^X is enabled. There
were two places where memory was being reserved by the new
ExecutableAllocator, but cleaned up using the ClrVirtualFree.

3 years agoinFlight ref-counting of strong GCHandle for JSObject, while in flight over the manag...
Pavel Savara [Thu, 15 Jul 2021 17:23:27 +0000 (19:23 +0200)]
inFlight ref-counting of strong GCHandle for JSObject, while in flight over the managed/JS boundary (#54453)

3 years agoRelax LinkTarget so it always returns null when steps on an error (#55668)
David Cantú [Thu, 15 Jul 2021 16:52:42 +0000 (09:52 -0700)]
Relax LinkTarget so it always returns null when steps on an error (#55668)

3 years agoUse alternatives to redirecting threads via IP changes in the context, for a few...
Koundinya Veluri [Thu, 15 Jul 2021 16:34:36 +0000 (09:34 -0700)]
Use alternatives to redirecting threads via IP changes in the context, for a few cases on Windows (#55649)

* Use alternatives to redirecting threads via IP changes in the context, for a few cases on Windows

- For GC/debugger suspension, a new variant of an APC is used to interrupt the thread
- For hardware exceptions, an exception is raised from the vectored exception handler instead of redirecting and then raising an exception
- Made changes to enable /guard:ehcont and /cetcompat for binaries, but commented out the enablement for now since it looks like we will first need .pgd files generated with /guard:ehcont and published for release builds to succeed

3 years agomore fixes for msquic packaging (#55607)
Tomas Weinfurt [Thu, 15 Jul 2021 15:14:43 +0000 (08:14 -0700)]
more fixes for msquic packaging (#55607)

* more fixes for msquic packaging

* feedback from review

3 years agoJIT: enable GDV when static class deduction fails. (#55660)
Andy Ayers [Thu, 15 Jul 2021 14:51:44 +0000 (07:51 -0700)]
JIT: enable GDV when static class deduction fails. (#55660)

Update the early bailout in impDevirtualizeCall that gives up if
the object class cannot not be determined to check if we can do
GDV (guarded devirtualization) based on profile data.

Fixes one of the cases noted in #55079.

3 years ago[mono] Disable unsupported apply update scenarios (#55698)
Aleksey Kliger (λgeek) [Thu, 15 Jul 2021 14:46:47 +0000 (10:46 -0400)]
[mono] Disable unsupported apply update scenarios (#55698)

* Disallow mixing ApplyChanges and debugger apply changes

* Don't allow debugger thread to start if ApplyChanges has been called

* Don't allow ApplyChanges managed API call if debugger is attached

* MONO_COMPONENT_API mono_error_set_not_supported

3 years agoAdd json support for F# options, lists, sets, maps and records (#55108)
Eirik Tsarpalis [Thu, 15 Jul 2021 14:40:30 +0000 (17:40 +0300)]
Add json support for F# options, lists, sets, maps and records (#55108)

* Add json support for F# options, lists, sets, maps and records

* fix ILLink warnings

* address ILLink annotations feedback

* add support for ValueOption

* revert unneeded sln changes

* add JsonIgnoreCondition tests for optional types

* Revert "revert unneeded sln changes"

This reverts commit 2e793422dca84bd22d55cdfa2cd6c9b6c5d4963e.

* remove lock from singleton initialization

* improve FSharp.Core missing member error mesages

* throw NotSupportedException on discriminated unions

* extend optional test coverage to include list, set and map payloads

* simplify changes required to converter infrastructure

3 years ago[android][debugger] Implement support to debug after hot reload. (#55722)
Thays Grazia [Thu, 15 Jul 2021 14:33:23 +0000 (07:33 -0700)]
[android][debugger] Implement support to debug after hot reload. (#55722)

* Implement support to debug after hot reload.

* Remove unused variable.

3 years agoPrevent ActivityId leak across threads (#55625)
Noah Falk [Thu, 15 Jul 2021 12:59:38 +0000 (05:59 -0700)]
Prevent ActivityId leak across threads (#55625)

Prevent ActivityId leak across threads

Fixes #51608

Previously running an async task with two or more levels of nesting on the EventSource activity stack would leave the ActivityID set on the old thread after being swapped out at a yield point. This meant that threadpool threads would often have stale ActivityIDs present when they began a new work item. This in turn produced non-sensical logs where it appeared that unrelated work items were nested within each other.

Most of this change is adding tests. The ActivityIdIsZeroedOnThreadSwitchOut test is the one being fixed. The remainder of the new tests pass both before and after the change. I added those to better describe some of the existing behavior and add a little confidence that the change didn't have unintended effects elsewhere. As best I can tell the Activity tracking feature didn't have any testing previously and there is certainly still room for improvement on test coverage.

3 years agoEnable StructEnreg by default on all platforms. (#55558)
Sergey Andreenko [Thu, 15 Jul 2021 09:01:47 +0000 (02:01 -0700)]
Enable StructEnreg by default on all platforms. (#55558)

* enable for arm32.

fix arm32

Fix arm/arm64.

now we can have contained lclRead for other platforms, not only xarch.

* enable x64 unix.

* Fix and enable arm64.

* fix bad merge and arm32 failures.

3 years agoAvoid nullref while trying to throw a more helpful exception. (#55316)
Steve Molloy [Thu, 15 Jul 2021 06:59:35 +0000 (23:59 -0700)]
Avoid nullref while trying to throw a more helpful exception. (#55316)

3 years agoRemove default value from param in ResolveLinkTarget(bool returnFinalTarget) missed...
David Cantú [Thu, 15 Jul 2021 06:07:12 +0000 (23:07 -0700)]
Remove default value from param in ResolveLinkTarget(bool returnFinalTarget) missed in the main PR (#55670)

3 years agoSupport Invariant Mode Case Mapping (#55520)
Tarek Mahmoud Sayed [Thu, 15 Jul 2021 06:05:03 +0000 (23:05 -0700)]
Support Invariant Mode Case Mapping (#55520)

* Support InvariantMode Case Mapping

3 years agoRevert "Handle getting the address of an RVA static correctly in a composite image...
David Wrighton [Thu, 15 Jul 2021 04:57:22 +0000 (21:57 -0700)]
Revert "Handle getting the address of an RVA static correctly in a composite image (#55301)" (#55713)

This reverts commit e3d319bb727efb82f1ab4236f6f58a5dfffcfc5c.
It breaks the crossgen2 outerloop runs

3 years agoSupport sigaction with SIG_DFL and SA_SIGINFO. (#55673)
Tom Deseyn [Thu, 15 Jul 2021 04:41:01 +0000 (06:41 +0200)]
Support sigaction with SIG_DFL and SA_SIGINFO. (#55673)

Fixes #55645

3 years agoInclude native underlying handler support in HttpClientHandler for iOS/tvOS/MacCataly...
Steve Pfister [Thu, 15 Jul 2021 04:36:02 +0000 (00:36 -0400)]
Include native underlying handler support in HttpClientHandler for iOS/tvOS/MacCatalyst and Android (#55384)

Completes the plan for net6 laid out in https://github.com/dotnet/designs/blob/main/accepted/2020/mono-convergence/platform-specific-httpclient.md#the-plan-for-net-5

This change supports using either the native HttpMessageHandler types that exist in the Xamarin repos (NSUrlSessionHandler for iOS/tvOS/Catalyst and AndroidMessageHandler for Android) or SocketsHttpHandler as the underlying handler in HttpClientHandler.

The behavior for new HttpClient() was established earlier in net6, but did not go all the way. For example, if the System.Net.Http.UseNativeHttpHandler feature switch was set to true, using HttpClient in different ways would lead to different underlying handlers.

Before this PR:

// System.Net.Http.UseNativeHttpHandler == true

new HttpClient();    // Chooses the native handler as the underlying handler

var handler = new HttpClientHandler();       // SocketsHttpHandler is the only choice
new HttpClient(handler);

The change creates a handful of partial HttpClientHandler files in order to split out the platform specific parts. As you review the PR, you'll notice a bunch of if (IsSocketHandler) blocks. The intent of these are to make use of the linker and get linked out once the linker knows which handler is the active one.

get
{
    if (IsSocketHandler)
    {
        return _socketHandler!.UseCookies;
    }
    else
    {
        return GetUseCookies();
    }
}

Get and Set methods like GetUseCookies make it easier to tell the linker via DynamicDependency to preserve the reflection calls being made to the native underlying handler.

[DynamicDependency("get_UseCookies", "Xamarin.Android.Net.AndroidMessageHandler", "Mono.Android")]
private bool GetUseCookies() => (bool)InvokeNativeHandlerMethod("get_UseCookies");

It is important to point out that the underlying handler has to be derived from HttpMessageHandler. It cannot be HttpClientHandler or you'll end up with a circular dependency.

3 years agoSupport cloning loops with array of struct indexing expressions (#55612)
Bruce Forstall [Thu, 15 Jul 2021 03:35:45 +0000 (20:35 -0700)]
Support cloning loops with array of struct indexing expressions (#55612)

* Support cloning loops with array of struct indexing expressions

Loop cloning, in `optExtractArrIndex()`, was matching the post-morph
trees representing array index expressions. This was not necessary,
as all the information we actually need is in the array bound check node,
namely the array base and the array index. The code was verifying that the
bounds check information matched the morph expression, but we don't really
need to do that anyway, as the main thing we care about it whether or not
we can remove the bounds check.

The full array index expression morphed tree can be complex, especially
for arrays of structs. Simply deleting this parsing code enables cloning to
kick in for arrays of structs.

There was one bug needing fixing, though: after removing the array bounds
check, the GTF_EXCEPT bits are recalculated over the entire Statement tree.
It was doing this top-down, but needs to do it bottom-up to handle the array
of structs case where we have `IND(COMMA(..., ADDR()))`, to propagate the bit
through the COMMA.

Fixes #48897

There are a few microbenchmark wins ("runtime2" is baseline, "runtime" is diff):
```
|    Method |        Job |                                                                         Toolchain |     Mean |   Error |  StdDev |   Median |      Min |      Max | Ratio |
|---------- |----------- |---------------------------------------------------------------------------------- |---------:|--------:|--------:|---------:|---------:|---------:|------:|
| MulMatrix | Job-LARQLS | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 370.8 ms | 1.32 ms | 1.17 ms | 370.5 ms | 369.3 ms | 373.1 ms |  1.00 |
| MulMatrix | Job-GYTYVK |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 351.6 ms | 1.92 ms | 1.60 ms | 351.6 ms | 349.2 ms | 355.2 ms |  0.95 |
|                   |            |                                                                                   |            |          |          |            |            |            |       |         |
| SpectralNorm_1 | Job-LARQLS | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 865.0 us | 16.71 us | 18.57 us | 858.8 us | 843.3 us | 896.0 us |  1.00 |
| SpectralNorm_1 | Job-GYTYVK |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 844.6 us |  9.47 us |  8.40 us | 841.5 us | 836.3 us | 860.6 us |  0.97 |
|                   |            |                                                                                   |            |          |          |            |            |            |       |         |
|      BenchEmFloat | Job-LARQLS | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 3,183.1 ms | 14.45 ms | 13.52 ms | 3,188.8 ms | 3,157.0 ms | 3,205.5 ms |  1.00 |    0.00 |
|      BenchEmFloat | Job-GYTYVK |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 3,115.8 ms | 13.19 ms | 12.34 ms | 3,109.3 ms | 3,105.3 ms | 3,147.1 ms |  0.98 |    0.00 |
|                   |            |                                                                                   |            |          |          |            |            |            |       |         |
| BenchAssignJagged | Job-LARQLS | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe |   938.1 ms |  5.26 ms |  4.66 ms |   937.8 ms |   932.3 ms |   946.4 ms |  1.00 |    0.00 |
| BenchAssignJagged | Job-GYTYVK |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe |   954.0 ms | 12.19 ms | 10.18 ms |   951.8 ms |   943.6 ms |   978.7 ms |  1.02 |    0.01 |
|                   |            |                                                                                   |            |          |          |            |            |            |       |         |
|     BenchLUDecomp | Job-LARQLS | \runtime2\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 1,094.6 ms | 14.91 ms | 13.95 ms | 1,095.0 ms | 1,072.5 ms | 1,117.7 ms |  1.00 |    0.00 |
|     BenchLUDecomp | Job-GYTYVK |  \runtime\artifacts\tests\coreclr\windows.x64.Checked\Tests\Core_Root\CoreRun.exe | 1,133.9 ms | 16.55 ms | 15.48 ms | 1,139.1 ms | 1,107.9 ms | 1,154.0 ms |  1.04 |    0.02 |
```

spmi diffs:

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 10605
Total bytes of diff: 13993
Total bytes of delta: 3388 (31.95% of base)
Total relative delta: 13.43
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
         190 : 41209.dasm (89.62% of base)
         190 : 19281.dasm (89.62% of base)
         163 : 41303.dasm (67.08% of base)
         163 : 19393.dasm (67.08% of base)
         126 : 38635.dasm (50.00% of base)
         126 : 17973.dasm (50.00% of base)
         125 : 35718.dasm (29.07% of base)
         125 : 18582.dasm (29.07% of base)
         125 : 39316.dasm (29.07% of base)
         124 : 12493.dasm (47.51% of base)
         124 : 15994.dasm (47.51% of base)
         124 : 31342.dasm (49.80% of base)
         124 : 36770.dasm (48.44% of base)
         124 : 30776.dasm (48.44% of base)
         106 : 32284.dasm (39.85% of base)
         106 : 19181.dasm (39.85% of base)
         105 : 41328.dasm (53.85% of base)
         105 : 19427.dasm (53.85% of base)
          94 : 19275.dasm (19.34% of base)
          94 : 41203.dasm (19.34% of base)

Top file improvements (bytes):
         -32 : 22627.dasm (-12.55% of base)
         -32 : 35972.dasm (-12.55% of base)
         -32 : 30648.dasm (-12.55% of base)

36 total files with Code Size differences (3 improved, 33 regressed), 1 unchanged.

Top method regressions (bytes):
         190 (89.62% of base) : 41209.dasm - Dictionary`2:CopyEntries(ref,int):this
         190 (89.62% of base) : 19281.dasm - Dictionary`2:CopyEntries(ref,int):this
         163 (67.08% of base) : 41303.dasm - Dictionary`2:CopyTo(ref,int):this
         163 (67.08% of base) : 19393.dasm - Dictionary`2:CopyTo(ref,int):this
         126 (50.00% of base) : 38635.dasm - Dictionary`2:Resize(int,bool):this
         126 (50.00% of base) : 17973.dasm - Dictionary`2:Resize(int,bool):this
         125 (29.07% of base) : 35718.dasm - Dictionary`2:Resize(int,bool):this
         125 (29.07% of base) : 18582.dasm - Dictionary`2:Resize(int,bool):this
         125 (29.07% of base) : 39316.dasm - Dictionary`2:Resize(int,bool):this
         124 (47.51% of base) : 12493.dasm - Dictionary`2:Resize(int,bool):this
         124 (47.51% of base) : 15994.dasm - Dictionary`2:Resize(int,bool):this
         124 (49.80% of base) : 31342.dasm - Dictionary`2:Resize(int,bool):this
         124 (48.44% of base) : 36770.dasm - Dictionary`2:Resize(int,bool):this
         124 (48.44% of base) : 30776.dasm - Dictionary`2:Resize(int,bool):this
         106 (39.85% of base) : 32284.dasm - EnumerableSorter`2:ComputeKeys(ref,int):this
         106 (39.85% of base) : 19181.dasm - EnumerableSorter`2:ComputeKeys(ref,int):this
         105 (53.85% of base) : 41328.dasm - EnumerableSorter`2:ComputeKeys(ref,int):this
         105 (53.85% of base) : 19427.dasm - EnumerableSorter`2:ComputeKeys(ref,int):this
          94 (19.34% of base) : 19275.dasm - Dictionary`2:AddRange(IEnumerable`1):this
          94 (19.34% of base) : 41203.dasm - Dictionary`2:AddRange(IEnumerable`1):this

Top method improvements (bytes):
         -32 (-12.55% of base) : 22627.dasm - ObjectEqualityComparer`1:IndexOf(ref,__Canon,int,int):int:this
         -32 (-12.55% of base) : 35972.dasm - ObjectEqualityComparer`1:IndexOf(ref,__Canon,int,int):int:this
         -32 (-12.55% of base) : 30648.dasm - ObjectEqualityComparer`1:IndexOf(ref,__Canon,int,int):int:this

Top method regressions (percentages):
         190 (89.62% of base) : 41209.dasm - Dictionary`2:CopyEntries(ref,int):this
         190 (89.62% of base) : 19281.dasm - Dictionary`2:CopyEntries(ref,int):this
         163 (67.08% of base) : 41303.dasm - Dictionary`2:CopyTo(ref,int):this
         163 (67.08% of base) : 19393.dasm - Dictionary`2:CopyTo(ref,int):this
         105 (53.85% of base) : 41328.dasm - EnumerableSorter`2:ComputeKeys(ref,int):this
         105 (53.85% of base) : 19427.dasm - EnumerableSorter`2:ComputeKeys(ref,int):this
          78 (51.66% of base) : 37496.dasm - RouteValueDictionary:TryFindItem(String,byref):bool:this
         126 (50.00% of base) : 38635.dasm - Dictionary`2:Resize(int,bool):this
         126 (50.00% of base) : 17973.dasm - Dictionary`2:Resize(int,bool):this
         124 (49.80% of base) : 31342.dasm - Dictionary`2:Resize(int,bool):this
         124 (48.44% of base) : 36770.dasm - Dictionary`2:Resize(int,bool):this
         124 (48.44% of base) : 30776.dasm - Dictionary`2:Resize(int,bool):this
          88 (47.57% of base) : 37495.dasm - RouteValueDictionary:TryGetValue(String,byref):bool:this
          88 (47.57% of base) : 22930.dasm - RouteValueDictionary:TryGetValue(String,byref):bool:this
         124 (47.51% of base) : 12493.dasm - Dictionary`2:Resize(int,bool):this
         124 (47.51% of base) : 15994.dasm - Dictionary`2:Resize(int,bool):this
          76 (44.97% of base) : 18170.dasm - ValueCollection:CopyTo(ref,int):this
          76 (44.97% of base) : 38751.dasm - ValueCollection:CopyTo(ref,int):this
          76 (44.19% of base) : 30837.dasm - ValueCollection:CopyTo(ref,int):this
          76 (44.19% of base) : 36738.dasm - ValueCollection:CopyTo(ref,int):this

Top method improvements (percentages):
         -32 (-12.55% of base) : 22627.dasm - ObjectEqualityComparer`1:IndexOf(ref,__Canon,int,int):int:this
         -32 (-12.55% of base) : 35972.dasm - ObjectEqualityComparer`1:IndexOf(ref,__Canon,int,int):int:this
         -32 (-12.55% of base) : 30648.dasm - ObjectEqualityComparer`1:IndexOf(ref,__Canon,int,int):int:this

36 total methods with Code Size differences (3 improved, 33 regressed), 1 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 19656
Total bytes of diff: 21755
Total bytes of delta: 2099 (10.68% of base)
Total relative delta: 6.71
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
         314 : 10636.dasm (65.42% of base)
         281 : 25723.dasm (9.59% of base)
         276 : 10626.dasm (85.98% of base)
         191 : 17802.dasm (46.81% of base)
         113 : 9414.dasm (49.78% of base)
          98 : 11859.dasm (19.72% of base)
          98 : 11860.dasm (19.72% of base)
          89 : 7680.dasm (51.45% of base)
          84 : 7683.dasm (48.00% of base)
          84 : 15110.dasm (8.06% of base)
          80 : 7673.dasm (13.01% of base)
          80 : 3345.dasm (47.62% of base)
          77 : 9246.dasm (82.80% of base)
          76 : 2291.dasm (44.19% of base)
          62 : 14611.dasm (13.45% of base)
          62 : 14612.dasm (13.36% of base)
          57 : 25481.dasm (36.54% of base)
          45 : 20229.dasm (22.39% of base)
          28 : 24281.dasm (31.11% of base)
          28 : 12802.dasm (1.63% of base)

Top file improvements (bytes):
         -48 : 1274.dasm (-14.20% of base)
         -36 : 2717.dasm (-10.17% of base)
         -14 : 14028.dasm (-2.84% of base)
         -13 : 24210.dasm (-3.06% of base)
         -11 : 20189.dasm (-6.25% of base)
         -10 : 24211.dasm (-2.35% of base)
          -8 : 21902.dasm (-7.69% of base)
          -6 : 17322.dasm (-4.44% of base)
          -5 : 8348.dasm (-1.40% of base)
          -4 : 15533.dasm (-0.35% of base)
          -3 : 13358.dasm (-4.76% of base)
          -3 : 15111.dasm (-0.43% of base)
          -2 : 15133.dasm (-0.35% of base)
          -2 : 19751.dasm (-0.36% of base)
          -2 : 15621.dasm (-0.35% of base)

39 total files with Code Size differences (15 improved, 24 regressed), 2 unchanged.

Top method regressions (bytes):
         314 (65.42% of base) : 10636.dasm - EMFloat:DoEmFloatIteration(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int,int):long
         281 ( 9.59% of base) : 25723.dasm - Benchstone.BenchI.MulMatrix:Inner(System.Int32[][],System.Int32[][],System.Int32[][])
         276 (85.98% of base) : 10626.dasm - EMFloat:SetupCPUEmFloatArrays(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int)
         191 (46.81% of base) : 17802.dasm - Microsoft.CodeAnalysis.MetadataDecoder`5[__Canon,__Canon,__Canon,__Canon,__Canon][System.__Canon,System.__Canon,System.__Canon,System.__Canon,System.__Canon]:DoPropertySignaturesMatch(Microsoft.CodeAnalysis.ParamInfo`1[System.__Canon][],Microsoft.CodeAnalysis.ParamInfo`1[System.__Canon][],bool,bool,bool):bool:this
         113 (49.78% of base) : 9414.dasm - System.Collections.Generic.Dictionary`2[__Canon,__Canon][System.__Canon,System.__Canon]:CopyTo(System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon][],int):this
          98 (19.72% of base) : 11859.dasm - KeyCollection[Int32,Int32][System.Int32,System.Int32]:System.Collections.ICollection.CopyTo(System.Array,int):this
          98 (19.72% of base) : 11860.dasm - ValueCollection[Int32,Int32][System.Int32,System.Int32]:System.Collections.ICollection.CopyTo(System.Array,int):this
          89 (51.45% of base) : 7680.dasm - KeyCollection[Int32,Int32][System.Int32,System.Int32]:CopyTo(System.Int32[],int):this
          84 (48.00% of base) : 7683.dasm - ValueCollection[Int32,Int32][System.Int32,System.Int32]:CopyTo(System.Int32[],int):this
          84 ( 8.06% of base) : 15110.dasm - ProtoBuf.Compiler.CompilerContext:Switch(ProtoBuf.Compiler.CodeLabel[]):this
          80 (13.01% of base) : 7673.dasm - System.Collections.Generic.Dictionary`2[Int32,Int32][System.Int32,System.Int32]:AddRange(System.Collections.Generic.IEnumerable`1[KeyValuePair`2]):this
          80 (47.62% of base) : 3345.dasm - KeyCollection[__Canon,__Canon][System.__Canon,System.__Canon]:CopyTo(System.__Canon[],int):this
          77 (82.80% of base) : 9246.dasm - System.Collections.Generic.GenericEqualityComparer`1[OpCode][System.Reflection.Emit.OpCode]:IndexOf(System.Reflection.Emit.OpCode[],System.Reflection.Emit.OpCode,int,int):int:this
          76 (44.19% of base) : 2291.dasm - ValueCollection[__Canon,__Canon][System.__Canon,System.__Canon]:CopyTo(System.__Canon[],int):this
          62 (13.45% of base) : 14611.dasm - KeyCollection[__Canon,__Canon][System.__Canon,System.__Canon]:System.Collections.ICollection.CopyTo(System.Array,int):this
          62 (13.36% of base) : 14612.dasm - ValueCollection[__Canon,__Canon][System.__Canon,System.__Canon]:System.Collections.ICollection.CopyTo(System.Array,int):this
          57 (36.54% of base) : 25481.dasm - System.Collections.Tests.Perf_PriorityQueue`2[__Canon,__Canon][System.__Canon,System.__Canon]:K_Max_Elements():this
          45 (22.39% of base) : 20229.dasm - WithManyWeakChildren:.ctor(WithManyChildrenBase,Microsoft.CodeAnalysis.SyntaxNode,int):this
          28 (31.11% of base) : 24281.dasm - SciMark2.FFT:inverse(System.Double[])
          28 ( 1.63% of base) : 12802.dasm - AssignJagged:second_assignments(System.Int32[][],System.Int16[][])

Top method improvements (bytes):
         -48 (-14.20% of base) : 1274.dasm - System.Collections.Generic.ObjectEqualityComparer`1[__Canon][System.__Canon]:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
         -36 (-10.17% of base) : 2717.dasm - System.Collections.Generic.GenericEqualityComparer`1[__Canon][System.__Canon]:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
         -14 (-2.84% of base) : 14028.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_NoExpiration():this
         -13 (-3.06% of base) : 24210.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAv(int,System.Double[],System.Double[]):this
         -11 (-6.25% of base) : 20189.dasm - Microsoft.CodeAnalysis.Syntax.InternalSyntax.SyntaxList:List(Microsoft.CodeAnalysis.GreenNode[],int):Microsoft.CodeAnalysis.GreenNode
         -10 (-2.35% of base) : 24211.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAtv(int,System.Double[],System.Double[]):this
          -8 (-7.69% of base) : 21902.dasm - System.Reflection.Internal.ObjectPool`1[__Canon][System.__Canon]:Allocate():System.__Canon:this
          -6 (-4.44% of base) : 17322.dasm - Microsoft.CodeAnalysis.CommonReferenceManager`2[__Canon,__Canon][System.__Canon,System.__Canon]:CheckCircularReference(System.Collections.Generic.IReadOnlyList`1[__Canon]):bool
          -5 (-1.40% of base) : 8348.dasm - Internal.Cryptography.Pal.ChainPal:GetChainStatusInformation(int):System.Security.Cryptography.X509Certificates.X509ChainStatus[]
          -4 (-0.35% of base) : 15533.dasm - LUDecomp:build_problem(System.Double[][],int,System.Double[])
          -3 (-4.76% of base) : 13358.dasm - BenchmarksGame.Fasta_1:MakeCumulative(BenchmarksGame.Fasta_1+Frequency[])
          -3 (-0.43% of base) : 15111.dasm - DynamicClass:proto_1(System.Object,ProtoBuf.ProtoWriter)
          -2 (-0.35% of base) : 15133.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_RelativeExpiration():this
          -2 (-0.36% of base) : 19751.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_ExpirationTokens():this
          -2 (-0.35% of base) : 15621.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_SlidingExpiration():this

Top method regressions (percentages):
         276 (85.98% of base) : 10626.dasm - EMFloat:SetupCPUEmFloatArrays(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int)
          77 (82.80% of base) : 9246.dasm - System.Collections.Generic.GenericEqualityComparer`1[OpCode][System.Reflection.Emit.OpCode]:IndexOf(System.Reflection.Emit.OpCode[],System.Reflection.Emit.OpCode,int,int):int:this
         314 (65.42% of base) : 10636.dasm - EMFloat:DoEmFloatIteration(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int,int):long
          89 (51.45% of base) : 7680.dasm - KeyCollection[Int32,Int32][System.Int32,System.Int32]:CopyTo(System.Int32[],int):this
         113 (49.78% of base) : 9414.dasm - System.Collections.Generic.Dictionary`2[__Canon,__Canon][System.__Canon,System.__Canon]:CopyTo(System.Collections.Generic.KeyValuePair`2[System.__Canon,System.__Canon][],int):this
          84 (48.00% of base) : 7683.dasm - ValueCollection[Int32,Int32][System.Int32,System.Int32]:CopyTo(System.Int32[],int):this
          80 (47.62% of base) : 3345.dasm - KeyCollection[__Canon,__Canon][System.__Canon,System.__Canon]:CopyTo(System.__Canon[],int):this
         191 (46.81% of base) : 17802.dasm - Microsoft.CodeAnalysis.MetadataDecoder`5[__Canon,__Canon,__Canon,__Canon,__Canon][System.__Canon,System.__Canon,System.__Canon,System.__Canon,System.__Canon]:DoPropertySignaturesMatch(Microsoft.CodeAnalysis.ParamInfo`1[System.__Canon][],Microsoft.CodeAnalysis.ParamInfo`1[System.__Canon][],bool,bool,bool):bool:this
          76 (44.19% of base) : 2291.dasm - ValueCollection[__Canon,__Canon][System.__Canon,System.__Canon]:CopyTo(System.__Canon[],int):this
          57 (36.54% of base) : 25481.dasm - System.Collections.Tests.Perf_PriorityQueue`2[__Canon,__Canon][System.__Canon,System.__Canon]:K_Max_Elements():this
          28 (31.11% of base) : 24281.dasm - SciMark2.FFT:inverse(System.Double[])
          45 (22.39% of base) : 20229.dasm - WithManyWeakChildren:.ctor(WithManyChildrenBase,Microsoft.CodeAnalysis.SyntaxNode,int):this
          98 (19.72% of base) : 11859.dasm - KeyCollection[Int32,Int32][System.Int32,System.Int32]:System.Collections.ICollection.CopyTo(System.Array,int):this
          98 (19.72% of base) : 11860.dasm - ValueCollection[Int32,Int32][System.Int32,System.Int32]:System.Collections.ICollection.CopyTo(System.Array,int):this
          27 (16.17% of base) : 10346.dasm - System.Security.Cryptography.Primitives.Tests.Performance.Perf_FixedTimeEquals:Setup(System.String,System.String):this
          62 (13.45% of base) : 14611.dasm - KeyCollection[__Canon,__Canon][System.__Canon,System.__Canon]:System.Collections.ICollection.CopyTo(System.Array,int):this
          62 (13.36% of base) : 14612.dasm - ValueCollection[__Canon,__Canon][System.__Canon,System.__Canon]:System.Collections.ICollection.CopyTo(System.Array,int):this
          80 (13.01% of base) : 7673.dasm - System.Collections.Generic.Dictionary`2[Int32,Int32][System.Int32,System.Int32]:AddRange(System.Collections.Generic.IEnumerable`1[KeyValuePair`2]):this
         281 ( 9.59% of base) : 25723.dasm - Benchstone.BenchI.MulMatrix:Inner(System.Int32[][],System.Int32[][],System.Int32[][])
          84 ( 8.06% of base) : 15110.dasm - ProtoBuf.Compiler.CompilerContext:Switch(ProtoBuf.Compiler.CodeLabel[]):this

Top method improvements (percentages):
         -48 (-14.20% of base) : 1274.dasm - System.Collections.Generic.ObjectEqualityComparer`1[__Canon][System.__Canon]:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
         -36 (-10.17% of base) : 2717.dasm - System.Collections.Generic.GenericEqualityComparer`1[__Canon][System.__Canon]:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
          -8 (-7.69% of base) : 21902.dasm - System.Reflection.Internal.ObjectPool`1[__Canon][System.__Canon]:Allocate():System.__Canon:this
         -11 (-6.25% of base) : 20189.dasm - Microsoft.CodeAnalysis.Syntax.InternalSyntax.SyntaxList:List(Microsoft.CodeAnalysis.GreenNode[],int):Microsoft.CodeAnalysis.GreenNode
          -3 (-4.76% of base) : 13358.dasm - BenchmarksGame.Fasta_1:MakeCumulative(BenchmarksGame.Fasta_1+Frequency[])
          -6 (-4.44% of base) : 17322.dasm - Microsoft.CodeAnalysis.CommonReferenceManager`2[__Canon,__Canon][System.__Canon,System.__Canon]:CheckCircularReference(System.Collections.Generic.IReadOnlyList`1[__Canon]):bool
         -13 (-3.06% of base) : 24210.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAv(int,System.Double[],System.Double[]):this
         -14 (-2.84% of base) : 14028.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_NoExpiration():this
         -10 (-2.35% of base) : 24211.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAtv(int,System.Double[],System.Double[]):this
          -5 (-1.40% of base) : 8348.dasm - Internal.Cryptography.Pal.ChainPal:GetChainStatusInformation(int):System.Security.Cryptography.X509Certificates.X509ChainStatus[]
          -3 (-0.43% of base) : 15111.dasm - DynamicClass:proto_1(System.Object,ProtoBuf.ProtoWriter)
          -2 (-0.36% of base) : 19751.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_ExpirationTokens():this
          -2 (-0.35% of base) : 15133.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_RelativeExpiration():this
          -2 (-0.35% of base) : 15621.dasm - Microsoft.Extensions.Caching.Memory.Tests.MemoryCacheTests:AddThenRemove_SlidingExpiration():this
          -4 (-0.35% of base) : 15533.dasm - LUDecomp:build_problem(System.Double[][],int,System.Double[])

39 total methods with Code Size differences (15 improved, 24 regressed), 2 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 50789
Total bytes of diff: 57962
Total bytes of delta: 7173 (14.12% of base)
Total relative delta: 10.94
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
         314 : 194633.dasm (65.42% of base)
         310 : 169017.dasm (26.12% of base)
         310 : 168630.dasm (26.12% of base)
         310 : 168802.dasm (26.12% of base)
         310 : 169110.dasm (26.12% of base)
         310 : 168724.dasm (26.12% of base)
         310 : 168920.dasm (26.12% of base)
         281 : 248723.dasm (9.59% of base)
         276 : 194632.dasm (85.98% of base)
         267 : 168730.dasm (16.11% of base)
         267 : 168808.dasm (16.11% of base)
         267 : 169021.dasm (16.11% of base)
         267 : 168926.dasm (16.11% of base)
         267 : 169114.dasm (16.11% of base)
         267 : 168636.dasm (16.11% of base)
         259 : 213032.dasm (102.37% of base)
         249 : 167322.dasm (66.58% of base)
         216 : 251496.dasm (91.14% of base)
         216 : 194592.dasm (12.80% of base)
         174 : 249196.dasm (20.67% of base)

Top file improvements (bytes):
         -26 : 166707.dasm (-10.36% of base)
         -13 : 248646.dasm (-3.06% of base)
         -10 : 248647.dasm (-2.35% of base)
          -5 : 166775.dasm (-0.69% of base)
          -4 : 194691.dasm (-0.35% of base)
          -3 : 168634.dasm (-1.91% of base)
          -3 : 168918.dasm (-2.75% of base)
          -3 : 168803.dasm (-1.91% of base)
          -3 : 168631.dasm (-1.91% of base)
          -3 : 168800.dasm (-2.75% of base)
          -3 : 168921.dasm (-1.91% of base)
          -3 : 168628.dasm (-2.75% of base)
          -3 : 168806.dasm (-1.91% of base)
          -3 : 168924.dasm (-1.91% of base)
          -3 : 241130.dasm (-0.99% of base)
          -3 : 168722.dasm (-2.75% of base)
          -3 : 168728.dasm (-1.91% of base)
          -3 : 239163.dasm (-4.76% of base)
          -3 : 168725.dasm (-1.91% of base)
          -2 : 241128.dasm (-0.77% of base)

70 total files with Code Size differences (20 improved, 50 regressed), 0 unchanged.

Top method regressions (bytes):
         314 (65.42% of base) : 194633.dasm - EMFloat:DoEmFloatIteration(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int,int):long
         310 (26.12% of base) : 169017.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168630.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168802.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 169110.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168724.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168920.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         281 ( 9.59% of base) : 248723.dasm - Benchstone.BenchI.MulMatrix:Inner(System.Int32[][],System.Int32[][],System.Int32[][])
         276 (85.98% of base) : 194632.dasm - EMFloat:SetupCPUEmFloatArrays(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int)
         267 (16.11% of base) : 168730.dasm - Helper:ValidateOUTER3(OUTER3,OUTER3,System.String):bool
         267 (16.11% of base) : 168808.dasm - Helper:ValidateOUTER3(OUTER3,OUTER3,System.String):bool
         267 (16.11% of base) : 169021.dasm - Helper:ValidateOUTER3(OUTER3,OUTER3,System.String):bool
         267 (16.11% of base) : 168926.dasm - Helper:ValidateOUTER3(OUTER3,OUTER3,System.String):bool
         267 (16.11% of base) : 169114.dasm - Helper:ValidateOUTER3(OUTER3,OUTER3,System.String):bool
         267 (16.11% of base) : 168636.dasm - Helper:ValidateOUTER3(OUTER3,OUTER3,System.String):bool
         259 (102.37% of base) : 213032.dasm - ArrayMarshal:IsCorrect(ArrayMarshal+S2[],ArrayMarshal+S2[]):bool
         249 (66.58% of base) : 167322.dasm - Internal.IL.EcmaMethodIL:GetExceptionRegions():Internal.IL.ILExceptionRegion[]:this
         216 (91.14% of base) : 251496.dasm - VectorMathTests.Program:sum(System.Numerics.Vector4[]):float
         216 (12.80% of base) : 194592.dasm - Huffman:DoHuffIteration(System.Byte[],System.Byte[],System.Byte[],int,int,huff_node[]):long
         174 (20.67% of base) : 249196.dasm - SimpleArray_01.Test:BadMatrixMul1()

Top method improvements (bytes):
         -26 (-10.36% of base) : 166707.dasm - Internal.TypeSystem.TypeSystemHelpers:RequiresSlotUnification(Internal.TypeSystem.MethodDesc):bool
         -13 (-3.06% of base) : 248646.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAv(int,System.Double[],System.Double[]):this
         -10 (-2.35% of base) : 248647.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAtv(int,System.Double[],System.Double[]):this
          -5 (-0.69% of base) : 166775.dasm - Internal.TypeSystem.MetadataVirtualMethodAlgorithm:ResolveInterfaceMethodToDefaultImplementationOnType(Internal.TypeSystem.MethodDesc,Internal.TypeSystem.MetadataType,byref):int
          -4 (-0.35% of base) : 194691.dasm - LUDecomp:build_problem(System.Double[][],int,System.Double[])
          -3 (-1.91% of base) : 168634.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-2.75% of base) : 168918.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
          -3 (-1.91% of base) : 168803.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -3 (-1.91% of base) : 168631.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -3 (-2.75% of base) : 168800.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
          -3 (-1.91% of base) : 168921.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -3 (-2.75% of base) : 168628.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
          -3 (-1.91% of base) : 168806.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-1.91% of base) : 168924.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-0.99% of base) : 241130.dasm - Vector3Test:VectorArray(float):int
          -3 (-2.75% of base) : 168722.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
          -3 (-1.91% of base) : 168728.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-4.76% of base) : 239163.dasm - BenchmarksGame.Fasta_1:MakeCumulative(BenchmarksGame.Fasta_1+Frequency[])
          -3 (-1.91% of base) : 168725.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -2 (-0.77% of base) : 241128.dasm - Vector4Test:VectorArray(float):int

Top method regressions (percentages):
         259 (102.37% of base) : 213032.dasm - ArrayMarshal:IsCorrect(ArrayMarshal+S2[],ArrayMarshal+S2[]):bool
         216 (91.14% of base) : 251496.dasm - VectorMathTests.Program:sum(System.Numerics.Vector4[]):float
         276 (85.98% of base) : 194632.dasm - EMFloat:SetupCPUEmFloatArrays(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int)
          49 (74.24% of base) : 81558.dasm - Test:Check(int)
         249 (66.58% of base) : 167322.dasm - Internal.IL.EcmaMethodIL:GetExceptionRegions():Internal.IL.ILExceptionRegion[]:this
         314 (65.42% of base) : 194633.dasm - EMFloat:DoEmFloatIteration(EMFloat+InternalFPF[],EMFloat+InternalFPF[],EMFloat+InternalFPF[],int,int):long
         123 (60.89% of base) : 246188.dasm - ToBoxOrNotToBox.Program:PerfTest1(int,int)
         151 (52.61% of base) : 213030.dasm - ArrayMarshal:NewS2arr(int,int,int,short,ushort,ubyte,byte,short,ushort,long,long,float,double):ArrayMarshal+S2[]
          28 (31.11% of base) : 228715.dasm - SciMark2.FFT:inverse(System.Double[])
          89 (27.73% of base) : 167364.dasm - Internal.IL.InstantiatedMethodIL:GetLocals():Internal.TypeSystem.LocalVariableDefinition[]:this
         310 (26.12% of base) : 169017.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168630.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168802.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 169110.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168724.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         310 (26.12% of base) : 168920.dasm - Helper:ValidateInnerArraySequential(InnerArraySequential,InnerArraySequential,System.String):bool
         174 (20.67% of base) : 249196.dasm - SimpleArray_01.Test:BadMatrixMul1()
         158 (19.90% of base) : 253494.dasm - MatrixMul.Test:MatrixMul()
         141 (16.34% of base) : 249197.dasm - SimpleArray_01.Test:BadMatrixMul2()
         267 (16.11% of base) : 168730.dasm - Helper:ValidateOUTER3(OUTER3,OUTER3,System.String):bool

Top method improvements (percentages):
         -26 (-10.36% of base) : 166707.dasm - Internal.TypeSystem.TypeSystemHelpers:RequiresSlotUnification(Internal.TypeSystem.MethodDesc):bool
          -3 (-4.76% of base) : 239163.dasm - BenchmarksGame.Fasta_1:MakeCumulative(BenchmarksGame.Fasta_1+Frequency[])
         -13 (-3.06% of base) : 248646.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAv(int,System.Double[],System.Double[]):this
          -3 (-2.75% of base) : 168918.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
          -3 (-2.75% of base) : 168800.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
          -3 (-2.75% of base) : 168628.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
          -3 (-2.75% of base) : 168722.dasm - Helper:NewInnerArraySequential(int,float,System.String):InnerArraySequential
         -10 (-2.35% of base) : 248647.dasm - BenchmarksGame.SpectralNorm_1:MultiplyAtv(int,System.Double[],System.Double[]):this
          -3 (-1.91% of base) : 168634.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-1.91% of base) : 168803.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -3 (-1.91% of base) : 168631.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -3 (-1.91% of base) : 168921.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -3 (-1.91% of base) : 168806.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-1.91% of base) : 168924.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-1.91% of base) : 168728.dasm - Helper:NewOUTER3(int,float,System.String,System.String):OUTER3
          -3 (-1.91% of base) : 168725.dasm - Helper:NewInnerArrayExplicit(int,float,System.String,System.String):InnerArrayExplicit
          -3 (-0.99% of base) : 241130.dasm - Vector3Test:VectorArray(float):int
          -2 (-0.77% of base) : 241128.dasm - Vector4Test:VectorArray(float):int
          -5 (-0.69% of base) : 166775.dasm - Internal.TypeSystem.MetadataVirtualMethodAlgorithm:ResolveInterfaceMethodToDefaultImplementationOnType(Internal.TypeSystem.MethodDesc,Internal.TypeSystem.MetadataType,byref):int
          -4 (-0.35% of base) : 194691.dasm - LUDecomp:build_problem(System.Double[][],int,System.Double[])

70 total methods with Code Size differences (20 improved, 50 regressed), 0 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 66954
Total bytes of diff: 74145
Total bytes of delta: 7191 (10.74% of base)
Total relative delta: 20.86
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
         528 : 2571.dasm (72.53% of base)
         450 : 25232.dasm (15.59% of base)
         293 : 92711.dasm (50.96% of base)
         274 : 73747.dasm (53.83% of base)
         271 : 171367.dasm (17.96% of base)
         241 : 204928.dasm (60.10% of base)
         224 : 171366.dasm (17.39% of base)
         188 : 21977.dasm (12.56% of base)
         171 : 181569.dasm (71.25% of base)
         168 : 75937.dasm (12.19% of base)
         162 : 44518.dasm (114.89% of base)
         160 : 151231.dasm (44.08% of base)
         155 : 95335.dasm (7.05% of base)
         152 : 84491.dasm (77.95% of base)
         139 : 216480.dasm (25.88% of base)
         139 : 45298.dasm (46.96% of base)
         138 : 73748.dasm (66.03% of base)
         134 : 181566.dasm (54.92% of base)
         134 : 52201.dasm (29.39% of base)
         131 : 22122.dasm (15.45% of base)

Top file improvements (bytes):
         -37 : 73754.dasm (-0.81% of base)
         -36 : 24021.dasm (-10.14% of base)
         -32 : 24016.dasm (-9.61% of base)
         -20 : 192694.dasm (-7.14% of base)
         -16 : 161256.dasm (-6.20% of base)
         -16 : 216474.dasm (-1.03% of base)
         -11 : 173459.dasm (-4.78% of base)
         -10 : 179730.dasm (-1.86% of base)
         -10 : 149598.dasm (-1.34% of base)
          -9 : 150742.dasm (-7.14% of base)
          -8 : 85767.dasm (-7.02% of base)
          -8 : 174207.dasm (-0.52% of base)
          -6 : 10430.dasm (-3.66% of base)
          -6 : 174026.dasm (-1.29% of base)
          -6 : 174027.dasm (-1.36% of base)
          -5 : 93729.dasm (-0.40% of base)
          -5 : 203938.dasm (-1.65% of base)
          -4 : 150744.dasm (-0.31% of base)
          -3 : 173392.dasm (-0.47% of base)
          -3 : 174233.dasm (-0.09% of base)

103 total files with Code Size differences (33 improved, 70 regressed), 8 unchanged.

Top method regressions (bytes):
         528 (72.53% of base) : 2571.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEPropertySymbol:GetParameters(Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEModuleSymbol,Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEPropertySymbol,Microsoft.CodeAnalysis.ParamInfo`1[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol][],Microsoft.CodeAnalysis.ParamInfo`1[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol][],byref):System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol]
         450 (15.59% of base) : 25232.dasm - System.Diagnostics.Tracing.EventProvider:WriteEvent(byref,long,long,long,System.Object[]):bool:this
         293 (50.96% of base) : 92711.dasm - System.Xml.Xsl.IlGen.XmlILVisitor:VisitChoice(System.Xml.Xsl.Qil.QilChoice):System.Xml.Xsl.Qil.QilNode:this
         274 (53.83% of base) : 73747.dasm - System.Data.Common.DbDataAdapter:UpdatedRowStatusErrors(System.Data.Common.RowUpdatedEventArgs,System.Data.Common.DbDataAdapter+BatchCommandInfo[],int):int:this
         271 (17.96% of base) : 171367.dasm - BatchBlockTargetCore:RetrievePostponedItemsNonGreedy(bool):this
         241 (60.10% of base) : 204928.dasm - System.Net.WebSockets.WebSocketBuffer:ValidateNativeBuffers(int,int,Interop+WebSocket+Buffer[],int):this
         224 (17.39% of base) : 171366.dasm - BatchBlockTargetCore:RetrievePostponedItemsGreedyBounded(bool):this
         188 (12.56% of base) : 21977.dasm - Microsoft.CodeAnalysis.CSharp.Binder:BindArrayCreationWithInitializer(Microsoft.CodeAnalysis.DiagnosticBag,Microsoft.CodeAnalysis.CSharp.Syntax.ExpressionSyntax,Microsoft.CodeAnalysis.CSharp.Syntax.InitializerExpressionSyntax,Microsoft.CodeAnalysis.CSharp.Symbols.ArrayTypeSymbol,System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.CSharp.BoundExpression],System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.CSharp.BoundExpression]):Microsoft.CodeAnalysis.CSharp.BoundArrayCreation:this
         171 (71.25% of base) : 181569.dasm - System.Reflection.TypeLoading.Ecma.EcmaCustomAttributeHelpers:ToApiForm(System.Collections.Generic.IList`1[System.Reflection.Metadata.CustomAttributeTypedArgument`1[System.Reflection.TypeLoading.RoType]]):System.Collections.Generic.IList`1[System.Reflection.CustomAttributeTypedArgument]
         168 (12.19% of base) : 75937.dasm - System.Data.Select:CreateIndex():this
         162 (114.89% of base) : 44518.dasm - System.Collections.Generic.NullableEqualityComparer`1:IndexOf(System.Nullable`1[System.Int32][],System.Nullable`1[System.Int32],int,int):int:this
         160 (44.08% of base) : 151231.dasm - Microsoft.CodeAnalysis.MetadataDecoder`5:DoPropertySignaturesMatch(Microsoft.CodeAnalysis.ParamInfo`1[System.__Canon][],Microsoft.CodeAnalysis.ParamInfo`1[System.__Canon][],bool,bool,bool):bool:this
         155 ( 7.05% of base) : 95335.dasm - System.Xml.Xsl.Xslt.XsltInput:GetAttributes(System.Xml.Xsl.Xslt.XsltInput+XsltAttribute[]):System.Xml.Xsl.Xslt.XsltInput+ContextInfo:this
         152 (77.95% of base) : 84491.dasm - System.Speech.Internal.Synthesis.EngineSiteSapi:System.Speech.Internal.Synthesis.ISpEngineSite.AddEvents(System.Speech.Internal.Synthesis.SpeechEventSapi[],int):this
         139 (25.88% of base) : 216480.dasm - System.Runtime.Caching.ExpiresBucket:Expand():this
         139 (46.96% of base) : 45298.dasm - AttributeSorter:Sort():this
         138 (66.03% of base) : 73748.dasm - System.Data.Common.DbDataAdapter:UpdatedRowStatusContinue(System.Data.Common.RowUpdatedEventArgs,System.Data.Common.DbDataAdapter+BatchCommandInfo[],int):int:this
         134 (54.92% of base) : 181566.dasm - System.Reflection.TypeLoading.Ecma.EcmaCustomAttributeHelpers:ToApiForm(System.Collections.Generic.IList`1[System.Reflection.Metadata.CustomAttributeNamedArgument`1[System.Reflection.TypeLoading.RoType]],System.Type):System.Collections.Generic.IList`1[System.Reflection.CustomAttributeNamedArgument]
         134 (29.39% of base) : 52201.dasm - System.Data.OleDb.OleDbCommand:ApplyParameterBindings(System.Data.Common.UnsafeNativeMethods+ICommandWithParameters,System.Data.OleDb.tagDBPARAMBINDINFO[]):this
         131 (15.45% of base) : 22122.dasm - Microsoft.CodeAnalysis.CSharp.Binder:GetParamArrayArgument(Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol,System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.TypedConstant],int,int,Microsoft.CodeAnalysis.CSharp.Conversions):Microsoft.CodeAnalysis.TypedConstant

Top method improvements (bytes):
         -37 (-0.81% of base) : 73754.dasm - System.Data.Common.DbDataAdapter:Update(System.Data.DataRow[],System.Data.Common.DataTableMapping):int:this
         -36 (-10.14% of base) : 24021.dasm - System.Collections.Generic.GenericEqualityComparer`1:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
         -32 (-9.61% of base) : 24016.dasm - System.Collections.Generic.ObjectEqualityComparer`1:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
         -20 (-7.14% of base) : 192694.dasm - Internal.Cryptography.Helpers:FixupKeyParity(System.Byte[]):System.Byte[]
         -16 (-6.20% of base) : 161256.dasm - System.Drawing.Drawing2D.PathGradientBrush:set_SurroundColors(System.Drawing.Color[]):this
         -16 (-1.03% of base) : 216474.dasm - System.Runtime.Caching.ExpiresBucket:FlushExpiredItems(System.DateTime,bool):int:this
         -11 (-4.78% of base) : 173459.dasm - Internal.TypeSystem.TypeSystemHelpers:RequiresSlotUnification(Internal.TypeSystem.MethodDesc):bool
         -10 (-1.86% of base) : 179730.dasm - System.Security.Cryptography.Pkcs.SignedCms:AddCertificate(System.Security.Cryptography.X509Certificates.X509Certificate2):this
         -10 (-1.34% of base) : 149598.dasm - Microsoft.CodeAnalysis.VersionHelper:TryParse(System.String,bool,ushort,byref):bool
          -9 (-7.14% of base) : 150742.dasm - Microsoft.CodeAnalysis.CommonReferenceManager`2:CheckCircularReference(System.Collections.Generic.IReadOnlyList`1[Microsoft.CodeAnalysis.CommonReferenceManager`2+AssemblyReferenceBinding[System.__Canon, System.__Canon][]]):bool
          -8 (-7.02% of base) : 85767.dasm - System.Reflection.Internal.ObjectPool`1:Allocate():System.__Canon:this
          -8 (-0.52% of base) : 174207.dasm - Internal.IL.ILStackHelper:ComputeMaxStack(Internal.IL.MethodIL):int
          -6 (-3.66% of base) : 10430.dasm - Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.SyntaxList:List(Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.CSharpSyntaxNode[],int):Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.CSharpSyntaxNode
          -6 (-1.29% of base) : 174026.dasm - Internal.TypeSystem.DefType:ComputeStaticFieldLayout(int):this
          -6 (-1.36% of base) : 174027.dasm - Internal.TypeSystem.DefType:ComputeInstanceLayout(int):this
          -5 (-0.40% of base) : 93729.dasm - System.Xml.Xsl.Runtime.XmlQueryStaticData:GetObjectData(byref,byref):this
          -5 (-1.65% of base) : 203938.dasm - Internal.Cryptography.Pal.ChainPal:GetChainStatusInformation(int):System.Security.Cryptography.X509Certificates.X509ChainStatus[]
          -4 (-0.31% of base) : 150744.dasm - Microsoft.CodeAnalysis.CommonReferenceManager`2:ReuseAssemblySymbolsWithNoPiaLocalTypes(Microsoft.CodeAnalysis.CommonReferenceManager`2+BoundInputAssembly[System.__Canon, System.__Canon][],System.__Canon[],System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.CommonReferenceManager`2+AssemblyData[System.__Canon, System.__Canon]],int):bool:this
          -3 (-0.47% of base) : 173392.dasm - Internal.TypeSystem.MetadataVirtualMethodAlgorithm:ResolveInterfaceMethodToDefaultImplementationOnType(Internal.TypeSystem.MethodDesc,Internal.TypeSystem.MetadataType,byref):int
          -3 (-0.09% of base) : 174233.dasm - Internal.IL.MethodILDebugView:get_Disassembly():System.String:this

Top method regressions (percentages):
         162 (114.89% of base) : 44518.dasm - System.Collections.Generic.NullableEqualityComparer`1:IndexOf(System.Nullable`1[System.Int32][],System.Nullable`1[System.Int32],int,int):int:this
         116 (89.23% of base) : 75940.dasm - System.Data.Select:CompareClosestCandidateIndexDesc(System.Data.IndexField[]):int:this
         152 (77.95% of base) : 84491.dasm - System.Speech.Internal.Synthesis.EngineSiteSapi:System.Speech.Internal.Synthesis.ISpEngineSite.AddEvents(System.Speech.Internal.Synthesis.SpeechEventSapi[],int):this
         528 (72.53% of base) : 2571.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEPropertySymbol:GetParameters(Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEModuleSymbol,Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEPropertySymbol,Microsoft.CodeAnalysis.ParamInfo`1[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol][],Microsoft.CodeAnalysis.ParamInfo`1[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol][],byref):System.Collections.Immutable.ImmutableArray`1[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol]
         171 (71.25% of base) : 181569.dasm - System.Reflection.TypeLoading.Ecma.EcmaCustomAttributeHelpers:ToApiForm(System.Collections.Generic.IList`1[System.Reflection.Metadata.CustomAttributeTypedArgument`1[System.Reflection.TypeLoading.RoType]]):System.Collections.Generic.IList`1[System.Reflection.CustomAttributeTypedArgument]
         138 (66.03% of base) : 73748.dasm - System.Data.Common.DbDataAdapter:UpdatedRowStatusContinue(System.Data.Common.RowUpdatedEventArgs,System.Data.Common.DbDataAdapter+BatchCommandInfo[],int):int:this
          63 (61.76% of base) : 204826.dasm - System.Net.WebSockets.WebSocketProtocolComponent:MarshalHttpHeaders(long,int):Interop+WebSocket+HttpHeader[]
         241 (60.10% of base) : 204928.dasm - System.Net.WebSockets.WebSocketBuffer:ValidateNativeBuffers(int,int,Interop+WebSocket+Buffer[],int):this
          51 (60.00% of base) : 73746.dasm - System.Data.Common.DbDataAdapter:UpdatedRowStatusSkip(System.Data.Common.DbDataAdapter+BatchCommandInfo[],int):int:this
         130 (58.82% of base) : 182039.dasm - System.Reflection.TypeLoading.CustomAttributeHelpers:CloneForApiReturn(System.Collections.Generic.IList`1[System.Reflection.CustomAttributeNamedArgument]):System.Collections.ObjectModel.ReadOnlyCollection`1[System.Reflection.CustomAttributeNamedArgument]
         107 (58.47% of base) : 43851.dasm - System.Collections.Generic.Dictionary`2:CopyTo(System.Collections.Generic.KeyValuePair`2[System.UInt64, System.Char][],int):this
          93 (58.13% of base) : 44836.dasm - System.Collections.Generic.GenericEqualityComparer`1:IndexOf(System.ValueTuple`3[System.IntPtr, System.__Canon, System.Int32][],System.ValueTuple`3[System.IntPtr, System.__Canon, System.Int32],int,int):int:this
         114 (57.00% of base) : 182040.dasm - System.Reflection.TypeLoading.CustomAttributeHelpers:CloneForApiReturn(System.Collections.Generic.IList`1[System.Reflection.CustomAttributeTypedArgument]):System.Collections.ObjectModel.ReadOnlyCollection`1[System.Reflection.CustomAttributeTypedArgument]
          97 (55.43% of base) : 44834.dasm - System.Collections.Generic.EqualityComparer`1:IndexOf(System.Resources.ResourceLocator[],System.Resources.ResourceLocator,int,int):int:this
          95 (55.23% of base) : 44715.dasm - ValueCollection:CopyTo(System.Char[],int):this
         134 (54.92% of base) : 181566.dasm - System.Reflection.TypeLoading.Ecma.EcmaCustomAttributeHelpers:ToApiForm(System.Collections.Generic.IList`1[System.Reflection.Metadata.CustomAttributeNamedArgument`1[System.Reflection.TypeLoading.RoType]],System.Type):System.Collections.Generic.IList`1[System.Reflection.CustomAttributeNamedArgument]
         274 (53.83% of base) : 73747.dasm - System.Data.Common.DbDataAdapter:UpdatedRowStatusErrors(System.Data.Common.RowUpdatedEventArgs,System.Data.Common.DbDataAdapter+BatchCommandInfo[],int):int:this
         118 (51.30% of base) : 23975.dasm - System.Collections.Generic.Dictionary`2:CopyTo(System.Collections.Generic.KeyValuePair`2[System.__Canon, System.__Canon][],int):this
          63 (51.22% of base) : 179690.dasm - System.Security.Cryptography.Pkcs.SignerInfo:FindAttributeIndexByOid(System.Security.Cryptography.Asn1.AttributeAsn[],System.Security.Cryptography.Oid,int):int
         293 (50.96% of base) : 92711.dasm - System.Xml.Xsl.IlGen.XmlILVisitor:VisitChoice(System.Xml.Xsl.Qil.QilChoice):System.Xml.Xsl.Qil.QilNode:this

Top method improvements (percentages):
         -36 (-10.14% of base) : 24021.dasm - System.Collections.Generic.GenericEqualityComparer`1:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
         -32 (-9.61% of base) : 24016.dasm - System.Collections.Generic.ObjectEqualityComparer`1:IndexOf(System.__Canon[],System.__Canon,int,int):int:this
         -20 (-7.14% of base) : 192694.dasm - Internal.Cryptography.Helpers:FixupKeyParity(System.Byte[]):System.Byte[]
          -9 (-7.14% of base) : 150742.dasm - Microsoft.CodeAnalysis.CommonReferenceManager`2:CheckCircularReference(System.Collections.Generic.IReadOnlyList`1[Microsoft.CodeAnalysis.CommonReferenceManager`2+AssemblyReferenceBinding[System.__Canon, System.__Canon][]]):bool
          -8 (-7.02% of base) : 85767.dasm - System.Reflection.Internal.ObjectPool`1:Allocate():System.__Canon:this
         -16 (-6.20% of base) : 161256.dasm - System.Drawing.Drawing2D.PathGradientBrush:set_SurroundColors(System.Drawing.Color[]):this
         -11 (-4.78% of base) : 173459.dasm - Internal.TypeSystem.TypeSystemHelpers:RequiresSlotUnification(Internal.TypeSystem.MethodDesc):bool
          -6 (-3.66% of base) : 10430.dasm - Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.SyntaxList:List(Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.CSharpSyntaxNode[],int):Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.CSharpSyntaxNode
          -2 (-2.78% of base) : 33665.dasm - MultiElementAsyncLocalValueMap:TryGetValue(System.Threading.IAsyncLocal,byref):bool:this
          -2 (-2.67% of base) : 193636.dasm - System.Net.ContextFlagsAdapterPal:GetInteropFromContextFlagsPal(int):int
          -2 (-2.67% of base) : 83190.dasm - System.Net.ContextFlagsAdapterPal:GetInteropFromContextFlagsPal(int):int
          -2 (-2.67% of base) : 215902.dasm - System.Net.ContextFlagsAdapterPal:GetInteropFromContextFlagsPal(int):int
          -2 (-2.56% of base) : 205146.dasm - System.Net.ContextFlagsAdapterPal:GetInteropFromContextFlagsPal(int):int
         -10 (-1.86% of base) : 179730.dasm - System.Security.Cryptography.Pkcs.SignedCms:AddCertificate(System.Security.Cryptography.X509Certificates.X509Certificate2):this
          -5 (-1.65% of base) : 203938.dasm - Internal.Cryptography.Pal.ChainPal:GetChainStatusInformation(int):System.Security.Cryptography.X509Certificates.X509ChainStatus[]
          -6 (-1.36% of base) : 174027.dasm - Internal.TypeSystem.DefType:ComputeInstanceLayout(int):this
          -1 (-1.35% of base) : 215903.dasm - System.Net.ContextFlagsAdapterPal:GetContextFlagsPalFromInterop(int):int
          -1 (-1.35% of base) : 83191.dasm - System.Net.ContextFlagsAdapterPal:GetContextFlagsPalFromInterop(int):int
          -1 (-1.35% of base) : 193637.dasm - System.Net.ContextFlagsAdapterPal:GetContextFlagsPalFromInterop(int):int
         -10 (-1.34% of base) : 149598.dasm - Microsoft.CodeAnalysis.VersionHelper:TryParse(System.String,bool,ushort,byref):bool

103 total methods with Code Size differences (33 improved, 70 regressed), 8 unchanged.

```

</details>

--------------------------------------------------------------------------------

```

Summary of Code Size diffs:
(Lower is better)

Total bytes of base: 70371
Total bytes of diff: 77796
Total bytes of delta: 7425 (10.55% of base)
Total relative delta: 25.59
    diff is a regression.
    relative diff is a regression.
```
<details>

<summary>Detail diffs</summary>

```

Top file regressions (bytes):
         491 : 45068.dasm (69.55% of base)
         310 : 145953.dasm (43.79% of base)
         299 : 203675.dasm (61.40% of base)
         260 : 117169.dasm (43.12% of base)
         249 : 160923.dasm (66.58% of base)
         216 : 220005.dasm (74.23% of base)
         184 : 20289.dasm (127.78% of base)
         163 : 152884.dasm (76.53% of base)
         160 : 20380.dasm (21.22% of base)
         160 : 20410.dasm (70.18% of base)
         158 : 40560.dasm (15.24% of base)
         156 : 115022.dasm (11.76% of base)
         156 : 132472.dasm (41.71% of base)
         154 : 20309.dasm (105.48% of base)
         147 : 41852.dasm (76.17% of base)
         144 : 20362.dasm (50.35% of base)
         144 : 40912.dasm (41.14% of base)
         140 : 214346.dasm (24.39% of base)
         140 : 214409.dasm (24.39% of base)
         139 : 117168.dasm (73.54% of base)

Top file improvements (bytes):
         -71 : 208247.dasm (-6.07% of base)
         -42 : 117208.dasm (-0.83% of base)
         -26 : 161794.dasm (-10.36% of base)
         -23 : 20296.dasm (-9.24% of base)
         -23 : 20312.dasm (-9.24% of base)
         -23 : 20302.dasm (-9.39% of base)
         -23 : 20299.dasm (-9.16% of base)
         -22 : 20270.dasm (-13.17% of base)
         -22 : 20276.dasm (-13.17% of base)
         -22 : 20306.dasm (-6.43% of base)
         -20 : 216496.dasm (-6.94% of base)
         -17 : 148574.dasm (-0.33% of base)
         -15 : 49464.dasm (-0.54% of base)
         -15 : 8645.dasm (-2.91% of base)
         -11 : 35759.dasm (-6.25% of base)
         -10 : 20287.dasm (-7.04% of base)
          -8 : 151645.dasm (-7.69% of base)
          -5 : 144804.dasm (-0.35% of base)
          -5 : 221018.dasm (-1.40% of base)
          -5 : 161876.dasm (-0.70% of base)

123 total files with Code Size differences (36 improved, 87 regressed), 5 unchanged.

Top method regressions (bytes):
         491 (69.55% of base) : 45068.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEPropertySymbol:GetParameters(Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEModuleSymbol,Microsoft.CodeAnalysis.CSharp.Symbols.Metadata.PE.PEPropertySymbol,Microsoft.CodeAnalysis.ParamInfo`1[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol][],Microsoft.CodeAnalysis.ParamInfo`1[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol][],byref):System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.CSharp, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]
         310 (43.79% of base) : 145953.dasm - System.Xml.Xsl.IlGen.XmlILVisitor:VisitChoice(System.Xml.Xsl.Qil.QilChoice):System.Xml.Xsl.Qil.QilNode:this
         299 (61.40% of base) : 203675.dasm - System.Net.WebSockets.WebSocketBuffer:ValidateNativeBuffers(int,int,Interop+WebSocket+Buffer[],int):this
         260 (43.12% of base) : 117169.dasm - System.Data.Common.DbDataAdapter:UpdatedRowStatusErrors(System.Data.Common.RowUpdatedEventArgs,System.Data.Common.DbDataAdapter+BatchCommandInfo[],int):int:this
         249 (66.58% of base) : 160923.dasm - Internal.IL.EcmaMethodIL:GetExceptionRegions():Internal.IL.ILExceptionRegion[]:this
         216 (74.23% of base) : 220005.dasm - System.Security.Cryptography.Pkcs.SignerInfo:FindAttributeIndexByOid(System.Security.Cryptography.Asn1.AttributeAsn[],System.Security.Cryptography.Oid,int):int
         184 (127.78% of base) : 20289.dasm - System.Collections.Generic.NullableEqualityComparer`1[Byte][System.Byte]:IndexOf(System.Nullable`1[System.Byte][],System.Nullable`1[Byte],int,int):int:this
         163 (76.53% of base) : 152884.dasm - System.Speech.Internal.Synthesis.EngineSiteSapi:System.Speech.Internal.Synthesis.ISpEngineSite.AddEvents(System.Speech.Internal.Synthesis.SpeechEventSapi[],int):this
         160 (21.22% of base) : 20380.dasm - System.Collections.Generic.Dictionary`2[Byte,Nullable`1][System.Byte,System.Nullable`1[System.Int32]]:System.Collections.ICollection.CopyTo(System.Array,int):this
         160 (70.18% of base) : 20410.dasm - System.Collections.Generic.Dictionary`2[Byte,Nullable`1][System.Byte,System.Nullable`1[System.Int32]]:CopyTo(System.Collections.Generic.KeyValuePair`2[System.Byte,System.Nullable`1[System.Int32]][],int):this
         158 (15.24% of base) : 40560.dasm - Microsoft.CodeAnalysis.CSharp.Emit.CSharpDefinitionMap:CreateLocalSlotMap(Microsoft.CodeAnalysis.Emit.EditAndContinueMethodDebugInformation,System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.LocalInfo`1[[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]], Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):System.Collections.Immutable.ImmutableArray`1[EncLocalInfo]
         156 (11.76% of base) : 115022.dasm - System.Data.Select:CreateIndex():this
         156 (41.71% of base) : 132472.dasm - AttributeSorter:Sort():this
         154 (105.48% of base) : 20309.dasm - System.Collections.Generic.ObjectEqualityComparer`1[Vector`1][System.Numerics.Vector`1[System.Single]]:IndexOf(System.Numerics.Vector`1[System.Single][],System.Numerics.Vector`1[Single],int,int):int:this
         147 (76.17% of base) : 41852.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.AnonymousTypeDescriptor:Equals(Microsoft.CodeAnalysis.CSharp.Symbols.AnonymousTypeDescriptor,bool,bool):bool:this
         144 (50.35% of base) : 20362.dasm - System.Collections.Generic.Dictionary`2[__Canon,Nullable`1][System.__Canon,System.Nullable`1[System.Int32]]:CopyTo(System.Collections.Generic.KeyValuePair`2[System.__Canon,System.Nullable`1[System.Int32]][],int):this
         144 (41.14% of base) : 40912.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.AnonymousTypeManager:IsSameType(Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,bool,bool):bool
         140 (24.39% of base) : 214346.dasm - System.Runtime.Caching.ExpiresBucket:Expand():this
         140 (24.39% of base) : 214409.dasm - System.Runtime.Caching.UsageBucket:Expand():this
         139 (73.54% of base) : 117168.dasm - System.Data.Common.DbDataAdapter:UpdatedRowStatusContinue(System.Data.Common.RowUpdatedEventArgs,System.Data.Common.DbDataAdapter+BatchCommandInfo[],int):int:this

Top method improvements (bytes):
         -71 (-6.07% of base) : 208247.dasm - System.Net.Security.SslStreamCertificateContext:.ctor(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.X509Certificates.X509Certificate2[],System.Net.Security.SslCertificateTrust):this
         -42 (-0.83% of base) : 117208.dasm - System.Data.Common.DbDataAdapter:Update(System.Data.DataRow[],System.Data.Common.DataTableMapping):int:this
         -26 (-10.36% of base) : 161794.dasm - Internal.TypeSystem.TypeSystemHelpers:RequiresSlotUnification(Internal.TypeSystem.MethodDesc):bool
         -23 (-9.24% of base) : 20296.dasm - System.Collections.Generic.ObjectEqualityComparer`1[Byte][System.Byte]:IndexOf(System.Byte[],ubyte,int,int):int:this
         -23 (-9.24% of base) : 20312.dasm - System.Collections.Generic.ObjectEqualityComparer`1[Int64][System.Int64]:IndexOf(System.Int64[],long,int,int):int:this
         -23 (-9.39% of base) : 20302.dasm - System.Collections.Generic.ObjectEqualityComparer`1[Int32][System.Int32]:IndexOf(System.Int32[],int,int,int):int:this
         -23 (-9.16% of base) : 20299.dasm - System.Collections.Generic.ObjectEqualityComparer`1[Int16][System.Int16]:IndexOf(System.Int16[],short,int,int):int:this
         -22 (-13.17% of base) : 20270.dasm - System.Collections.Generic.GenericEqualityComparer`1[Byte][System.Byte]:IndexOf(System.Byte[],ubyte,int,int):int:this
         -22 (-13.17% of base) : 20276.dasm - System.Collections.Generic.GenericEqualityComparer`1[Int16][System.Int16]:IndexOf(System.Int16[],short,int,int):int:this
         -22 (-6.43% of base) : 20306.dasm - System.Collections.Generic.ObjectEqualityComparer`1[Double][System.Double]:IndexOf(System.Double[],double,int,int):int:this
         -20 (-6.94% of base) : 216496.dasm - Internal.Cryptography.Helpers:FixupKeyParity(System.Byte[]):System.Byte[]
         -17 (-0.33% of base) : 148574.dasm - System.Reflection.PortableExecutable.PEBuilder:WritePEHeader(System.Reflection.Metadata.BlobBuilder,System.Reflection.PortableExecutable.PEDirectoriesBuilder,System.Collections.Immutable.ImmutableArray`1[SerializedSection]):this
         -15 (-0.54% of base) : 49464.dasm - Microsoft.CodeAnalysis.VisualBasic.IteratorAndAsyncCaptureWalker:Analyze(Microsoft.CodeAnalysis.VisualBasic.FlowAnalysisInfo,Microsoft.CodeAnalysis.DiagnosticBag):Result
         -15 (-2.91% of base) : 8645.dasm - Microsoft.FSharp.Collections.ArrayModule:Zip(System.Byte[],System.Nullable`1[System.Int32][]):System.Tuple`2[System.Byte,System.Nullable`1[System.Int32]][]
         -11 (-6.25% of base) : 35759.dasm - Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.SyntaxList:List(Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.CSharpSyntaxNode[],int):Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.CSharpSyntaxNode
         -10 (-7.04% of base) : 20287.dasm - System.Collections.Generic.GenericEqualityComparer`1[Int64][System.Int64]:IndexOf(System.Int64[],long,int,int):int:this
          -8 (-7.69% of base) : 151645.dasm - System.Reflection.Internal.ObjectPool`1[__Canon][System.__Canon]:Allocate():System.__Canon:this
          -5 (-0.35% of base) : 144804.dasm - System.Xml.Xsl.Runtime.XmlQueryStaticData:GetObjectData(byref,byref):this
          -5 (-1.40% of base) : 221018.dasm - Internal.Cryptography.Pal.ChainPal:GetChainStatusInformation(int):System.Security.Cryptography.X509Certificates.X509ChainStatus[]
          -5 (-0.70% of base) : 161876.dasm - Internal.TypeSystem.MetadataVirtualMethodAlgorithm:ResolveInterfaceMethodToDefaultImplementationOnType(Internal.TypeSystem.MethodDesc,Internal.TypeSystem.MetadataType,byref):int

Top method regressions (percentages):
         184 (127.78% of base) : 20289.dasm - System.Collections.Generic.NullableEqualityComparer`1[Byte][System.Byte]:IndexOf(System.Nullable`1[System.Byte][],System.Nullable`1[Byte],int,int):int:this
         154 (105.48% of base) : 20309.dasm - System.Collections.Generic.ObjectEqualityComparer`1[Vector`1][System.Numerics.Vector`1[System.Single]]:IndexOf(System.Numerics.Vector`1[System.Single][],System.Numerics.Vector`1[Single],int,int):int:this
         108 (91.53% of base) : 115019.dasm - System.Data.Select:CompareClosestCandidateIndexDesc(System.Data.IndexField[]):int:this
         122 (81.88% of base) : 41851.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.AnonymousTypeDescriptor:Equals(Microsoft.CodeAnalysis.CSharp.Symbols.AnonymousTypeDescriptor):bool:this
         163 (76.53% of base) : 152884.dasm - System.Speech.Internal.Synthesis.EngineSiteSapi:System.Speech.Internal.Synthesis.ISpEngineSite.AddEvents(System.Speech.Internal.Synthesis.SpeechEventSapi[],int):this
         147 (76.17% of base) : 41852.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.AnonymousTypeDescriptor:Equals(Microsoft.CodeAnalysis.CSharp.Symbols.AnonymousTypeDescriptor,bool,bool):bool:this
          82 (74.55% of base) : 20283.dasm - System.Collections.Generic.GenericEqualityComparer`1[Vector`1][System.Numerics.Vector`1[System.Single]]:IndexOf(System.Numerics.Vector`1[System.Single][],System.Numerics.Vector`1[Single],int,int):int:this
         216 (74.23% of base) : 220005.dasm - System.Security.Cryptography.Pkcs.SignerInfo:FindAttributeIndexByOid(System.Security.Cryptography.Asn1.AttributeAsn[],System.Security.Cryptography.Oid,int):int
         139 (73.54% of base) : 117168.da…

* Simplify setting GTF_IND_NONFAULTING

3 years agoexclude UTF8 string marshallers from cg2 (#55624)
Manish Godse [Thu, 15 Jul 2021 03:22:41 +0000 (20:22 -0700)]
exclude UTF8 string marshallers from cg2 (#55624)

* exclude UTF8 and Unicode string marshallers from cg2

* keep unicodestringmarshaller

The non-pinned cases which are not supported will throw

* excluding one non-r2r case

All calls to InteropHelpers should now be under !READYTORUN