platform/upstream/dotnet/runtime.git
3 years agofix assert ordering (#42007)
Eirik Tsarpalis [Wed, 9 Sep 2020 09:10:42 +0000 (10:10 +0100)]
fix assert ordering (#42007)

3 years ago[mono] Minor fixes to the wasm browser sample (#41992)
Ryan Lucia [Wed, 9 Sep 2020 06:26:39 +0000 (02:26 -0400)]
[mono] Minor fixes to the wasm browser sample (#41992)

Use python 3, fix typo, prevent inlining

3 years agoUpdate xml char type (#41756)
Wraith [Wed, 9 Sep 2020 00:52:10 +0000 (01:52 +0100)]
Update xml char type (#41756)

3 years ago[wasm] Mark System.Net.NameResolution Unsupported at assembly level (#41985)
Mitchell Hwang [Tue, 8 Sep 2020 23:24:33 +0000 (19:24 -0400)]
[wasm] Mark System.Net.NameResolution Unsupported at assembly level (#41985)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoMark System.Net.WebSockets.ClientWebSocketOptions APIs as unsupported on Browser...
Maxim Lipnin [Tue, 8 Sep 2020 23:24:22 +0000 (02:24 +0300)]
Mark System.Net.WebSockets.ClientWebSocketOptions APIs as unsupported on Browser (#41963)

* Mark System.Net.WebSockets.ClientWebSocketOptions APIs as unsupported on Browser

* Add the attributes to non-browser version of ClientWebSocketOptions class to avoid build error

* Add using

* Include platform attributes

3 years ago[wasm] Mark System.Threading.ThreadPool unsupported on Browser (#41891)
Mitchell Hwang [Tue, 8 Sep 2020 23:24:09 +0000 (19:24 -0400)]
[wasm] Mark System.Threading.ThreadPool unsupported on Browser (#41891)

* System.Threading.ThreadPool enable platform attributes

* Mark System.Threading.ThreadPool APIs unsupported on browser

* System.Threading.ThreadPool Add Unsupported attribute to other ThreadPool files

* Remove Unsupported attributes from BindHandle

* Add windows Supported Attribute to BindHandle

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoAdd initial release testing for outerloop and jitstress pipelines (#41856)
Tomáš Rylek [Tue, 8 Sep 2020 22:55:25 +0000 (00:55 +0200)]
Add initial release testing for outerloop and jitstress pipelines (#41856)

I have fixed the CoreCLR outerloop pipeline to include the release
branches. For jitstress and libraries_jitstress I have split the
schedules to run every other day for master vs. release as with
the growing number of Mono runs there's not much space for maneuver
w.r.t. allocating new lab HW.

Thanks

Tomas

3 years agoRemove netcore/ directory from the mono/mono repository. (#41972)
monojenkins [Tue, 8 Sep 2020 21:52:54 +0000 (17:52 -0400)]
Remove netcore/ directory from the mono/mono repository. (#41972)

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years agoDo not address expose a struct having 1 slot (#40957)
Kunal Pathak [Tue, 8 Sep 2020 20:36:56 +0000 (13:36 -0700)]
Do not address expose a struct having 1 slot (#40957)

3 years agoARM64: Eliminate redundant ldr/str instruction (#39222)
Kunal Pathak [Tue, 8 Sep 2020 20:36:06 +0000 (13:36 -0700)]
ARM64: Eliminate redundant ldr/str instruction (#39222)

* IsRedundantLdStr

Added method to check if we can eliminate ld/str instruction

* jit format

* Fixed IsRedundantLdStr and call it from emitIns_R_S() and emitIns_S_R()

* Added check for lastEmitInstr->opSize

* Add some comments

3 years ago[WASM] Add satellite assemblies bundle and hook to register them (#41358)
Santiago Fernandez Madero [Tue, 8 Sep 2020 19:25:12 +0000 (12:25 -0700)]
[WASM] Add satellite assemblies bundle and hook to register them (#41358)

* [WASM] Add satellite assemblies bundle and hook to register them

* Fix test failures

* PR Feedback

* PR Feedback and add test to make sure load from path respects culture

* Add binding so that blazor can register bundled assemblies

* Remove blank line.

* PR Feedback

3 years agoExclude .a files from the runtime native files when packaging (#41966)
Vitek Karas [Tue, 8 Sep 2020 18:41:46 +0000 (11:41 -0700)]
Exclude .a files from the runtime native files when packaging (#41966)

There's no use for the .a files in the shared framework or runtime pack, they just increase disk size.

Also not that we didn't include them in 3.1, so it's effectively a regression in 5.0.

3 years agoDisable Http2_MultipleConnectionsEnabled_ConnectionLimitNotReached_ConcurrentRequests...
Alexander Nikolaev [Tue, 8 Sep 2020 18:22:24 +0000 (20:22 +0200)]
Disable Http2_MultipleConnectionsEnabled_ConnectionLimitNotReached_ConcurrentRequestsSuccessfullyHandled (#41974)

3 years agoFix Configuration Save Full setting default value (#41912)
Wei Zheng [Tue, 8 Sep 2020 16:23:35 +0000 (00:23 +0800)]
Fix Configuration Save Full setting default value (#41912)

* Fix Configuration Save Full setting default value

* Cleaned out untrimmed whitespaces

3 years agoVarious Regexes for more testing. (#41935)
Jiri Cincura ↹ [Tue, 8 Sep 2020 16:18:39 +0000 (18:18 +0200)]
Various Regexes for more testing. (#41935)

3 years agoHonor custom number handling only when property/type is a number/collection of number...
Layomi Akinrinade [Tue, 8 Sep 2020 15:39:46 +0000 (08:39 -0700)]
Honor custom number handling only when property/type is a number/collection of numbers (#41679)

* Honor custom number handling only when property/type is a number/collection of numbers

* Verify typeof(object) + custom number handling behavior

* Simplify setting of per-property number handling

* Clean up number-handling-applicable check

* Fix issue with number-handling + boxed non-number types

3 years agoDisable System.Xml.Tests.AsyncReaderLateInitTests.InitializationWithUriOnNonAsyncRead...
Maxim Lipnin [Tue, 8 Sep 2020 15:21:59 +0000 (18:21 +0300)]
Disable System.Xml.Tests.AsyncReaderLateInitTests.InitializationWithUriOnNonAsyncReaderTrows test on Browser WASM due to PNSE (#41936)

3 years agoFixed stress test pipeline and other issues. (#41513)
Marie Píchová [Tue, 8 Sep 2020 13:36:43 +0000 (15:36 +0200)]
Fixed stress test pipeline and other issues. (#41513)

3 years agoMove Marshal memory allocation methods into CoreLib shared partition (#41911)
Jan Kotas [Tue, 8 Sep 2020 04:51:03 +0000 (21:51 -0700)]
Move Marshal memory allocation methods into CoreLib shared partition (#41911)

* Move Marshal memory allocation methods into CoreLib shared partition

* Unify behavior across platforms

3 years agoForce concurrent LdapConnection in new process (#41880)
Eric StJohn [Tue, 8 Sep 2020 04:33:51 +0000 (21:33 -0700)]
Force concurrent LdapConnection in new process (#41880)

* Ensure an initial non-concurrent call to OpenLDAP

OpenLDAP requires a single call for initialization before any other concurrent call.

This fixes asserts and segfaults we were seeing when calling OpenLDAP concurrently.

3 years agoSeptember infra rollout - continued CoreCLR / Mono test cleanup (minimal) (#40345)
Tomáš Rylek [Mon, 7 Sep 2020 22:18:14 +0000 (00:18 +0200)]
September infra rollout - continued CoreCLR / Mono test cleanup (minimal) (#40345)

Similar to the previous occasion, I have identified this set as the minimum meaningful set of scripts to move without causing too much disruption apart from purely mechanical renames. This change moves the developer-facing test-related CoreCLR scripts under the src/tests folder in accordance with the previous move of the tests themselves:

src/coreclr/build-test.cmd to src/tests/build.cmd
src/coreclr/build-test.sh to src/tests/build.sh
src/coreclr/tests/build.proj to src/tests/build.proj
src/coreclr/tests/runtest.cmd to src/tests/run.cmd
src/coreclr/tests/runtest.sh to src/tests/run.sh
src/coreclr/tests/src/runtest.proj to src/tests/run.proj
src/coreclr/tests/issues.targets to src/tests/issues.targets

The rest of the change constitutes mere path adjustments to match the primary rename.

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

Thanks

Tomas

3 years agoCleanup stack limits usage (#41946)
Jan Vorlicek [Mon, 7 Sep 2020 22:16:19 +0000 (00:16 +0200)]
Cleanup stack limits usage (#41946)

There were couple of members / functions for stack limits checking that
were not used anymore.

3 years agoAdd transitive CompilerServices.Unsafe dependency (#41616)
Viktor Hofer [Mon, 7 Sep 2020 20:18:28 +0000 (22:18 +0200)]
Add transitive CompilerServices.Unsafe dependency (#41616)

* Add transitive CompilerServices.Unsafe dependency

for System.Memory and System.Threading.Tasks.Extensions package
references. Adding the dependency as a P2P to prefer the live asset
over the prebuilt.

3 years agoRemove multi-targeting from runtime.depproj (#41666)
Viktor Hofer [Mon, 7 Sep 2020 19:53:25 +0000 (21:53 +0200)]
Remove multi-targeting from runtime.depproj (#41666)

* Remove multi-targeting from runtime.depproj

and convert it to a csproj and use the NoBuild msbuild sdk. Simplify the
project logic in relation to IL vs native code as well.

3 years agoMore tests for Marshal.Realloc{HGlobal|CoTaskMem} (#41910)
Jan Kotas [Mon, 7 Sep 2020 17:11:07 +0000 (10:11 -0700)]
More tests for Marshal.Realloc{HGlobal|CoTaskMem} (#41910)

- The corner case behavior of Marshal.Realloc method is non-standard and differs between the two realloc methods. Capture the current behavior in tests.
- Add temporary workarounds for Windows vs. Unix differences
- Disable the tests on Mono for now

3 years agoModify condition to match message: (#41933)
Kenneth Pouncey [Mon, 7 Sep 2020 15:30:26 +0000 (17:30 +0200)]
Modify condition to match message: (#41933)

- Since we are throwing: `net_http_value_must_be_greater_than, 0` it makes more sense to use the same value in the condition.

3 years agoRestore exception compatibility in TcpListener.EndAccept*** (#41745)
Anton Firszov [Mon, 7 Sep 2020 12:51:11 +0000 (14:51 +0200)]
Restore exception compatibility in TcpListener.EndAccept*** (#41745)

According to the old (pre- #40476) code and the documentation, we should throw ObjectDisposedException in EndAcceptSocket and EndAcceptTcpClient.

Fixes #41585

3 years agoRemoved nightly to workaround failing Kestrel init. (#41934)
Marie Píchová [Mon, 7 Sep 2020 11:25:43 +0000 (13:25 +0200)]
Removed nightly to workaround failing Kestrel init. (#41934)

3 years ago[Browser] Add mono_wasm_get_icudt_name API (#41795)
Egor Bogatov [Mon, 7 Sep 2020 10:36:21 +0000 (13:36 +0300)]
[Browser] Add mono_wasm_get_icudt_name API (#41795)

3 years agoAdd unsigned overloads for Unsafe Add/Subtract and Add/SubtractByteOffset (#40715)
Huo Yaoyuan [Sun, 6 Sep 2020 17:30:42 +0000 (01:30 +0800)]
Add unsigned overloads for Unsafe Add/Subtract and Add/SubtractByteOffset (#40715)

* Implement unsigned reference math in IL.

* Update reference source for Unsafe.

* Copy docs to UIntPtr overloads.

* Add tests for UIntPtr.

* Use nuint instead of UIntPtr.

* Fix reference to CORE_ASSEMBLY.

3 years agoUpdates servicing doc and servicing template (#41844)
Anirudh Agnihotry [Sun, 6 Sep 2020 08:02:32 +0000 (01:02 -0700)]
Updates servicing doc and servicing template (#41844)

* add template

* edit servicing doc

* Update PULL_REQUEST_TEMPLATE/servicing_pull_request_template.md

Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
* Apply suggestions from code review

Co-authored-by: Dan Moseley <danmose@microsoft.com>
Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
* add exclude paths

Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
Co-authored-by: Dan Moseley <danmose@microsoft.com>
3 years ago[interp] Add basic block support (#41574)
monojenkins [Sat, 5 Sep 2020 10:54:58 +0000 (06:54 -0400)]
[interp] Add basic block support (#41574)

This PR makes basic blocks a fundamental part of the code generation machinery. Before this change, there wasn't really any notion of basic blocks, there was a single list of instructions. With this change, we emit instructions inside basic blocks which are linked together. These basic blocks are iterated one at a time when doing optimization passes or emitting the final code. Currently, the origin of all basic blocks is IL code (they originate from branch targets and exception clauses) and we might never support creation of additional bblocks (since we could just create more complex instructions, which would also result in faster code). The bblocks will be emitted in the final code in the same order as they appear in IL code. This order is maintained through `next_bb` link.

Since the list of bblocks was completely changed, some fixes were required for debugging support. Some tests seemed to pass by chance, since we didn't emit MINT_SDB_INTR_LOC in the same locations as jit. There are probably still some discrepancies there.

This PR enables inlining of methods with multiple basic blocks. Currently, this might regress performance because we don't merge some basic blocks that we could (for method start), reducing benefits from cprop passes operating on single basic blocks. We will soon add a pass that traverses the list of basic blocks which eliminates dead basic blocks, merging any adjacent ones.

Co-authored-by: BrzVlad <BrzVlad@users.noreply.github.com>
3 years agoremove LazyAsyncResult and unnecessary proj references (#41909)
Geoff Kizer [Sat, 5 Sep 2020 07:39:20 +0000 (00:39 -0700)]
remove LazyAsyncResult and unnecessary proj references (#41909)

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years agorefine obsolete messages (#41877)
Genevieve Warren [Sat, 5 Sep 2020 05:08:13 +0000 (22:08 -0700)]
refine obsolete messages (#41877)

3 years agoSuppress C5105 warning on build (#41900)
Levi Broderick [Sat, 5 Sep 2020 05:06:49 +0000 (22:06 -0700)]
Suppress C5105 warning on build (#41900)

3 years ago[wasm][debugger] Small improvements to fail gracefully (#41713)
Ankit Jain [Sat, 5 Sep 2020 04:55:31 +0000 (00:55 -0400)]
[wasm][debugger] Small improvements to fail gracefully (#41713)

* [wasm][debugger] Instead of failing completely, skip the problematic

.. property. Some times we might not get a `value`, or `name`, or it
might instead have a `get`. Handle those cases correctly when combining
the name/value/get objects.

This showed up in case of a `MulticastDelegate`, where we didn't have a
`value`, and ended up incorrectly combining the name/value objects, thus
returning incorrect locals.

* [wasm][debugger] Handle MulticastDelegate, and events

- Essentially we just surface these as a symbol showing the type name

* [wasm][debugger] Fail gracefully when vt could not be expanded

* [wasm][debugger] Handle invalid scope ids

scope<0, or scope too high

- This does get filtered at the proxy level, but app side should be able
to handle it too

* [wasm][debugger] Handle invalid/missing/failed value descriptions

- Eg. missing because of invalid param/local id, or value description
failed because of some as yet unsupported type

* [wasm][debugger] Fix frame indexing

- `collect_frames`, `list_frames` - both iterate over stack frames. They
skip some frames. This debug proxy assigns a simple index to each of the
received(filtered) frames.

    - so, if we had `[ frame0, (skipped frame1), frame2 ]`, the proxy will
    have `[ frame0(index:0), frame2(index:1) ]`

- `describe_variables_on_frame` also iterates over stack frames, and
tries to find a given frame by an index. And this index is what the
proxy had assigned.
    - because some frames were skipped, this function also needs to skip
    the *same* ones, so that it can find the intended frame.

    - Instead of trying to keep these in sync, here the indexing is
    changed to be the real index found as we iterate over the frames.
    - And the proxy just uses that.
    - So, we will have `[ frame0(index:0), frame2(index:2) ]`

This showed up in a trace in aspnetcore, which was called via
reflection. And that frame didn't get added to the list because it was
not `MONO_WRAPPER_NONE`, which caused the indexing to get out of sync.

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

* fix warning: remove unused var

* rebase on master, fix errors

* Make frame indices returned from debugger.c, 0-based

- Earlier this 1-based, and it was being adjusted in `MonoProxy`.
- Based on @lewing's suggestion, changing this to be 0-based in
debugger.c, itself, thus removing the need to "fixup" in `MonoProxy`.

* dotnet-format fixes

3 years ago[wasm][debugger] Show actual data for boxed values (#41562)
Ankit Jain [Sat, 5 Sep 2020 02:13:35 +0000 (22:13 -0400)]
[wasm][debugger] Show actual data for boxed values (#41562)

* [wasm][debugger] Add support for Nullable<T>

Return the value, or null.

Fixes https://github.com/mono/mono/issues/20310

* Address review feedback - merge functions

* [wasm][debugger] run dotnet-format on the debugger test app

* [wasm][debugger] simplify function sig, based on usage

- addresses review feedback from @lewing

* [wasm][debugger] Simplify the function further, based on @lewing's

.. excellent suggestion!

* [wasm][debugger] Show actual data for boxed values

Eg. `object o = "foobar"`

This will show the string `"foobar"`, instead of an object, in the
debugger.

3 years ago[wasm][debugger] Add support for Nullable<T> (#41559)
Ankit Jain [Sat, 5 Sep 2020 02:08:55 +0000 (22:08 -0400)]
[wasm][debugger] Add support for Nullable<T>  (#41559)

* [wasm][debugger] Add support for Nullable<T>

Return the value, or null.

Fixes https://github.com/mono/mono/issues/20310

* Address review feedback - merge functions

* [wasm][debugger] run dotnet-format on the debugger test app

* [wasm][debugger] simplify function sig, based on usage

- addresses review feedback from @lewing

* [wasm][debugger] Simplify the function further, based on @lewing's

.. excellent suggestion!

3 years agoOptimize the allocation and speed of ActivitySet/GetCustomProperty (#41840)
Tarek Mahmoud Sayed [Sat, 5 Sep 2020 00:19:09 +0000 (17:19 -0700)]
Optimize the allocation and speed of ActivitySet/GetCustomProperty (#41840)

3 years agoBundle assemblies at 4K for linux arm64 (#41809)
Sven Boemer [Sat, 5 Sep 2020 00:08:27 +0000 (17:08 -0700)]
Bundle assemblies at 4K for linux arm64 (#41809)

* Bundle assemblies at 4K for linux arm64

* Add arch to bundler trace output

* PR feedback

* Remove extra overload

* Update comment

* Fix RID computation

3 years agoAdd more Half methods to BitConverter (#41789)
Huo Yaoyuan [Fri, 4 Sep 2020 23:46:59 +0000 (07:46 +0800)]
Add more Half methods to BitConverter (#41789)

* Add GetBytes, TryWriteBytes, ToHalf overloads for Half.

* Add ref source in System.Runtime.

* Add basic tests.

* Add array and span tests in BitConverter.

* Add xmldoc for BitConverter.GetBytes and TryWriteBytes.

* Add xmldoc for BitConverter.ToXXX.

* Add xmldoc for BitConverter.BitsTo.

3 years agoFix covariant returns validation (#41874)
Jan Vorlicek [Fri, 4 Sep 2020 23:23:31 +0000 (01:23 +0200)]
Fix covariant returns validation (#41874)

* Fix covariant returns validation

Recent fix to a problem with covariant returns validation has introduced
another problem related to code versioning. The validation method is now
called too late in the type load process which causes problem in
crossgening or in case code versioning is disabled.

This change fixes it by splitting the return type verification and
mutating changes like vtable slot updates into two separate phases.

* Fix missing precondition for calling SetRequiresCovariantReturnTypeChecking

3 years agoSingleFile: Enable hammer servicing (#41847)
Swaroop Sridhar [Fri, 4 Sep 2020 23:13:56 +0000 (16:13 -0700)]
SingleFile: Enable hammer servicing (#41847)

* SingleFile: Enable hammer servicing

This change enables hammer servicing to work on single-file apps.

The runtime resolves assemblies in the bundle even before attempting to resolve using the TPA.
This masks any entries in the TPA that correspond to hammer-serviced DLLs.
This change fixes this problem: If a file is resolved to the servicing directory, it is disabled in the bundle directory.

Testing: Added automated tests on Unix systems, manually tested on Windows.

Fixes #36031

3 years agoDisable LoadAsync_CancelDuringLoad_CompletesAsCanceled test on mono (#41878)
Santiago Fernandez Madero [Fri, 4 Sep 2020 23:01:19 +0000 (16:01 -0700)]
Disable LoadAsync_CancelDuringLoad_CompletesAsCanceled test on mono (#41878)

* Disable LoadAsync_CancelDuringLoad_CompletesAsCanceled test on mono

* Update src/libraries/System.Windows.Extensions/tests/System/Media/SoundPlayerTests.cs

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
3 years agoUpdate msftbot configuration contacts (#41903)
Jeff Handley [Fri, 4 Sep 2020 22:46:57 +0000 (15:46 -0700)]
Update msftbot configuration contacts (#41903)

3 years agoSimplify webassembly targets (#41869)
Alexander Köplinger [Fri, 4 Sep 2020 22:41:32 +0000 (00:41 +0200)]
Simplify webassembly targets (#41869)

Add a subset for compiling only the wasm runtime: `mono.wasmruntime`
This allows us to rebuild the wasm runtime without building the full libraries subset.

Updated documentation with new guidance.

Updated how we build the dotnet.timezones.blat.

3 years ago[wasm] Mark System.Console APIs as unsupported on Browser (#41184)
Mitchell Hwang [Fri, 4 Sep 2020 21:31:48 +0000 (17:31 -0400)]
[wasm] Mark System.Console APIs as unsupported on Browser (#41184)

* [wasm] Mark System.Console APIs as unsupported on Browser

* System.Console remove unsupported attribute from Console.Clear()

* System.Console mark SetIn as unsupported on Browser

* System.Console move UnsupportedOSPlatform attributes down to the accessor

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years ago[merp] Revert 7a0425e which is causing xamarin-android failures (#41709)
monojenkins [Fri, 4 Sep 2020 21:03:56 +0000 (17:03 -0400)]
[merp] Revert 7a0425e which is causing xamarin-android failures (#41709)

This commit https://github.com/mono/mono/commit/7a0425e81ffe0e77a4ba22ff45e691934ecc49a1 is causing the following xamarin-android issue: https://github.com/mono/mono/issues/20275

This pull request reverts it.

Co-authored-by: naricc <naricc@users.noreply.github.com>
3 years ago[wasm] Mark System.IO.IsolatedStorage APIs as unsupported on Browser (#41700)
Mitchell Hwang [Fri, 4 Sep 2020 20:09:09 +0000 (16:09 -0400)]
[wasm] Mark System.IO.IsolatedStorage APIs as unsupported on Browser (#41700)

* [wasm] System.IO.IsolatedStorage enable platform attributes

* Mark System.IO.IsolatedStorage Unsupported at assembly level

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years ago[wasm] Mark System.IO.FileSystem.Watcher APIs as unsupported on Browser (#41682)
Mitchell Hwang [Fri, 4 Sep 2020 19:57:31 +0000 (15:57 -0400)]
[wasm] Mark System.IO.FileSystem.Watcher APIs as unsupported on Browser (#41682)

* [wasm] System.IO.FileSystem.Watcher enable platform attributes

* Mark System.IO.FileSystem.Watcher unsupported at assembly level

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoUnconditionally build the cross-os DAC (#41852)
Juan Hoyos [Fri, 4 Sep 2020 18:54:47 +0000 (11:54 -0700)]
Unconditionally build the cross-os DAC (#41852)

* Unconditionally build the cross-os DAC.

3 years agoimprove test dynamic certificate generation (#41659)
Tomas Weinfurt [Fri, 4 Sep 2020 18:48:21 +0000 (11:48 -0700)]
improve test dynamic certificate generation (#41659)

* improve test dynamic certificate generation

* feedback from review

3 years agoMarking Matrix3x2, Matrix4x4, Plane, and Quaternion as Intrinsic (#41829)
Tanner Gooding [Fri, 4 Sep 2020 18:40:52 +0000 (11:40 -0700)]
Marking Matrix3x2, Matrix4x4, Plane, and Quaternion as Intrinsic (#41829)

3 years agohold ref to temp keychain on OSX to avoild premature cleanup (#41787)
Tomas Weinfurt [Fri, 4 Sep 2020 18:31:14 +0000 (11:31 -0700)]
hold ref to temp keychain on OSX to avoild premature cleanup (#41787)

* hold ref to temp keychain on OSX to avoild premature cleanup

* feedback from review

3 years agoAdd x86/arm64/arm support to the cmake build. Fix issues. (#41860)
Zoltan Varga [Fri, 4 Sep 2020 18:30:32 +0000 (14:30 -0400)]
Add x86/arm64/arm support to the cmake build. Fix issues. (#41860)

3 years agoAdd libraries on mono outerloop build (#41712)
Santiago Fernandez Madero [Fri, 4 Sep 2020 17:36:41 +0000 (10:36 -0700)]
Add libraries on mono outerloop build (#41712)

* Add libraries on mono outerloop build

* Flow testscope to helix and default build tfm to netcoreappcurrent

* Adjust correlation payload conditions and PR Feedback

* Disable scheduled runs

* Revert renaming of coreclr outerloop yml

3 years ago[wasm] Mark System.IO.Compression APIs as unsupported on Browser (#41683)
Mitchell Hwang [Fri, 4 Sep 2020 17:19:46 +0000 (13:19 -0400)]
[wasm] Mark System.IO.Compression APIs as unsupported on Browser (#41683)

* [wasm] System.IO.Compression.Brotli enable platform attributes

* Mark System.IO.Compression.Brotli unsupported at assembly level

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years ago[mono] Fix Android and iOS samples (#41870)
Egor Bogatov [Fri, 4 Sep 2020 17:12:34 +0000 (20:12 +0300)]
[mono] Fix Android and iOS samples (#41870)

Fixes broken samples for Android and iOS.
`InvariantGlobalization` fixes the issue described in https://github.com/dotnet/runtime/issues/41866 because otherwise ILLink fails on Interop.Globalization.EnumCalendarInfo (with a function pointer).

3 years agoIncorporate timezone data from runtime-assets (#41524)
Tammy Qiu [Fri, 4 Sep 2020 17:11:20 +0000 (13:11 -0400)]
Incorporate timezone data from runtime-assets (#41524)

* Incorporate timezone data from runtime-assets
* Change CreateWasmBundle name & create separate timezones.props file

3 years ago[wasm][debugger] Add support for surfacing inherited members (#41480)
Ankit Jain [Fri, 4 Sep 2020 16:56:25 +0000 (12:56 -0400)]
[wasm][debugger] Add support for surfacing inherited members (#41480)

* [wasm][debugger][tests] Update to use `TDateTime`

- this ensures that we check the datetime, and some property getters on
it, wherever we have a datetime.

* [wasm][debugger][tests] Add labels to more checks

* [wasm][debugger] Add support for surfacing inherited members

- surface inherited fields, and properties
- we try to support `Runtime.getProperties`'s two arguments:
    - `ownProperties`, and `accessorsOnly`

    - `ownProperties`: for JS, this means return only the object's own
    members (not inherited ones)
    - `accessorsOnly`: for JS, this means return all the getters

Actual implementation:

- In practice, VSCode, and Chrome debugger seem to only send
`{ ownProperties: true, accessorsOnly: false }`,
and `{ ownProperties: false, accessorsOnly: true }`. The combination of
which means - that we don't return any inherited fields!

- But we want to show inherited fields too, so to get that behavior we
essentially *ignore* `ownProperties`. IOW,

    - `ownProperties`: we return all fields, and properties
    - `accessorsOnly`: we return only the getters, including the
    inherited ones

- Another thing to note is the case for auto-properties
    - these have a backing field
    - and we usually return the backing field's value, instead of
    returning a getter
    - To continue with that, auto-properties are *not* returned for
    `accessorsOnly`

- The code in `mini-wasm-debugger.c` does handle these two arguments,
but that is currently disabled by not passing the args to debugger.c at
all
    - Instead, we get the *full* list of members, and try to filter it
    in `library_mono.js`
    - which includes handling property overrides, or shadowing by new
    properties/fields in derived classes

* [wasm][debugger][tests] Fix simple warnings

* [wasm][debugger][tests] Fix warnings introduced in this PR

* [wasm][debugger][tests] Fix indentation

* [wasm][debugger] Correctly handle local structs in async methods

- When we have a struct local in an async instance method, it doesn't
get expanded, since we have a containerId (the async object), and we can
expand/access it later.

- When the IDE asks us to expand it with `{accessorPropertiesOnly: true}`:
    - we get the expanded json, but `_filter_automatic_properties` tries
    to return just the accessors, but that doesn't handle the expanded
    members of nested structs!
    - That is done in `extract_and_cache_value_types`, which is run *after*
    `_filter_automatic_properties`, but by that time we have already
    lost the expanded members!

    - So, `_get_vt_properties` fails with `Unknown valuetype id`,
    because it doesn't have anything to return at that point.

- This is being solved by ignoring the getProperties args in case of
expanding valuetypes.
    - that means that we can correctly extract, and cache the whole
    object.
    - And after that, we can return accessors/others, based on the args.

* [wasm][debugger] Fix warnings in debugger-test-app, and turn on warnAsError

* For some cases, debugger seems to give the actual method name instead of MoveNext for async methods

3 years agoMark System.Diagnostics.Process unsupported at assembly level (#41694)
Mitchell Hwang [Fri, 4 Sep 2020 16:21:48 +0000 (12:21 -0400)]
Mark System.Diagnostics.Process unsupported at assembly level (#41694)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoDataContractSerialization cleanup (#41824)
Eric Erhardt [Fri, 4 Sep 2020 13:43:13 +0000 (08:43 -0500)]
DataContractSerialization cleanup (#41824)

* Clean up DataContractSerialization

- Remove DiagnosticUtility.IsFatal, which always returns false.
- Remove dead CreateDelegate method
- Fix a TODO-NULLABLE where MemberInfo will never be null

* Clean up remaining #if USE_REFEMIT and other unused defines in DataContractSerialization

3 years agoFix mono_get_obj_type performing a failed assembly load on every call (#41862)
Katelyn Gadd [Fri, 4 Sep 2020 13:05:30 +0000 (06:05 -0700)]
Fix mono_get_obj_type performing a failed assembly load on every call (#41862)

3 years agoProperly handle byrefs in tailcall helper stubs (#41815)
Jakob Botsch Nielsen [Fri, 4 Sep 2020 05:47:26 +0000 (07:47 +0200)]
Properly handle byrefs in tailcall helper stubs (#41815)

* Properly handle byrefs in tailcall helper stubs

Switch to using ByReference instead of using stind.i/ldind.i and relying
on the JIT to report the locations being moved between.

Fixes #41555

* Move NextCallReturnAddress call back

3 years agoAdd TailcallStress + GCStress testing to gcstress-extra pipeline (#41827)
Bruce Forstall [Fri, 4 Sep 2020 05:43:21 +0000 (22:43 -0700)]
Add TailcallStress + GCStress testing to gcstress-extra pipeline (#41827)

Fixes #41825

3 years agoRevert #40641 (#41817)
Carlos Sanchez [Fri, 4 Sep 2020 00:40:36 +0000 (17:40 -0700)]
Revert #40641 (#41817)

Reverts "Ensure FileStatus and FileSystemEntry Hidden and ReadOnly attributes are retrieved the same way"
(commit 6ed1e41e590c41862b993f99c8f401c1935a523a) which introduced a perf regression.

Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
3 years agoFix Crossgen2 package by using the proper UCRT version (#41784)
Anton Lapounov [Fri, 4 Sep 2020 00:23:25 +0000 (17:23 -0700)]
Fix Crossgen2 package by using the proper UCRT version (#41784)

3 years agoFix configurations obsolete messages (#41835)
Uriel Goncalves [Thu, 3 Sep 2020 23:57:50 +0000 (00:57 +0100)]
Fix configurations obsolete messages (#41835)

3 years agoFix param name in ActivityContext..ctor (#41801)
Krzysztof Wicher [Thu, 3 Sep 2020 23:32:16 +0000 (01:32 +0200)]
Fix param name in ActivityContext..ctor (#41801)

3 years agoFix argument name in CompareInfo.IsPrefix (suffix -> prefix) (#41803)
Krzysztof Wicher [Thu, 3 Sep 2020 23:31:50 +0000 (01:31 +0200)]
Fix argument name in CompareInfo.IsPrefix (suffix -> prefix) (#41803)

3 years agoRestrict CCompRC::LoadResourceFile and usage to win (#41757)
Adeel Mujahid [Thu, 3 Sep 2020 22:30:38 +0000 (01:30 +0300)]
Restrict CCompRC::LoadResourceFile and usage to win (#41757)

String resouces packaged as PE files only exist on Windows.

3 years agoReplace g_tkCorEncodeToken with CorSigDecodeTokenType() inline function to keep its...
Ilia [Thu, 3 Sep 2020 22:27:32 +0000 (01:27 +0300)]
Replace g_tkCorEncodeToken with CorSigDecodeTokenType() inline function to keep its definition in cor.h (#41797)

Fixes undefined references to g_tkCorEncodeToken when using CorSigCompressToken()
in user projects with shared Profiling API headers like cor.h / corprof.h

See https://github.com/dotnet/runtime/pull/40254#issuecomment-686485157.

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agoPotential fix for folding of *(typ*)&lclVar for small types #40607 (#40871)
Egor Chesakov [Thu, 3 Sep 2020 22:21:58 +0000 (15:21 -0700)]
Potential fix for folding of *(typ*)&lclVar for small types #40607 (#40871)

* Add regression test for https://github.com/dotnet/runtime/issues/40607

* Add Runtime_40607.tt

* Add more extensive tests for loads in Runtime_40607.tt Runtime_40607.il

* Enable back failing test in System.Private.Xml.dll

* Fold *(typ*)&lclVar tree when:

1) it is *definitely load* and types of both indirection and local variable have the same signedness (e.g. bool and byte)
2) otherwise, fold the tree and mark the local node with GTF_VAR_FOLDED_IND
   and call fgDoNormalizeOnStore() on such nodes' parents in post-order morph.

3 years agoFix leaking ICorProfilerCallback10. (#41791)
Mikhail Pilin [Thu, 3 Sep 2020 22:02:58 +0000 (00:02 +0200)]
Fix leaking ICorProfilerCallback10. (#41791)

3 years ago[runtime] Allocate code memory using MAP_JIT on apple silicon, patching code randomly...
monojenkins [Thu, 3 Sep 2020 21:56:36 +0000 (17:56 -0400)]
[runtime] Allocate code memory using MAP_JIT on apple silicon, patching code randomly crashes without it. (#41798)

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years agoAdd JsonNumberHandling.AllowReadingFromString as a JsonSerializer web default (#41539)
Layomi Akinrinade [Thu, 3 Sep 2020 21:16:13 +0000 (14:16 -0700)]
Add JsonNumberHandling.AllowReadingFromString as a JsonSerializer web default (#41539)

* Add JsonNumberHandling.AllowReadingFromString as a JsonSerializer web default

* Add test assertion for number handling option in S.N.H.Json

* Test number-as-string behavior in System.Net.Http.Json

3 years agoFix parent assembly for standalone components in Crossgen2 build (#41821)
Tomáš Rylek [Thu, 3 Sep 2020 21:15:09 +0000 (23:15 +0200)]
Fix parent assembly for standalone components in Crossgen2 build (#41821)

3 years agoAdd COMPlus env var comment docs (#41707)
Noah Falk [Thu, 3 Sep 2020 21:07:37 +0000 (14:07 -0700)]
Add COMPlus env var comment docs (#41707)

We lost our docs at some point, but the key detail is that prepending COMPlus_ to the knob name is the environment variable you need to set. Hoisting that fact right to the top of the file so that people who come looking can find it.

3 years agoRemove OSPlatformAttribute attributes from wasm linked output (#41799)
Marek Safar [Thu, 3 Sep 2020 19:45:00 +0000 (21:45 +0200)]
Remove OSPlatformAttribute attributes from wasm linked output (#41799)

Fixes #40163

3 years agoFix some interactions between tiering and multi-core JIT (#40948)
Koundinya Veluri [Thu, 3 Sep 2020 18:31:32 +0000 (14:31 -0400)]
Fix some interactions between tiering and multi-core JIT (#40948)

Fix some interactions between tiering and multi-core JIT

Issues:
- When a multi-core JIT profile includes a method for which prejitted code is available, and the method contains a loop, when playing back the profile the multi-core JIT of the method disables call counting for the method, then when the method gets called the prejitted code is used but does not get tiered up later. Also hits assertion failures.
- Tier 1 rejits also record the method in the multi-core JIT profile, another case where the above situation can occur

Fixes:
- Only record a method in the multi-core JIT profile for the default code version and only once for the code version
- When playing back a profile, don't disable call counting for a method immediately. Just record some info that may be used later when the method is actually gets called, if the multi-core jitted code gets used, to disable call counting if necessary.

3 years agoEnable runtime closure verification (#41698)
Nikola Milosavljevic [Thu, 3 Sep 2020 18:29:58 +0000 (11:29 -0700)]
Enable runtime closure verification (#41698)

* Enable closure validation

* Ensure dependency graph directory exists

* Netstandard should not be ignored

* Ensure Reports dir exists; VerifyClosure change moved to Arcade

* Upgrade SharedFramework.SDK package to pick up a change for VerifyClosure target

3 years agoFix neutral source flag in standalone MSIL component assemblies (#41764)
Tomáš Rylek [Thu, 3 Sep 2020 17:46:26 +0000 (19:46 +0200)]
Fix neutral source flag in standalone MSIL component assemblies (#41764)

In composite build mode, we copy the input assemblies to output,
injecting the component R2R headers into them. This process was
missing the logic to set up the READYTORUN_FLAG_PLATFORM_NEUTRAL_SOURCE
flag, causing subsequent AssemblyName mismatches. At this point
I don't plan to back-propagate the change to .NET 5 as Crossgen2
is not yet generally available and this fixes just a corner case in it.

Thanks

Tomas

3 years agoMark sizeValue as non faulting. (#41776)
Sergey Andreenko [Thu, 3 Sep 2020 16:50:32 +0000 (09:50 -0700)]
Mark sizeValue as non faulting. (#41776)

The address of the ind can't be null because it is a prejited location.

However, the value of the indirection could be different, so should not mark as invariant.

3 years agoAdd ios support to the cmake build system. (#41710)
Zoltan Varga [Thu, 3 Sep 2020 16:23:17 +0000 (12:23 -0400)]
Add ios support to the cmake build system. (#41710)

* Add ios support to the cmake build system.

* Only link against darwin libs on darwin.

* Add x86_64-apple-darwin10 to offset-tool abis.

* Add aot cross compiler support to the cmake build.

* Disable verifier on the cmake build.

* Add LLVM support.

* Use OS_LIBS in more place.

* Fix the build.

3 years agoEnable passing tests (#41763)
Fan Yang [Thu, 3 Sep 2020 14:22:51 +0000 (10:22 -0400)]
Enable passing tests (#41763)

3 years agoUpdate license headers (#41783)
Jan Kotas [Thu, 3 Sep 2020 08:43:29 +0000 (01:43 -0700)]
Update license headers (#41783)

3 years ago[master] Update dependencies from mono/linker dotnet/arcade dotnet/runtime-assets...
dotnet-maestro[bot] [Thu, 3 Sep 2020 08:34:10 +0000 (08:34 +0000)]
[master] Update dependencies from mono/linker dotnet/arcade dotnet/runtime-assets dotnet/xharness dotnet/icu (#41591)

[master] Update dependencies from mono/linker dotnet/arcade dotnet/runtime-assets dotnet/xharness dotnet/icu
- Updates:
  - Microsoft.NET.ILLink.Tasks: from 6.0.0-alpha.1.20424.3 to 6.0.0-alpha.1.20451.1

- Updates:
  - Microsoft.DotNet.GenFacades: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.Build.Tasks.Feed: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.Build.Tasks.Packaging: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.CodeAnalysis: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.GenAPI: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.XUnitExtensions: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.Helix.Sdk: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.RemoteExecutor: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.VersionTools.Tasks: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.XUnitConsoleRunner: from 2.5.1-beta.20427.5 to 2.5.1-beta.20431.4
  - Microsoft.DotNet.Arcade.Sdk: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4
  - Microsoft.DotNet.ApiCompat: from 5.0.0-beta.20427.5 to 5.0.0-beta.20431.4

- Updates:
  - Microsoft.DotNet.XHarness.CLI: from 1.0.0-prerelease.20424.2 to 1.0.0-prerelease.20431.1
  - Microsoft.DotNet.XHarness.TestRunners.Xunit: from 1.0.0-prerelease.20424.2 to 1.0.0-prerelease.20431.1

- Updates:
  - Microsoft.NETCore.Runtime.ICU.Transport: from 6.0.0-alpha.1.20428.1 to 6.0.0-alpha.1.20451.1

- Updates:
  - System.ComponentModel.TypeConverter.TestData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1
  - System.Drawing.Common.TestData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1
  - System.IO.Compression.TestData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1
  - System.IO.Packaging.TestData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1
  - System.Net.TestData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1
  - System.Private.Runtime.UnicodeData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1
  - System.Security.Cryptography.X509Certificates.TestData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1
  - System.Windows.Extensions.TestData: from 5.0.0-beta.20426.1 to 5.0.0-beta.20451.1

 - fix Browser-related tests

3 years agolook for dhcp lease file in multiple locations (#41016)
Tomas Weinfurt [Thu, 3 Sep 2020 06:55:19 +0000 (23:55 -0700)]
look for dhcp lease file in multiple locations (#41016)

3 years agochar.IsAscii xml doc comments (#41753)
Günther Foidl [Thu, 3 Sep 2020 02:55:24 +0000 (04:55 +0200)]
char.IsAscii xml doc comments (#41753)

* char.IsAscii xml doc comments

* Update src/libraries/System.Private.CoreLib/src/System/Char.cs

Co-authored-by: Dan Moseley <danmose@microsoft.com>
3 years agoAdd LowLevelMonitor (#41736)
Jan Kotas [Thu, 3 Sep 2020 01:35:14 +0000 (18:35 -0700)]
Add LowLevelMonitor (#41736)

* Add LowLevelMonitor

* Fix style and bug

- Prevent CRITICAL_SECTION from moving by allocating it in unmanaged memory
- Refactor to match style used in the rest of System.Native
- Change LowLevelMonitor to struct to avoid unnecessary indirection

Co-authored-by: Koundinya Veluri <kouvel@users.noreply.github.com>
3 years agoWASM: Add SHA* hash functions (#40486)
Alexander Köplinger [Wed, 2 Sep 2020 21:23:26 +0000 (23:23 +0200)]
WASM: Add SHA* hash functions (#40486)

This ports the managed SHA* hash functions from https://github.com/microsoft/referencesource so we can use them on Browser/WASM where we don't have OpenSSL.

Enables the System.Security.Cryptography.Algorithms tests for these classes: `Tests run: 271, Errors: 0, Failures: 0, Skipped: 1. Time: 11.857137s`

Resolves https://github.com/dotnet/runtime/issues/40076

3 years agoFix cross-OS DAC metadata locator interface callback (#41746)
Mike McLaughlin [Wed, 2 Sep 2020 19:11:42 +0000 (12:11 -0700)]
Fix cross-OS DAC metadata locator interface callback (#41746)

3 years agofix version (#41729)
Anirudh Agnihotry [Wed, 2 Sep 2020 15:08:16 +0000 (08:08 -0700)]
fix version (#41729)

3 years agoAdd cache for Socket.LocalEndPoint (#39313)
Natalia Kondratyeva [Wed, 2 Sep 2020 13:51:53 +0000 (14:51 +0100)]
Add cache for Socket.LocalEndPoint (#39313)

Added _localEndPoint field to cache LocalEndPoint value. Cached value
is cleared on error and disconnect. If the value is a wildcard
address, it is also cleared on connect and accept.

Fix #1482

3 years agoCreate productVersion as part of BlobArtifacts; this is used later by the dotnet...
Matt Galbraith [Wed, 2 Sep 2020 13:34:46 +0000 (06:34 -0700)]
Create productVersion as part of BlobArtifacts; this is used later by the dotnet-install.* scripts (#41719)

3 years agoStrip binaries more aggressively (#41039)
Jan Vorlicek [Wed, 2 Sep 2020 09:21:09 +0000 (11:21 +0200)]
Strip binaries more aggressively (#41039)

* Strip binaries more aggressively

We are currently stripping only debug symbols, but there are also other
symbols that can be stripped without affecting debuggability or anything
else. We were stripping the binaries in corefx that way in the past,
but some time ago we have unified the stripping between the former
three repos and started to strip just the debugging symbols.

This change strips all unneeded symbols, which results in significant
reduction of the binaries sizes. For example, libcoreclr.so went down
from 8732272 to 7027024 or libSystem.Security.Cryptography.Native.OpenSsl.so
went down from 163376 to 120952.

* Fix FreeBSD

* Fix FreeBSD and OSX

We use nm command to extract g_dacTable symbol value from libcoreclr
for the DAC purposes. On OSX, there are no dynamic symbols, on
FreeBSD, the stripping strips all regular symbols and leaves
dynamic ones only. So the nm needs to get a -D argument for
non OSX.

3 years agoFix multiple version strings in coreclr shared libraries (#41711)
Jan Vorlicek [Wed, 2 Sep 2020 08:51:44 +0000 (10:51 +0200)]
Fix multiple version strings in coreclr shared libraries (#41711)

We were incorrectly adding the version.c source to all coreclr
libraries and not just the shared ones. That caused multiple
occurences of the version string in coreclr shared libraries
composed of sublibraries.
This change fixes it by adding that source file for shared
libraries only.
I've also discovered that libcoreclrtraceptprovider.so was
missing the version string completely, so I've added it there.

3 years agoDelete multi-byte related functions from PAL (#41611)
Adeel Mujahid [Wed, 2 Sep 2020 03:25:22 +0000 (06:25 +0300)]
Delete multi-byte related functions from PAL (#41611)

* Delete multi-byte related functions from PAL

In PAL, delete:
* `IsDBCSLeadByte`; unimplemented.
* `IsDBCSLeadByteEx`; no-op.
* `GetCPInfo`; has hardcoded length of 4, and the only usage checks for
  `length == 1`.
* `_mbsinc`; has one usage in ilasm, which is simplified for Unix
  (after the removal of above).
* `_mbsninc`; unused.
* `_mbsdec`; usage is inlined as `p--` because `IsDBCSLeadByteEx` is a
  no-op.
* `GetCaseInsensitiveValueA`, handle ANSI cases as Unicode.
* `IsTextUnicode`, single usage in ilasm is inlined.

* Delete _MBCS, _ismbblead and simplifications

* Delete trailing whitespaces from PR file changed

3 years agoRemove System.Net.Connections and related features (#41648)
Geoff Kizer [Wed, 2 Sep 2020 02:31:14 +0000 (19:31 -0700)]
Remove System.Net.Connections and related features (#41648)

* remove System.Net.Connections and related features

* cleanup csproj changes

* Update src/libraries/pkg/baseline/packageIndex.json

Co-authored-by: Cory Nelson <phrosty@gmail.com>
* Update src/libraries/System.Net.Sockets/src/System/Net/Sockets/Socket.Tasks.cs

Co-authored-by: Cory Nelson <phrosty@gmail.com>
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Co-authored-by: Cory Nelson <phrosty@gmail.com>
3 years agoFix issue with covariant return method validation (#41703)
Jan Vorlicek [Wed, 2 Sep 2020 01:12:28 +0000 (03:12 +0200)]
Fix issue with covariant return method validation (#41703)

The ClassLoader::ValidateMethodsWithCovariantReturnTypes was being called
from a place where the relevant types were sometimes not fully loaded yet.
That resulted in an attempt to load the type being loaded recursively,
which was detected and the TypeLoadException was thrown.
This change fixes it by moving the call to the
ClassLoader::ValidateMethodsWithCovariantReturnTypes to the PushFinalLevels
when the level is greater than CLASS_LOAD_EXACTPARENTS, which is the
last stage of normal loading.