Viktor Hofer [Mon, 12 Apr 2021 16:37:58 +0000 (18:37 +0200)]
Use nuget standardized properties (#51014)
* Use nuget standardized properties
Requires https://github.com/dotnet/arcade/pull/7212. Helps with the pkgproj to csproj conversion.
Pavel Savara [Mon, 12 Apr 2021 16:37:16 +0000 (18:37 +0200)]
testing Unicode roundtrip (#51105)
* testing unicode roundtrip
* code review feedback
* fix Narrow No-Break Space
dotnet-maestro[bot] [Mon, 12 Apr 2021 16:35:30 +0000 (16:35 +0000)]
[main] Update dependencies from dotnet/runtime dotnet/runtime-assets (#51110)
[main] Update dependencies from dotnet/runtime dotnet/runtime-assets
Eirik Tsarpalis [Mon, 12 Apr 2021 16:06:01 +0000 (17:06 +0100)]
System.Text.Json: Add IAsyncEnumerable support (#50778)
* implement IAsyncEnumerable JsonConverter
* Prototype of IAsyncEnumerable deserialize with Stream
* Use a Queue + test buffersizes
* Avoid 1 item lag
* Add support for Serialize
* Misc cleanup on test
* extend DeserializeAsyncEnumerable test coverage
also removes SerializeAsyncEnumerable components
* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IAsyncEnumerableConverterFactory.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* address feedback
* tweak test buffer values
* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IAsyncEnumerableOfTConverter.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IAsyncEnumerableOfTConverter.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* address feedback
* increase delayInterval in serialization tests
* address feedback
* address feedback
* add test on exceptional IAsyncDisposable disposal
* address feedback
* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ReadAsyncState.cs
Co-authored-by: Layomi Akinrinade <layomia@gmail.com>
* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/WriteStack.cs
Co-authored-by: Layomi Akinrinade <layomia@gmail.com>
* fix build and remove dead code
* address feedback
* Revert unneeded JsonClassInfo.ElementType workaround
* remove state allocation on async deserialization methods
* remove tooling artifacts
* address feedback
* reset AsyncEnumeratorIsPendingCompletion field
Co-authored-by: Steve Harter <steveharter@users.noreply.github.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Layomi Akinrinade <layomia@gmail.com>
Jan Kotas [Mon, 12 Apr 2021 15:26:15 +0000 (05:26 -1000)]
Pass CORINFO_CALLINFO_ALLOWINSTPARAM to speculative eeGetCallInfo to make it cheaper (#51088)
Pavel Savara [Mon, 12 Apr 2021 15:17:20 +0000 (17:17 +0200)]
make emsdk installation instructions clear on which version need to be installed (#51071)
* make emsdk installation instructions clear on which version need to be installed
* whitespace
* Radek's feedback
Alexander Köplinger [Mon, 12 Apr 2021 14:15:13 +0000 (16:15 +0200)]
Revert "Switch to VS preview pool for public builds (#50993)" (#51103)
Thays Grazia [Mon, 12 Apr 2021 13:43:17 +0000 (10:43 -0300)]
Print Native Stacktrace on mono_llvm_cpp_throw_exception when profiler is enabled. (#51026)
* Print call stack when profile is enabled in a mono_llvm_cpp_throw_exception (void) this was asked by @jeromelaban
* Update src/mono/mono/mini/llvm-runtime.cpp
Co-authored-by: Jérôme Laban <jlaban@gmail.com>
* As suggested by @jeromelaban
Co-authored-by: Jérôme Laban <jlaban@gmail.com>
Steve Pfister [Mon, 12 Apr 2021 13:32:33 +0000 (09:32 -0400)]
Include Mono in the name of all Mono runtime packs (#50327)
We previously only used this naming on platforms that already had coreclr as an option. Using Mono in the name all the time will make what runtime you're dealing with less ambiguous.
Fixes #49718
Wei Zheng [Mon, 12 Apr 2021 10:25:24 +0000 (18:25 +0800)]
Fix DispatchProxy not working with in parameters (#49214)
* Fix DispatchProxy not working with in parameters
* Correct typo
Co-authored-by: Christopher Watford <christopher.watford@ge.com>
* Fixed Calling Convention
Removed unneeded mods
Co-authored-by: Christopher Watford <christopher.watford@ge.com>
Krzysztof Wicher [Mon, 12 Apr 2021 10:09:47 +0000 (12:09 +0200)]
Add ILLink annotations to Microsoft.CSharp (#50239)
* Add ILLink annotations to Microsoft.CSharp
* apply PR feedback
* Apply PR feedback
* Fix missed comment
* apply pr feedback
Johan Lorensson [Mon, 12 Apr 2021 06:16:39 +0000 (08:16 +0200)]
Run processenvironment test in separate process. (#51022)
Tomáš Rylek [Mon, 12 Apr 2021 01:31:06 +0000 (18:31 -0700)]
Fix handling of unmanaged member function pointers in Crossgen2 (#51089)
Fixes: https://github.com/dotnet/runtime/issues/51007
Without setting found to true we lose the transformed calling
convention (StdcallMemberFunction) and we end up lying to JIT
that getSize is an unmanaged static function pointer so that
JIT doesn't emit proper code for passing the "this" pointer
to the PInvoke.
Thanks
Tomas
Stephen Toub [Sun, 11 Apr 2021 21:30:47 +0000 (17:30 -0400)]
Cast to uint instead of nuint in {ReadOnly}Span.{Try}CopyTo (#51083)
Stephen Toub [Sun, 11 Apr 2021 17:52:54 +0000 (13:52 -0400)]
Add internal String.{Try}CopyTo and use in a few places in corelib (#51062)
* Add internal String.{Try}CopyTo and use in a few places in corelib
We can use in more if it's made public.
* Apply suggestions from code review
Co-authored-by: Levi Broderick <GrabYourPitchforks@users.noreply.github.com>
Co-authored-by: Levi Broderick <GrabYourPitchforks@users.noreply.github.com>
Jan Kotas [Sun, 11 Apr 2021 17:52:44 +0000 (07:52 -1000)]
Simplify RuntimeType.ClearCache (#51070)
dotnet-maestro[bot] [Sun, 11 Apr 2021 16:51:34 +0000 (16:51 +0000)]
[main] Update dependencies from dotnet/arcade (#51074)
[main] Update dependencies from dotnet/arcade
- revert changes to publish-using-darc.ps1
https://github.com/dotnet/arcade/issues/6987
John Tur [Sun, 11 Apr 2021 09:02:43 +0000 (05:02 -0400)]
Move some Marshal functions to shared partition (#51045)
Geoff Kizer [Sun, 11 Apr 2021 08:40:06 +0000 (01:40 -0700)]
some small proxy-related fixes (#50770)
* add tests
* add and use DoProxyAuth
* don't apply max connections to ProxyConnect connections
* make DoProxyAuth a property
* disable WinHttpHandler for new tests
* improve test robustness
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Stephen Toub [Sun, 11 Apr 2021 02:59:43 +0000 (22:59 -0400)]
Fix Random.Next(int, int) on 64-bit when max-min overflows int.MaxValue (#50922)
* Fix Random.Next(int, int) on 64-bit when max-min overflow int
The fix is a missing cast. Everything else is asserts and test changes.
* Update Random.cs
Vladimir Sadov [Sun, 11 Apr 2021 02:13:09 +0000 (19:13 -0700)]
Add a dummy item to SingleFileHostIncludeFilename to make sure the opt-in list is present. (#51030)
Andy Ayers [Sun, 11 Apr 2021 01:03:39 +0000 (18:03 -0700)]
JIT: fix osr gc info this reporting (#51057)
With the advent of #38229 an optimized method may need to report generics
context via `this` while the un-optimzed version did not need to report.
This impacts OSR, which previously was always trying to use the unoptimized
root method frame reporting. Now under OSR we must sometimes add a slot to
the OSR frame instead.
Addresses one of the failure cases in #43534.
dotnet-maestro[bot] [Sat, 10 Apr 2021 23:56:09 +0000 (19:56 -0400)]
[main] Update dependencies from dotnet/xharness dotnet/runtime-assets (#51049)
* Update dependencies from https://github.com/dotnet/xharness build
20210409.2
Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Xunit
From Version 1.0.0-prerelease.21207.1 -> To Version 1.0.0-prerelease.21209.2
* Update dependencies from https://github.com/dotnet/runtime-assets build
20210409.2
System.ComponentModel.TypeConverter.TestData , System.Drawing.Common.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Windows.Extensions.TestData
From Version 6.0.0-beta.21174.2 -> To Version 6.0.0-beta.21209.2
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Elinor Fung [Sat, 10 Apr 2021 17:45:47 +0000 (10:45 -0700)]
[AndroidCrypto] Handle setting non-default SslProtocols (#50987)
Andy Ayers [Sat, 10 Apr 2021 16:16:15 +0000 (09:16 -0700)]
Update logic around BB_MAX_WEIGHT (#51027)
Consider any weight greater or equal to be a max weight. Rule of thumb
is that you can assign BB_MAX_WEIGHT but for comparsions one should always
use an inequality or call the helper method.
Fixes #50808.
Tomáš Rylek [Sat, 10 Apr 2021 10:16:36 +0000 (03:16 -0700)]
Make composite MVID checks resilient to failures (#51018)
I noticed that several ALC-related CoreCLR tests fail in Crossgen2
composite mode. I tracked this down to a missing null check.
In addition to that, we were erroneously putting the composite
image to the validation list even when it had been loaded previously.
Thanks
Tomas
Sung Yoon Whang [Sat, 10 Apr 2021 07:45:34 +0000 (00:45 -0700)]
change GC committed bytes unit to MB (#51031)
* change GC committed bytes unit to MB
* change other memory counters to use 1_000_000
Jeremy Koritzinsky [Sat, 10 Apr 2021 04:12:48 +0000 (21:12 -0700)]
Fix incremental CMake command line check on Windows (#51035)
David Fowler [Sat, 10 Apr 2021 04:03:04 +0000 (21:03 -0700)]
Fixed regression caused by performance change (#51032)
- Pass empty array instead of null for validations
Jeremy Koritzinsky [Sat, 10 Apr 2021 03:39:24 +0000 (20:39 -0700)]
Add CI validation leg for source-build against an image with the tools our source-build partners use to ensure we don't break our source-build partners. (#50811)
* Add CI validation leg for source-build against an image with the tools our source-build partners use to ensure we don't break our source-build partners.
* Update global-build.yml
* Update global-build.yml
* Update centos image.
* Explicitly invoke scl enable llvm-toolset-7.0 since docker doesn't do it for command executed in a running container.
* Skip mono in the source-build build.
* Set param in platform-matrix.yml
Jeremy Koritzinsky [Sat, 10 Apr 2021 01:15:26 +0000 (18:15 -0700)]
Install crossgen, jitinterface, clrjit into the sharedframework folder in crosscomponent build. (#51004)
* Install crossgen, jitinterface, clrjit into the sharedframework folder.
* Remove unneeded dependency
* Add dac/dbi to cross-component sharedFramework folder.
* Don't install the cross-os dac in crosscomponents in cross-bitness scenarios.
* Jit Interface doesn't need to go into the sharedFramework folder (it wasn't there in 6.0.0p3)
Tomáš Rylek [Sat, 10 Apr 2021 00:08:48 +0000 (17:08 -0700)]
Mark the Crossgen2 regression test GitHub_49982 ilasm-incompatible (#51005)
SingleAccretion [Fri, 9 Apr 2021 23:20:53 +0000 (02:20 +0300)]
Removed must-init requirement for GS Cookies (#50702)
The cookie is always initialized in the prolog, where no user code is allowed.
There should be no GC concerns either as the prolog is not interruptible.
Andy Ayers [Fri, 9 Apr 2021 23:19:08 +0000 (16:19 -0700)]
JIT: Fix loop unscaling computations (#50807)
Changes made in #50633 were simply wrong, and lead to division by
infinite values.
Fixes #50743.
Zoltan Varga [Fri, 9 Apr 2021 21:36:05 +0000 (17:36 -0400)]
[mono][aot] Handle out of range indexes in the generated get_method () functions, they (#50217)
can happen since mini-llvm.c and aot-compiler.c can compute different table sizes.
Fixes https://github.com/dotnet/runtime/issues/50202.
Eirik Tsarpalis [Fri, 9 Apr 2021 21:32:27 +0000 (22:32 +0100)]
Implement Enumerable.*By methods (DistinctBy, ExceptBy, IntersectBy, UnionBy, MinBy, MaxBy) (#50335)
* Implement Enumerable.*By operators
* apply feedback
* Update src/libraries/System.Linq/src/System/Linq/Distinct.cs
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Levi Broderick [Fri, 9 Apr 2021 21:04:54 +0000 (14:04 -0700)]
Make TranscodingStream resilient against partial reads (#50886)
Stephen Toub [Fri, 9 Apr 2021 20:28:57 +0000 (16:28 -0400)]
Add MetadataUpdateHandlerAttribute (#50954)
* Add MetadataUpdateHandlerAttribute
And at least the beginning of reflection cache clearing support.
* Address PR feedback
* Update src/libraries/System.Runtime.Loader/ref/System.Runtime.Loader.cs
Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
Egor Bogatov [Fri, 9 Apr 2021 18:47:30 +0000 (21:47 +0300)]
JIT: Catch "cns".Length also in Morph (#50318)
Co-authored-by: Andy Ayers <andya@microsoft.com>
Andrew Au [Fri, 9 Apr 2021 17:43:21 +0000 (10:43 -0700)]
Make sure separated_poh_p and use_large_pages_p works together (#50665)
Tomas Weinfurt [Fri, 9 Apr 2021 16:29:05 +0000 (09:29 -0700)]
basic certificate handling for quic (#50613)
* basic certificate handling for quic
* fix linux
* fix macOS
* feedback from review
* feedback from review
Alexander Köplinger [Fri, 9 Apr 2021 14:13:24 +0000 (16:13 +0200)]
Switch to VS preview pool for public builds (#50993)
* Switch to VS preview pool for public builds
Should help mitigate https://github.com/dotnet/runtime/issues/50746
* Run init-vs-env.cmd for Browser wasm Windows build
The BuildPool.Windows.10.Amd64.VS2019.Pre.Open queue doesn't have ninja installed outside of VS so it's only available in PATH if you run the init-vs-env.cmd script.
Radek Doulik [Fri, 9 Apr 2021 13:02:54 +0000 (15:02 +0200)]
[wasm] Copy icu libs to runtime pack (#50991)
On Windows we were missing native icu libs in the runtime pack.
Alexander Köplinger [Fri, 9 Apr 2021 11:20:18 +0000 (13:20 +0200)]
Cleanup PlatformSpecific/SkipOnMono attributes that skip a platform (#50907)
We have a bunch of test assemblies that don't make sense on some platforms, e.g. Browser.
Right now we're skipping them via `[SkipOnMono("reason", TestPlatforms.Browser)]` but there's nothing that inherently ties this to Mono other than the current implementation.
The more generic `SkipOnPlatform` attribute can be used instead.
We can also use it in places where we do `[PlatformSpecific(~TestPlatforms....)]` to avoid the double inversion.
Michal Strehovský [Fri, 9 Apr 2021 08:58:05 +0000 (10:58 +0200)]
Consider failing tests a failure (#50898)
When running `build libs.tests -test` locally, I see the build succeeding even though there's failing tests. This seems to be caused by Helix specific logic in the runner template. It should not apply when we're not running in Helix.
Bruce Forstall [Fri, 9 Apr 2021 01:48:59 +0000 (18:48 -0700)]
Fix GC hole on arm32 (#50759)
On arm32 only, in cases where we have STOREIND(GT_LCL_VAR_ADDR) of
a GC var, the JIT was generating (e.g.):
```
add r1, sp, 48 // [V27 tmp23]
str r0, [r1]
```
If this was a local variable birth, codegen would correctly process the lifetime. However,
we would have created an instrDesc that knows nothing about the local var, so can't emit
any GC transitions during emission.
It turns out this is also sub-optimal code; we don't need to create a byref of the
address of a local when we can encode the address directly in an addressing mode, as:
```
str r0, [sp+48] // [V27 tmp23]
```
There was already code on arm64 to handle this case, by making the LCL_VAR_ADDR contained
and using the emitIns_S_R / emitIns_R_S functions, which create instrDescs with the necessary
local tracking info.
I added an assert, on both arm32 and arm64, that non-contained local var address nodes must
refer to untracked locals. Otherwise, we could potentially create addresses where we don't
properly track the GC info.
There are quite a few diffs, avoiding creating the local var address. There are several cases
I noted in the Microsoft.CodeAnalysis assemblies of bad GC info now fixed (this is where the
initial failure came from, that the Runtime_45557 test was derived from).
From libraries crossgen:
```
Summary of Code Size diffs:
(Lower is better)
Total bytes of base: 255542
Total bytes of diff: 251924
Total bytes of delta: -3618 (-1.42% of base)
diff is an improvement.
```
<details>
<summary>Detail diffs</summary>
```
Top file improvements (bytes):
-18 : 133274.dasm (-0.95% of base)
-16 : 136993.dasm (-1.44% of base)
-14 : 127453.dasm (-1.35% of base)
-12 : 126915.dasm (-1.15% of base)
-12 : 63852.dasm (-1.71% of base)
-12 : 137357.dasm (-3.59% of base)
-12 : 7927.dasm (-2.29% of base)
-12 : 39850.dasm (-1.11% of base)
-10 : 132884.dasm (-2.11% of base)
-10 : 10262.dasm (-0.95% of base)
-10 : 131112.dasm (-7.35% of base)
-10 : 74924.dasm (-4.50% of base)
-8 : 10344.dasm (-5.48% of base)
-8 : 10435.dasm (-6.67% of base)
-8 : 56301.dasm (-1.08% of base)
-8 : 56683.dasm (-0.31% of base)
-8 : 56686.dasm (-0.49% of base)
-8 : 10341.dasm (-5.48% of base)
-8 : 10346.dasm (-5.06% of base)
-8 : 126900.dasm (-0.43% of base)
1107 total files with Code Size differences (1107 improved, 0 regressed), 0 unchanged.
Top method improvements (bytes):
-18 (-0.95% of base) : 133274.dasm - Microsoft.CodeAnalysis.CSharp.Binder:CreateUserDefinedConversion(Microsoft.CodeAnalysis.CSharp.CSharpSyntaxNode,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.Conversion,bool,Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol,Microsoft.CodeAnalysis.DiagnosticBag):Microsoft.CodeAnalysis.CSharp.BoundExpression:this
-16 (-1.44% of base) : 136993.dasm - Enumerator:MoveNext():bool:this
-14 (-1.35% of base) : 127453.dasm - Microsoft.CodeAnalysis.CSharp.OverloadResolution:IsApplicable(Microsoft.CodeAnalysis.CSharp.Symbol,EffectiveParameters,Microsoft.CodeAnalysis.CSharp.AnalyzedArguments,System.Collections.Immutable.ImmutableArray`1[Int32],bool,bool,bool,byref):Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult:this
-12 (-1.15% of base) : 126915.dasm - Microsoft.CodeAnalysis.CSharp.OverloadResolution:IsMemberApplicableInExpandedForm(System.__Canon,System.__Canon,Microsoft.CodeAnalysis.ArrayBuilder`1[[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],Microsoft.CodeAnalysis.CSharp.AnalyzedArguments,bool,byref):Microsoft.CodeAnalysis.CSharp.MemberResolutionResult`1[__Canon]:this
-12 (-1.71% of base) : 63852.dasm - System.Security.Cryptography.RSAKeyFormatHelper:FromPkcs1PrivateKey(System.ReadOnlyMemory`1[Byte],byref,byref)
-12 (-3.59% of base) : 137357.dasm - System.Reflection.Metadata.Ecma335.ControlFlowBuilder:AddExceptionRegion(ushort,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.Ecma335.LabelHandle,System.Reflection.Metadata.EntityHandle):this
-12 (-2.29% of base) : 7927.dasm - Microsoft.CodeAnalysis.Emit.AddedOrChangedMethodInfo:MapTypes(Microsoft.CodeAnalysis.Emit.SymbolMatcher):Microsoft.CodeAnalysis.Emit.AddedOrChangedMethodInfo:this
-12 (-1.11% of base) : 39850.dasm - Internal.Cryptography.Pal.OpenSslX509CertificateReader:CopyWithPrivateKey(System.Security.Cryptography.RSA):Internal.Cryptography.ICertificatePal:this
-10 (-2.11% of base) : 132884.dasm - Microsoft.CodeAnalysis.CSharp.OverloadResolution:IsConstructorApplicableInExpandedForm(Microsoft.CodeAnalysis.CSharp.Symbols.MethodSymbol,Microsoft.CodeAnalysis.CSharp.AnalyzedArguments,byref):Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult:this
-10 (-0.95% of base) : 10262.dasm - Microsoft.CodeAnalysis.Emit.DeltaMetadataWriter:SerializeLocalVariablesSignature(Microsoft.Cci.IMethodBody):int:this
-10 (-7.35% of base) : 131112.dasm - Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult:BadArgumentConversions(System.Collections.Immutable.ImmutableArray`1[Int32],System.Collections.Immutable.ImmutableArray`1[Int32],System.Collections.Immutable.ImmutableArray`1[Conversion]):Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult
-10 (-4.50% of base) : 74924.dasm - System.MemoryExtensions:AsMemory(System.__Canon[],System.Range):System.Memory`1[__Canon]
-8 (-5.48% of base) : 10344.dasm - Microsoft.CodeAnalysis.Diagnostics.CompilationWithAnalyzers:GetAnalyzerSyntaxDiagnosticsCoreAsync(Microsoft.CodeAnalysis.SyntaxTree,System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.DiagnosticAnalyzer, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],System.Threading.CancellationToken):System.Threading.Tasks.Task`1[[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostic, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a]]:this
-8 (-6.67% of base) : 10435.dasm - Microsoft.CodeAnalysis.Diagnostics.AnalysisState:OnCompilationEventsGeneratedAsync(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.CompilationEvent, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver,System.Threading.CancellationToken):System.Threading.Tasks.Task:this
-8 (-1.08% of base) : 56301.dasm - Microsoft.CodeAnalysis.VisualBasic.Symbols.MethodSignatureComparer:HaveSameParameterTypes(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.VisualBasic.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.VisualBasic, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],Microsoft.CodeAnalysis.VisualBasic.Symbols.TypeSubstitution,System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.VisualBasic.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.VisualBasic, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],Microsoft.CodeAnalysis.VisualBasic.Symbols.TypeSubstitution,bool,bool):bool
-8 (-0.31% of base) : 56683.dasm - Microsoft.CodeAnalysis.VisualBasic.Symbols.ConstraintsHelper:ReportIndirectConstraintConflicts(Microsoft.CodeAnalysis.VisualBasic.Symbols.SourceTypeParameterSymbol,Microsoft.CodeAnalysis.ArrayBuilder`1[TypeParameterDiagnosticInfo],byref)
-8 (-0.49% of base) : 56686.dasm - Microsoft.CodeAnalysis.VisualBasic.Symbols.MethodSignatureComparer:DetailedParameterCompare(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.VisualBasic.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.VisualBasic, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],byref,System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.VisualBasic.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.VisualBasic, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],byref,int,int):int
-8 (-5.48% of base) : 10341.dasm - Microsoft.CodeAnalysis.Diagnostics.CompilationWithAnalyzers:GetAnalyzerCompilationDiagnosticsCoreAsync(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.DiagnosticAnalyzer, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],System.Threading.CancellationToken):System.Threading.Tasks.Task`1[[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostic, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a]]:this
-8 (-5.06% of base) : 10346.dasm - Microsoft.CodeAnalysis.Diagnostics.CompilationWithAnalyzers:GetAnalyzerSemanticDiagnosticsCoreAsync(Microsoft.CodeAnalysis.SemanticModel,System.Nullable`1[TextSpan],System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.DiagnosticAnalyzer, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],System.Threading.CancellationToken):System.Threading.Tasks.Task`1[[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostic, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a]]:this
-8 (-0.43% of base) : 126900.dasm - Microsoft.CodeAnalysis.CSharp.OverloadResolutionResult`1[__Canon][System.__Canon]:ReportDiagnostics(Microsoft.CodeAnalysis.CSharp.Binder,Microsoft.CodeAnalysis.Location,Microsoft.CodeAnalysis.DiagnosticBag,System.String,Microsoft.CodeAnalysis.CSharp.BoundExpression,Microsoft.CodeAnalysis.CSharp.AnalyzedArguments,System.Collections.Immutable.ImmutableArray`1[__Canon],Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,Microsoft.CodeAnalysis.CSharp.CSharpSyntaxNode,bool):this
Top method improvements (percentages):
-6 (-13.64% of base) : 135707.dasm - System.Reflection.Metadata.BlobBuilder:WriteBytes(System.Collections.Immutable.ImmutableArray`1[Byte],int,int):this
-4 (-13.33% of base) : 17244.dasm - System.Collections.Immutable.ImmutableArray`1[__Canon][System.__Canon]:op_Equality(System.Nullable`1[ImmutableArray`1],System.Nullable`1[ImmutableArray`1]):bool
-4 (-13.33% of base) : 17245.dasm - System.Collections.Immutable.ImmutableArray`1[__Canon][System.__Canon]:op_Inequality(System.Nullable`1[ImmutableArray`1],System.Nullable`1[ImmutableArray`1]):bool
-2 (-10.00% of base) : 138130.dasm - System.Reflection.Internal.ImmutableByteArrayInterop:DangerousGetUnderlyingArray(System.Collections.Immutable.ImmutableArray`1[Byte]):System.Byte[]
-4 (-8.33% of base) : 75404.dasm - System.Range:Equals(System.Range):bool:this
-10 (-7.35% of base) : 131112.dasm - Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult:BadArgumentConversions(System.Collections.Immutable.ImmutableArray`1[Int32],System.Collections.Immutable.ImmutableArray`1[Int32],System.Collections.Immutable.ImmutableArray`1[Conversion]):Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult
-8 (-6.67% of base) : 10435.dasm - Microsoft.CodeAnalysis.Diagnostics.AnalysisState:OnCompilationEventsGeneratedAsync(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.CompilationEvent, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver,System.Threading.CancellationToken):System.Threading.Tasks.Task:this
-8 (-5.80% of base) : 130961.dasm - Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult:NormalForm(System.Collections.Immutable.ImmutableArray`1[Int32],System.Collections.Immutable.ImmutableArray`1[Conversion],bool):Microsoft.CodeAnalysis.CSharp.MemberAnalysisResult
-8 (-5.56% of base) : 10340.dasm - Microsoft.CodeAnalysis.Diagnostics.CompilationWithAnalyzers:GetAnalyzerCompilationDiagnosticsAsync(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.DiagnosticAnalyzer, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],System.Threading.CancellationToken):System.Threading.Tasks.Task`1[[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostic, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a]]:this
-8 (-5.48% of base) : 10344.dasm - Microsoft.CodeAnalysis.Diagnostics.CompilationWithAnalyzers:GetAnalyzerSyntaxDiagnosticsCoreAsync(Microsoft.CodeAnalysis.SyntaxTree,System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.DiagnosticAnalyzer, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],System.Threading.CancellationToken):System.Threading.Tasks.Task`1[[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostic, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a]]:this
-8 (-5.48% of base) : 10341.dasm - Microsoft.CodeAnalysis.Diagnostics.CompilationWithAnalyzers:GetAnalyzerCompilationDiagnosticsCoreAsync(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostics.DiagnosticAnalyzer, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]],System.Threading.CancellationToken):System.Threading.Tasks.Task`1[[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.Diagnostic, Microsoft.CodeAnalysis, Version=1.1.0.0, Culture=neutral, PublicKeyToken=
31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=
b03f5f7f11d50a3a]]:this
-6 (-5.45% of base) : 166017.dasm - Newtonsoft.Json.Bson.BsonDataReader:DoReadAsDecimalAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[Nullable`1]:this
-6 (-5.45% of base) : 166019.dasm - Newtonsoft.Json.Bson.BsonDataReader:DoReadAsDoubleAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[Nullable`1]:this
-6 (-5.45% of base) : 166021.dasm - Newtonsoft.Json.Bson.BsonDataReader:DoReadAsInt32Async(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[Nullable`1]:this
-6 (-5.45% of base) : 166024.dasm - Newtonsoft.Json.Bson.BsonDataReader:ReaderReadAndAssertAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this
-6 (-5.45% of base) : 166067.dasm - Newtonsoft.Json.Bson.BsonDataWriter:CompleteAndCloseOutputAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this
-6 (-5.45% of base) : 93077.dasm - Newtonsoft.Json.JsonTextReader:ParseConstructorAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this
-6 (-5.45% of base) : 93084.dasm - Newtonsoft.Json.JsonTextReader:ReadNumberIntoBufferAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this
-6 (-5.45% of base) : 93085.dasm - Newtonsoft.Json.JsonTextReader:ParseUnquotedPropertyAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task:this
-6 (-5.45% of base) : 93086.dasm - Newtonsoft.Json.JsonTextReader:ReadNullCharAsync(System.Threading.CancellationToken):System.Threading.Tasks.Task`1[Boolean]:this
1107 total methods with Code Size differences (1107 improved, 0 regressed), 0 unchanged.
```
</details>
--------------------------------------------------------------------------------
Fixes #46023
Elinor Fung [Fri, 9 Apr 2021 01:37:21 +0000 (18:37 -0700)]
Switch to ProjectExclusions for assembly-level ActiveIssue tests on browser (#50891)
Stephen Toub [Fri, 9 Apr 2021 01:34:50 +0000 (21:34 -0400)]
Avoid exceptions from FileVersionInfo.TryLoadManagedAssemblyMetadata on Unix (#50237)
Geoff Kizer [Fri, 9 Apr 2021 01:34:23 +0000 (18:34 -0700)]
ensure that sync Connect calls ShouldRetrySyncOperation (#50788)
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Bruce Forstall [Thu, 8 Apr 2021 21:58:45 +0000 (14:58 -0700)]
Fix superpmi.py private store filtering (#50863)
* Fix superpmi.py private store filtering
Given a private store root, we need to filter to just
JIT/EE version, target OS, and target architecture, as we do for
Azure storage.
Previously, all files in the private store would always be considered,
no matter those settings.
* Remove unnecessary `lower()`
erhanatesoglu [Thu, 8 Apr 2021 21:56:01 +0000 (14:56 -0700)]
Fixed broken link (#50964)
The link to xunit on github has changed.
Fan Yang [Thu, 8 Apr 2021 19:19:20 +0000 (15:19 -0400)]
Add design document for Mobile runtimeconfig.json host configuration (#50744)
* Add design document for Mobile runtimeconfig.json host configuration
* Remove tailing space
* Address review feedbacks
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
* Add the missing word
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
* Remove more tailing spaces
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update docs/design/mono/mobile-runtimeconfig-json.md
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Address more review feedbacks
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
Elinor Fung [Thu, 8 Apr 2021 17:20:15 +0000 (10:20 -0700)]
[AndroidCrypto] Basic SSL stream implementation (#50519)
dotnet-maestro[bot] [Thu, 8 Apr 2021 17:00:00 +0000 (17:00 +0000)]
[main] Update dependencies from dotnet/arcade (#50901)
[main] Update dependencies from dotnet/arcade
- revert changes to publish-using-darc.ps1
https://github.com/dotnet/arcade/issues/6987
Andrew Au [Thu, 8 Apr 2021 16:49:13 +0000 (09:49 -0700)]
Make some region parameters configurable (#50603)
smdn [Thu, 8 Apr 2021 15:39:59 +0000 (00:39 +0900)]
Set LC_ALL=C before running ping process in Ping.Send() (#50696)
* Add tests for ping command with locale environment variables.
* Set LC_ALL=C before running ping process.
ping command output is affected by locale environment variables.
This will cause an exception in ParsePingUtilityOutput().
Set LC_ALL=C to get the same output regardless of the environment variables.
Fix #50363.
David Fowler [Thu, 8 Apr 2021 15:16:53 +0000 (08:16 -0700)]
Disposing scopes more than once should work (#50852)
- Recently introduced a regression where disposing DI scopes multiple times throws.
Maxim Lipnin [Thu, 8 Apr 2021 14:11:07 +0000 (17:11 +0300)]
Fix target OS case-sensitivity (#50732)
Tom Deseyn [Thu, 8 Apr 2021 13:45:08 +0000 (15:45 +0200)]
cruntime/*printf*: free temporary string buffers also on failure (#50469)
Radek Doulik [Thu, 8 Apr 2021 12:17:06 +0000 (14:17 +0200)]
[wasm] Add targets to run samples (#50244)
Add `RunSample` targets to wasm samples projects.
Mention how to run the samples in README
dotnet-maestro[bot] [Thu, 8 Apr 2021 11:26:18 +0000 (11:26 +0000)]
[main] Update dependencies from dotnet/runtime dotnet/arcade dotnet/icu dotnet/xharness dotnet/llvm-project (#50733)
[main] Update dependencies from dotnet/runtime dotnet/arcade dotnet/icu dotnet/xharness dotnet/llvm-project
- Revert changes to publish-using-darc.ps1
https://github.com/dotnet/arcade/issues/6987
- revert changes to publish-using-darc.ps1
https://github.com/dotnet/arcade/issues/6987
Michal Strehovský [Thu, 8 Apr 2021 10:44:53 +0000 (12:44 +0200)]
Make ModuleTests.ResolveField/Method actually test something (#50280)
* See if ModuleTests.ResolveField does anything
* Yup, it wasn't testing anything
* Update ModuleTests.cs
Adam Sitnik [Thu, 8 Apr 2021 10:40:17 +0000 (12:40 +0200)]
Disable Net5CompatFileStream by default (#50166)
Jose Perez Rodriguez [Thu, 8 Apr 2021 07:19:27 +0000 (00:19 -0700)]
Resolve ILLink warnings on System.Private.DataContractSerialization Part 1; Json) (#50619)
* Resolve ILLink warnings on System.Private.DataContractSerialization (Part 1; Json)
* Marking other two constructors as Unsafe
* Refactor GetInvokeMethod into a single suppressed call
Michal Strehovský [Thu, 8 Apr 2021 07:13:27 +0000 (09:13 +0200)]
Fix handling of not found exported types (#50845)
This was missed in #50437.
Wonder if we should have just introduced a new overload of GetType that returns `object`. This "return resolution failure that we then need to not forget to check" looks like a potential bug farm.
```csharp
public MetadataType GetType(string nameSpace, string name, bool throwIfNotFound = true)
{
/* the obvious implementation that calls the virtual method */
}
public abstract object GetType(string nameSpace, string name, NotFoundBehavior notFoundBehavior)
```
Sergey Andreenko [Thu, 8 Apr 2021 04:41:37 +0000 (21:41 -0700)]
Fix contained LCL_VAR_ADDR in RMW. (#50669)
* Add repro test.
* Fix the bug.
* change class name in the test
Bruce Forstall [Wed, 7 Apr 2021 22:17:31 +0000 (15:17 -0700)]
Update build-runtime.cmd help documentation (#50829)
* Update build-runtime.cmd help documentation
Add documentation for `-component`.
Remove unused `-priority` processing: that was for when this build
script could pass through options to the tests build script.
* Update src/coreclr/build-runtime.cmd
Co-authored-by: Jeremy Koritzinsky <jkoritzinsky@gmail.com>
Co-authored-by: Jeremy Koritzinsky <jkoritzinsky@gmail.com>
Elinor Fung [Wed, 7 Apr 2021 20:59:03 +0000 (13:59 -0700)]
Clarify instructions for building individual test with native dependency (#50869)
Prashanth Govindarajan [Wed, 7 Apr 2021 20:31:24 +0000 (13:31 -0700)]
Delete infra changes (#50789)
* Delete infra changes from https://github.com/dotnet/runtime/pull/48527
* sq
Bruce Forstall [Wed, 7 Apr 2021 20:26:35 +0000 (13:26 -0700)]
Fix JIT rolling build for new build-runtime script arguments (#50876)
Adjust for https://github.com/dotnet/runtime/pull/49906
Radek Doulik [Wed, 7 Apr 2021 20:04:53 +0000 (22:04 +0200)]
[wasm] Set __DistroRid on Windows to browser-wasm (#50842)
Ankit Jain [Wed, 7 Apr 2021 17:51:38 +0000 (13:51 -0400)]
[wasm] Fix order of include paths, to have the obj dir first (#50303)
* [wasm] Fix order of include paths, to have the obj dir first
this regressed recently, and we started using `pinvoke-table.h`, and
`icall-table.h` from the runtime pack instead of from the obj dir.
* [wasm] Don't include pinvoke-table.h in the runtime pack.
`pinvoke-table.h` is generated when building the native files for wasm.
They are not required in the runtime pack, as any wasm app build needing
to do native relinking would be generating one of it's own.
* Fix the property name
Radek Doulik [Wed, 7 Apr 2021 17:31:53 +0000 (19:31 +0200)]
[wasm] Fix debug build of AOT cross compiler (#50418)
For mono AOT cross compiler we use llvm libraries
from `runtime.win-x64.microsoft.netcore.runtime.mono.llvm.sdk` package.
These are built in Release configuration. On windows we get
linker errors when mixing them with obj files compiled with debug flags.
To avoid that, build the AOT cross compiler always as in Release
configuration.
Example of the errors:
LLVMSupport.lib(Unicode.cpp.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in monosgen-2.0.lib(mini-llvm-cpp.cpp.obj)
LLVMSupport.lib(Unicode.cpp.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MTd_StaticDebug' in monosgen-2.0.lib(mini-llvm-cpp.cpp.obj)
Martin Costello [Wed, 7 Apr 2021 17:25:47 +0000 (18:25 +0100)]
Fix outdated comment (#50834)
Fix comments that refer to a method that is no longer in the same file.
Ankit Jain [Wed, 7 Apr 2021 17:06:55 +0000 (13:06 -0400)]
[wasm][tests] Add properties to allow passing args to xharness (#50678)
* [wasm][tests] Add properties to allow passing args to xharness
New properties:
- `$(WasmXHarnessArgs)`
- `$(WasmXHarnessMonoArgs)`
- `$(WasmTestAppArgs)`
Xharness command line is built with these:
`dotnet xharness wasm test .. $(WasmXHarnessArgs) .. -- $(WasmXHarnessMonoArgs) .. --run .. $(WasmTestAppArgs)`
* [wasm][tests] extract wasm bits into tests.wasm.targets
* [wasm] set EMSDK_PATH for makefile run-tests- targets
* [wasm] Update target dependencies for wasm
* Don't overwrite RunScriptCommand, thus fixing wasm build tests
* Track property name changes
Benjamin Bartels [Wed, 7 Apr 2021 16:35:42 +0000 (17:35 +0100)]
Vectorized common String.Split() paths (#38001)
* Vectorized String.Split()
* Fixed variable name
* Update src/libraries/System.Private.CoreLib/src/System/String.Manipulation.cs
Co-authored-by: Günther Foidl <gue@korporal.at>
* Update src/libraries/System.Private.CoreLib/src/System/String.Manipulation.cs
Co-authored-by: Günther Foidl <gue@korporal.at>
* Applied Review Feedback
* Update src/libraries/System.Private.CoreLib/src/System/String.Manipulation.cs
Co-authored-by: Günther Foidl <gue@korporal.at>
* Applied Review Feedback
* Built branchless version with help of @gfoidl
* Update src/libraries/System.Private.CoreLib/src/System/String.Manipulation.cs
Co-authored-by: Günther Foidl <gue@korporal.at>
* Removed nullable separator parameters
* Refactored MakeSeparatorList
* Fixed mistakenly removed comments
* Removed dependency on BMI2 PEXT instruction
* Fixed mistaken use of Vector<ushort>.Count
* Lowered string.Split() vectorization dependency from Avx2 to SSE41
* Added Sse.IsSupported check
* Updated IsSupported check to match highest used ISA
* Fixed possible cause for failing tests
Co-authored-by: Günther Foidl <gue@korporal.at>
Jeremy Koritzinsky [Wed, 7 Apr 2021 16:30:00 +0000 (09:30 -0700)]
Fix binplacing symbol files. (#50819)
Jeremy Koritzinsky [Wed, 7 Apr 2021 16:29:20 +0000 (09:29 -0700)]
Move type check to after the null ref branch in out marshalling of blittable classes. (#50735)
Jeremy Koritzinsky [Wed, 7 Apr 2021 16:24:50 +0000 (09:24 -0700)]
Remove extraneous CMake version requirement. (#50805)
Ankit Jain [Wed, 7 Apr 2021 15:33:28 +0000 (11:33 -0400)]
[wasm] Remove unncessary condition for EMSDK (#50810)
We check for `emsdk` is much more granular way now, and at the points
where it will actually be used. So, remove these stale early checks for
`emsdk`.
Fixes https://github.com/dotnet/runtime/issues/50801
Kunal Pathak [Wed, 7 Apr 2021 15:30:17 +0000 (08:30 -0700)]
Add loop alignment stats to JitLogCsv (#50624)
* Add loop alignment stats
* Include the stats only in DEBUG mode
* jit format
Eric Erhardt [Wed, 7 Apr 2021 12:30:06 +0000 (07:30 -0500)]
Resolve ILLink warnings in System.Diagnostics.DiagnosticSource (#50265)
* Resolve ILLink warnings in System.Diagnostics.DiagnosticSource
Contributes to #45623
1. Mark DiagnosticSource.Write(string,object) as RequiresUnreferencedCode
2. Suppress the warnings for any .NET libraries that call the DiagnosticSource.Write() API, and annotate the .NET types being passed in to preserve their important properties.
- This was done for HttpClient. ASP.NET and EF will need separate changes when those assemblies are made trim compatible
3. Annotate Activity and its small closure of types (ActivityLink, ActivityEvent, ActivityContext, etc) to ensure none of those properties are trimmed.
4. Suppress trim warnings inside DiagnosticSourceEventSource since the public Write method is marked with RequiresUnreferencedCode.
Stephen Toub [Wed, 7 Apr 2021 11:58:45 +0000 (07:58 -0400)]
Avoid unnecessary closures/delegates in Process (#50496)
Tomáš Rylek [Wed, 7 Apr 2021 10:35:47 +0000 (03:35 -0700)]
Fix for field layout verification across version bubble boundary (#50364)
* Fix for field layout verification across version bubble boundary
When verifying field offset consistency, we shouldn't be checking
base class size when the base class doesn't belong to the current
version bubble. I have fixed this by adding a special case for
the existing fixup encoding indicated by base class size being
zero. I have also created a simple regression test that was previously
failing when run against the framework compiled with CG2 assembly
by assembly.
I have fixed several other corner field layout cases - we shouldn't
be 8-aligning the base class on x86, zero-sized base classes with
explicit layout are treated as if they are 1 byte long, improved
offset bias handling based on parallel corerun / crossgen2 debugging.
Thanks
Tomas
Egor Bogatov [Wed, 7 Apr 2021 09:05:27 +0000 (12:05 +0300)]
JIT: Enable CSE for VectorX.Create (#50644)
dotnet-maestro[bot] [Wed, 7 Apr 2021 08:18:59 +0000 (10:18 +0200)]
[main] Update dependencies from mono/linker (#50779)
Microsoft.NET.ILLink.Tasks
From Version 6.0.100-preview.2.21203.1 -> To Version 6.0.100-preview.2.21205.2
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Zoltan Varga [Wed, 7 Apr 2021 07:26:48 +0000 (03:26 -0400)]
[mono] More domain cleanup (#50771)
* [mono] Remove appdomains_list variable, it shouldn't be needed.
* Remove some GC domain code.
* Remove domains from sre.c.
* Remove domains from the jit info code.
* Remove more domain usage from the JIT code.
Aaron Robinson [Wed, 7 Apr 2021 04:32:41 +0000 (21:32 -0700)]
Race condition in Mock reference tracker runtime with GC. (#50804)
Elinor Fung [Wed, 7 Apr 2021 04:11:04 +0000 (21:11 -0700)]
Remove IAssemblyName (and various fusion remnants) (#50755)
Aaron Robinson [Wed, 7 Apr 2021 02:15:11 +0000 (19:15 -0700)]
Disable failing test for GCStress. (#50828)
Matt Johnson-Pint [Wed, 7 Apr 2021 02:14:41 +0000 (19:14 -0700)]
[WASM] Use consistent display names for UTC time zone (#50650)
Alexander Köplinger [Tue, 6 Apr 2021 22:58:00 +0000 (00:58 +0200)]
Fix to build mono on Windows with ninja by default as well (#50793)
This got broken by https://github.com/dotnet/runtime/commit/
8c2158f9fe12c82cd3c0a7f4150773654bc78aaf since we no longer passed /p:Ninja=true down to mono.proj
Kunal Pathak [Tue, 6 Apr 2021 21:59:17 +0000 (14:59 -0700)]
Limit superpmi replay failures using 'failureLimit' command line option (#50516)
* Limit superpmi replay failures
* Introduce errorCount2
* reword error message
* Introduce failureLimit commandline option
* Add error handling
Jeremy Koritzinsky [Tue, 6 Apr 2021 21:20:40 +0000 (14:20 -0700)]
Clarify that Ninja is required for the default build experience. (#50809)
Vlad Brezae [Tue, 6 Apr 2021 19:57:09 +0000 (22:57 +0300)]
[arm64] Fix wrong marshalling in gsharedvt transition (#50772)
Transitioning from ArgVtypeByRefOnStack to ArgVtypeByRef requires no marshalling. The reference ends up being saved on stack the same way and the stack slot just needs to be copied (in mono_arm_start_gsharedvt_call).
Ryan Lucia [Tue, 6 Apr 2021 19:55:26 +0000 (15:55 -0400)]
[mono] More Threading changes (#49637)
* Move CurrentOSThreadId to shared
* Set t_currentThread in managed
* Remove native abandon_mutexes calls
Abandoning in managed seems to work fine
* Switch to managed Sleep
* Remove threads shutting_down state
* Remove more domain usage
* Move some files to shared per feedback
* Re-add shutting_down flag
* Eliminate helper method for timeout verification
* Remove argument validation in ThreadNative::Sleep
* Abandon mutexes on finalizer thread
* Rename to thread_exiting
* Move OnThreadExiting to Thread
* Fix build
* Build build part 2
* Switch to DynamicDependency
* Avoid calling managed while holding a lock
* Don't leak gchandles
* Clean up rebase
* Pt 2
Bill Wert [Tue, 6 Apr 2021 19:16:58 +0000 (12:16 -0700)]
Move performance support files out of eng/common (#50625)
* Move performance support files out of eng/common
* move template out of common
* fix path to pipeline-logging-functions.ps1
* missed directory
Fan Yang [Tue, 6 Apr 2021 19:07:14 +0000 (15:07 -0400)]
Use runtimconfig.template.json file for Android functional test for JIT (#50612)
* Use runtimconfig.template.json file for Android functional test for JIT
* Parse the generated runtimeconfig.json file
* Update names
* Address more review feedbacks
* Update src/tasks/AndroidAppBuilder/Templates/monodroid.c
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update src/tasks/AndroidAppBuilder/Templates/monodroid.c
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Update src/tasks/AndroidAppBuilder/Templates/monodroid.c
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
* Updata variable name for the return of snprintf
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
Andy Ayers [Tue, 6 Apr 2021 18:51:15 +0000 (11:51 -0700)]
JIT: move and revise fgExpandRunRarelyBlocks (#50765)
Move to fgopt, and rework to make its operation a bit more obvious.
Miha Zupan [Tue, 6 Apr 2021 17:27:40 +0000 (19:27 +0200)]
Improve Http Telemetry tests (#50226)