platform/upstream/dotnet/runtime.git
3 years agoCleanups after awk dependency removal (#46574)
Adeel Mujahid [Wed, 6 Jan 2021 02:20:37 +0000 (04:20 +0200)]
Cleanups after awk dependency removal (#46574)

3 years agoFix `assert(isByteReg(ireg))`. (#46567)
Sergey Andreenko [Wed, 6 Jan 2021 01:58:46 +0000 (17:58 -0800)]
Fix `assert(isByteReg(ireg))`. (#46567)

3 years agoRemove JIT_FLAG_PROF_REJIT_NOPS (#46560)
Egor Chesakov [Wed, 6 Jan 2021 01:16:15 +0000 (17:16 -0800)]
Remove JIT_FLAG_PROF_REJIT_NOPS (#46560)

* Remove padding for ReJit in CodeGen::genAllocLclFrame in src/coreclr/jit/codegenxarch.cpp

* Remove JIT_FLAG_PROF_REJIT_NOPS in src/coreclr/jit/jitee.h

* Remove CORJIT_FLAG_PROF_REJIT_NOPS in src/coreclr/inc/corjitflags.h

* Remove CORJIT_FLAG_PROF_REJIT_NOPS in src/coreclr/tools/Common/JitInterface/CorInfoTypes.cs

* Remove genPrologPadForReJit() in src/coreclr/jit

* Remove dead code in src/coreclr/jit

* Update JIT/EE interface GUID in src/coreclr/inc/jiteeversionguid.h

3 years agoHandle '/' in locale name in PAL (#46601)
Adeel Mujahid [Wed, 6 Jan 2021 00:29:56 +0000 (02:29 +0200)]
Handle '/' in locale name in PAL (#46601)

3 years agoFix build errors using GCC 11 (#46334)
Omair Majid [Tue, 5 Jan 2021 23:50:18 +0000 (18:50 -0500)]
Fix build errors using GCC 11 (#46334)

Building runtime with GCC 11 leads to some new errors. The errors are
consistent with the "Header dependency changes" section documented at
https://gcc.gnu.org/gcc-11/porting_to.html

The first set of errors looks like this:

    runtime/src/coreclr/pal/src/misc/cgroup.cpp:403:29:
    error: no member named 'numeric_limits' in namespace 'std'
              if (temp > std::numeric_limits<size_t>::max())
                         ~~~~~^

Fix that by including <limits>.

The second set of errors looks like this:

    runtime/src/installer/corehost/cli/test/nativehost/host_context_test.cpp:634:31:
     error: no member named 'sleep_for' in namespace 'std::this_thread'
              std::this_thread::sleep_for(std::chrono::milliseconds(100));
              ~~~~~~~~~~~~~~~~~~^

Fix that by including <thread>.

3 years agoPass an alc to Assembly.Load() in GetSatelliteAssembly() to avoid a stack walk. ...
Zoltan Varga [Tue, 5 Jan 2021 23:48:50 +0000 (18:48 -0500)]
Pass an alc to Assembly.Load() in GetSatelliteAssembly() to avoid a stack walk. (#46534)

3 years agoCleanup, and little improvement for aggressive trimming (#46587)
Ankit Jain [Tue, 5 Jan 2021 21:48:00 +0000 (16:48 -0500)]
Cleanup, and little improvement for aggressive trimming (#46587)

* Cleanup, and little improvement for aggressive trimming

- The `ConfigureTrimming` target adds xunit assemblies explicitly, and
  sets `TriggerRootAssembly` too.

- Looking at the files being linked, some issues noticed:
    - Multiple copies of xunit assemblies, from various locations are
      included. Eg. from `System.Buffer.Tests`, `WasmTestRunner`, and
      from the nuget
    - `WasmTestRunner` is explicitly added as `TriggerRootAssembly`, but
      it is also passed as an arg for linking, `-p link ...`
    - `xunit.runner.json` is incorrectly added to the files to be linked

- Instead:
    - all the files to be published are already in
      `ResolvedFileToPublish` after `AddTestRunnersToPublishedFiles` target
    - so, we mark everything for linking,
    - *except*:
        - main test assembly
        - and the test runner assembly

    - This way we are explicitly specifying which assemblies to link,
      and which ones to `copy`

- This reduces the size:
    - 3.1M to 2.6M `artifacts/bin/System.Buffers.Tests/net6.0-Release/browser-wasm/AppBundle/managed/`
    - 46M to 31M `artifacts/bin/System.Buffers.Tests/net6.0-Release/browser-wasm/AppBundle/publish/`

* cleanup

* Trim the test runner also. based on @mareks' feedback

3 years agoEnsure special static slots respect alignment. (#43683)
monojenkins [Tue, 5 Jan 2021 21:19:04 +0000 (16:19 -0500)]
Ensure special static slots respect alignment. (#43683)

Without proper alignment, this may lead to reference types
being stored at non-pointer aligned offsets. Among other
issues this may lead to the GC not scanning those pointers
properly.

For example, a type such as
```
struct Point
{
    public int X;
    public int Y;
}
```
will have size 8 and alignment 4 on x64 platforms.

If we reuse the special slot allocated for the `Point` type to store
a reference pointer, it may not be pointer aligned.

Co-authored-by: joncham <joncham@users.noreply.github.com>
3 years ago[mono] Add support for PINVOKE_OVERRIDE (#46442)
Ryan Lucia [Tue, 5 Jan 2021 21:04:00 +0000 (16:04 -0500)]
[mono] Add support for PINVOKE_OVERRIDE (#46442)

Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
3 years agoUse assembly name formatting code for missing satellite assemblies (#45472)
Marek Safar [Tue, 5 Jan 2021 20:52:39 +0000 (21:52 +0100)]
Use assembly name formatting code for missing satellite assemblies (#45472)

exception message

3 years ago[master] Update dependencies from mono/linker (#46557)
dotnet-maestro[bot] [Tue, 5 Jan 2021 20:36:16 +0000 (20:36 +0000)]
[master] Update dependencies from mono/linker (#46557)

[master] Update dependencies from mono/linker

3 years agoUse Centos8 instead Centos7 for Helix tests (#46205)
Tomas Weinfurt [Tue, 5 Jan 2021 20:28:55 +0000 (12:28 -0800)]
Use Centos8 instead Centos7 for Helix tests (#46205)

* use Centos8 instead Centos8 for tests

* pick up image with libicu

* pull in new image with openssl app

3 years agoRemove StartupHooks ILLink warning suppressions from shared file (#46559)
Eric Erhardt [Tue, 5 Jan 2021 19:27:54 +0000 (13:27 -0600)]
Remove StartupHooks ILLink warning suppressions from shared file (#46559)

One suppression is needed going forward in order for developers to get a warning if they trim apps with StartupHookProvider.IsSupported=true.

Contributes to #45623

3 years agoReturn actual LoadLibrary failures for IJW scenarios. (#45997)
Aaron Robinson [Tue, 5 Jan 2021 19:19:02 +0000 (11:19 -0800)]
Return actual LoadLibrary failures for IJW scenarios. (#45997)

* Return actual LoadLibrary failures for IJW scenarios.

3 years agoHTTP/3: Header encoding and decoding fixes (#46565)
James Newton-King [Tue, 5 Jan 2021 19:12:22 +0000 (08:12 +1300)]
HTTP/3: Header encoding and decoding fixes (#46565)

3 years ago[master] Update dependencies from dotnet/llvm-project dotnet/icu (#46576)
dotnet-maestro[bot] [Tue, 5 Jan 2021 18:35:54 +0000 (13:35 -0500)]
[master] Update dependencies from dotnet/llvm-project dotnet/icu (#46576)

* Update dependencies from https://github.com/dotnet/llvm-project build 20210104.1

runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk
 From Version 9.0.1-alpha.1.20628.1 -> To Version 9.0.1-alpha.1.21054.1

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

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-alpha.1.20628.1 -> To Version 6.0.0-alpha.1.21054.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
3 years agoUpdate MicrosoftCodeAnalysisNetAnalyzersVersion (#46581)
Stephen Toub [Tue, 5 Jan 2021 18:26:58 +0000 (13:26 -0500)]
Update MicrosoftCodeAnalysisNetAnalyzersVersion (#46581)

3 years agoRemove ThreadStart delegate allocation from TryCreateWorkerThread (#46563)
Stephen Toub [Tue, 5 Jan 2021 18:15:29 +0000 (13:15 -0500)]
Remove ThreadStart delegate allocation from TryCreateWorkerThread (#46563)

3 years agoFix incorrect IsEnabled check on TplEventSource.TaskWaitContinuation* (#46304)
Sung Yoon Whang [Tue, 5 Jan 2021 18:14:48 +0000 (10:14 -0800)]
Fix incorrect IsEnabled check on TplEventSource.TaskWaitContinuation* (#46304)

3 years agoCheck EnabledFor* individually for non-self-describing events (#46555)
Brian Robbins [Tue, 5 Jan 2021 16:54:55 +0000 (08:54 -0800)]
Check EnabledFor* individually for non-self-describing events (#46555)

3 years agoSet WasmBuildDir so that AOT tests can properly run (#46575)
Steve Pfister [Tue, 5 Jan 2021 16:18:19 +0000 (11:18 -0500)]
Set WasmBuildDir so that AOT tests can properly run (#46575)

Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
3 years agoImprove generated dump debugging instructions (#46493)
Dan Moseley [Tue, 5 Jan 2021 15:57:42 +0000 (07:57 -0800)]
Improve generated dump debugging instructions (#46493)

* Improve generated dump debugging instructions

* Update eng/testing/debug-dump-template.md

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Update eng/testing/debug-dump-template.md

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Update eng/testing/debug-dump-template.md

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Update debug-dump-template.md

* Fix ```

* fix some ```cmd

* Reverse .cmd to .bat

* Open only for reading

* Improve foldername

* Install only one SOS

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agoAvoid an exception in Exception.GetCaptureState() if the stack trace is empty, it...
Zoltan Varga [Tue, 5 Jan 2021 15:46:28 +0000 (10:46 -0500)]
Avoid an exception in Exception.GetCaptureState() if the stack trace is empty, it can happen on wasm+aot. (#46539)

3 years agoIncrease timeout for ProcessWaitingTests.WaitAsyncForSignal (#46564)
Dan Moseley [Tue, 5 Jan 2021 12:44:38 +0000 (04:44 -0800)]
Increase timeout for ProcessWaitingTests.WaitAsyncForSignal (#46564)

3 years agoDelete stale x86 TODOs from crossgen2 (#46562)
Jan Kotas [Tue, 5 Jan 2021 09:33:32 +0000 (01:33 -0800)]
Delete stale x86 TODOs from crossgen2 (#46562)

3 years agoAdd a NOSTRIP make variable to allow the wasm runtime to be compiled without strippin...
Zoltan Varga [Tue, 5 Jan 2021 09:06:28 +0000 (04:06 -0500)]
Add a NOSTRIP make variable to allow the wasm runtime to be compiled without stripping. (#46544)

3 years ago[marshal-ilgen] Fix NULL check for blittable out lparray. (#46548)
monojenkins [Tue, 5 Jan 2021 08:48:12 +0000 (03:48 -0500)]
[marshal-ilgen] Fix NULL check for blittable out lparray. (#46548)

Found while working on WPF clipboard code in Wine Mono. The test case causes a NullReferenceException in Mono but works in .NET Framework.

Co-authored-by: madewokherd <madewokherd@users.noreply.github.com>
3 years ago[browser][websocket] Fix for Close Description validation (#45536)
Kenneth Pouncey [Tue, 5 Jan 2021 05:29:08 +0000 (06:29 +0100)]
[browser][websocket] Fix for Close Description validation (#45536)

* [browser][websocket] Fix for Close Description validation

- Issue https://github.com/dotnet/runtime/issues/45531
- The description validation exception was not being percolated through to the unit test

* Remove test code

* Address review comments.  Wrap in a try/catch that will catch that exception and store it into a task to be returned.

* Fix merge conflict

* Remove active issue

Co-authored-by: Larry Ewing <lewing@microsoft.com>
3 years agoFix createdump fault in diagnostic tests (#46554)
Mike McLaughlin [Tue, 5 Jan 2021 03:09:49 +0000 (19:09 -0800)]
Fix createdump fault in diagnostic tests (#46554)

3 years agoFix setting timeout too early for QuicConnectionlistener (#46549)
Justin Kotalik [Tue, 5 Jan 2021 01:32:04 +0000 (17:32 -0800)]
Fix setting timeout too early for QuicConnectionlistener (#46549)

3 years agoUpdate SKIP_ALLOC_FRAME to match 3.1, 5.0 and 6.0 instruction sequences in function...
Egor Chesakov [Tue, 5 Jan 2021 01:07:09 +0000 (17:07 -0800)]
Update SKIP_ALLOC_FRAME to match 3.1, 5.0 and 6.0 instruction sequences in function prolog (#45184)

* Add regression tests for https://github.com/dotnet/runtime/issues/45090

* Add instruction opcodes in src/coreclr/vm/eetwain.cpp

* Add SKIP_LEA_EAX_ESP in src/coreclr/vm/eetwain.cpp

* Add SKIP_HELPER_CALL in src/coreclr/vm/eetwain.cpp

* Update SKIP_ALLOC_FRAME in src/coreclr/vm/eetwain.cpp

* Use constant (0x1000) rather than calling GetOsPageSize() in SKIP_ALLOC_FRAME in src/coreclr/vm/eetwain.cpp

* Draft of the changes that are back-compatible with earlier versions of R2R code in src/coreclr/vm/eetwain.cpp

* Update src/coreclr/vm/eetwain.cpp and include missing SKIP_ARITH_REG for 3.1 stack probing loop

* Update test and include more scenarios

* Update R2R version to 5.1 in src/coreclr/inc/readytorun.h src/coreclr/tools/Common/Internal/Runtime/ModuleHeaders.cs

3 years agoFix array interface generation if both IList and IReadOnlyList are linked out. (...
Zoltan Varga [Tue, 5 Jan 2021 01:04:30 +0000 (20:04 -0500)]
Fix array interface generation if both IList and IReadOnlyList are linked out. (#46533)

3 years agoUpdate changed paths to consider new path updates (#46308)
Santiago Fernandez Madero [Tue, 5 Jan 2021 00:39:25 +0000 (16:39 -0800)]
Update changed paths to consider new path updates (#46308)

3 years agomove netcore platforms and targets to csproj (#46474)
Anirudh Agnihotry [Mon, 4 Jan 2021 23:45:22 +0000 (15:45 -0800)]
move netcore platforms and targets to csproj (#46474)

3 years agolog ulimit (#46511)
Dan Moseley [Mon, 4 Jan 2021 23:43:09 +0000 (15:43 -0800)]
log ulimit (#46511)

3 years ago[master] Update dependencies from mono/linker (#46531)
dotnet-maestro[bot] [Mon, 4 Jan 2021 23:20:32 +0000 (23:20 +0000)]
[master] Update dependencies from mono/linker (#46531)

[master] Update dependencies from mono/linker

3 years agoImprove msg for corrupted perf counters (#46535)
Dan Moseley [Mon, 4 Jan 2021 23:01:34 +0000 (15:01 -0800)]
Improve msg for corrupted perf counters (#46535)

* Improve msg for corrupted perf counters

* Remove machine name

3 years agoRemove targets* platform condition from project references (#46377)
Anirudh Agnihotry [Mon, 4 Jan 2021 22:26:32 +0000 (14:26 -0800)]
Remove targets* platform condition from project references (#46377)

* remove targets* platform condition from project references

* Remove extra condition

* remove redundant condition

3 years ago[wasm] Standup EnableAgressiveTrimming for library tests (#46367)
Mitchell Hwang [Mon, 4 Jan 2021 21:21:55 +0000 (16:21 -0500)]
[wasm] Standup EnableAgressiveTrimming for library tests (#46367)

* Trim wasm library tests

* Add SystemBuffers HelloTest and only test that

* Import linker from nuget to override sdk linker

* Remove redundant assembly inclusions

* Add WasmTestRunner referenced assemblies

* Add properties to reduce library size

* Updates

* Configure trimming for library tests

* Link assemblies except for test assembly

* Use another path to WasmTestRunner.dll

* Fix typo

* Setup correctly rooted assemblies

* Don't copy WasmTestRunner.dll from wrong patch when using linker

* Don't inflate publish output with packages which are not used for tests runs

* Fix xunit framework files copying to publish location to not overwrite
version copied as part of trimming publish

* Add linker descriptor for xunit code which linker cannot track

* Add tested assembly to the test payload closure

* One more method to preserve

* Preserving some xunit types to make sure we can actually discover the tests

* Put Wasm.targets import in the right spot

* Add a mode where we can run the regular system.buffers tests

* Dont link out Microsoft.DotNet.RemoteExecutor

* Move Microsoft.DotNet.RemoteExecutor inclusion to xml

* Consolidate ConfigureTrimming itemgroups

* Build PrepareForWasmBuildApp before WasmBuildApp

* Remove manual import of WasmTestRunner assemblies

* Remove temporary HelloTest from System.Buffers

* Added flag to not aggressively link by default

* Revert import and build order changes

* Condition trimming related changes on EnableAggressiveTrimming

* Revert "Don't copy WasmTestRunner.dll from wrong patch when using linker" as MainAssembly is back to $(PublishDir)\WasmTestRunner.dll
This reverts commit 79dc240f4c99f61af1a7e4c98d299be25f8f854e.

* Add comment to note temporary RemoteExecutor assembly inclusion

* Move props from general tests to mobile tests

* Revert "Condition trimming related changes on EnableAggressiveTrimming"

This reverts commit a97fb56eeb47522a4af1e7e47acd3595cf48271e.

* Broaden trimming options for all mobile targets

* Enable PublishTrimmed regardless of OS when aggressively trimming

* Move trimming specific property to ConfigureTrimming

* Import NuGet linker in mobile tests by default

* Add file description

* Add detail to ILLink XML descriptor file

* Reformat ConfigureTrimming target tag

* Fix typo

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
Co-authored-by: Marek Safar <marek.safar@gmail.com>
3 years agoAdd memory related logging to S.R.IS tests in Helix (#46517)
Dan Moseley [Mon, 4 Jan 2021 21:03:41 +0000 (13:03 -0800)]
Add memory related logging to S.R.IS tests in Helix (#46517)

* Log more info in Helix

* feedback:

* lambda

3 years agoFurther optimize storage of icu locale data (#45643)
Ben Adams [Mon, 4 Jan 2021 19:28:27 +0000 (19:28 +0000)]
Further optimize storage of icu locale data (#45643)

3 years agouse a different way of removing the access for the temporary test account (#46527)
Adam Sitnik [Mon, 4 Jan 2021 17:54:06 +0000 (18:54 +0100)]
use a different way of removing the access for the temporary test account (#46527)

* use a different way of removing the access for the temporary test account:

use RemoveAccessRule instead of adding a new AccessControlType.Deny rule

* Apply suggestions from code review

Co-authored-by: Stephen Toub <stoub@microsoft.com>
3 years agoHalf conversion test cases for subnormal corner cases (#46523)
Emile Cormier [Mon, 4 Jan 2021 17:41:38 +0000 (13:41 -0400)]
Half conversion test cases for subnormal corner cases (#46523)

* Half conversion test cases for subnormal corner cases

* Single/Double->Half rounding corner test cases

* Single/Double->Half conversion subnormal rounding corner test cases

3 years agoAdd support for rebuilding the wasm executable in non-aot mode. (#45072)
Zoltan Varga [Mon, 4 Jan 2021 17:40:08 +0000 (12:40 -0500)]
Add support for rebuilding the wasm executable in non-aot mode. (#45072)

* Add support for rebuilding the wasm executable in non-AOT mode.

* Run the pinvoke generator as well.
* Strip the final executable.
* Document some of the public msbuild properties.

* Add some properties to make things more readable.

* Fix AOT support.

* Fix AOT.

3 years agoFix bug in W3C ID version check (#46492)
xiang17 [Mon, 4 Jan 2021 17:11:34 +0000 (09:11 -0800)]
Fix bug in W3C ID version check (#46492)

3 years agoUpdate to latest centos 7 prereqs image (#46422)
Adeel Mujahid [Mon, 4 Jan 2021 16:35:36 +0000 (18:35 +0200)]
Update to latest centos 7 prereqs image (#46422)

* Update to latest centos 7 prereqs image

* Fix stringop-overflow in interop tests
Warnings were of the form:

```sh
/runtime/src/tests/Interop/BestFitMapping/BestFitMappingNative.cpp:94:12: error: 'char* strncpy(char*, const char*, size_t)' specified bound depends on the length of the source argument [-Werror=stringop-overflow=]
   94 |     strncpy(pBack, pStr, len);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~
/runtime/src/tests/Interop/BestFitMapping/BestFitMappingNative.cpp:92:24: note: length computed here
   92 |     size_t len = strlen(pStr) + 1; //+1, Include the NULL Character.
      |                  ~~~~~~^~~~~~
```

3 years agoUpdate dependencies from https://github.com/dotnet/runtime build 20210103.3 (#46530)
dotnet-maestro[bot] [Mon, 4 Jan 2021 16:20:59 +0000 (16:20 +0000)]
Update dependencies from https://github.com/dotnet/runtime build 20210103.3 (#46530)

[master] Update dependencies from dotnet/runtime

3 years ago[mono] Fix DISABLE_REFLECTION_EMIT on netcore (#46443)
Ryan Lucia [Mon, 4 Jan 2021 15:04:34 +0000 (10:04 -0500)]
[mono] Fix DISABLE_REFLECTION_EMIT on netcore (#46443)

3 years agoRemove some dead stuff (#46494)
Dan Moseley [Sun, 3 Jan 2021 23:28:57 +0000 (15:28 -0800)]
Remove some dead stuff (#46494)

* Remove some dead stuff

* Remove unnecessary test

* Remove FCall alias

3 years ago[master] Update dependencies from dotnet/xharness dotnet/llvm-project dotnet/icu...
dotnet-maestro[bot] [Sun, 3 Jan 2021 12:05:56 +0000 (12:05 +0000)]
[master] Update dependencies from dotnet/xharness dotnet/llvm-project dotnet/icu dotnet/arcade (#46450)

[master] Update dependencies from dotnet/xharness dotnet/llvm-project dotnet/icu dotnet/arcade

 - Merge branch 'master' into darc-master-471b4a40-3bef-4a13-b73c-02196b660069

 - Merge branch 'master' into darc-master-471b4a40-3bef-4a13-b73c-02196b660069

3 years ago[llvm] Change branch weights for GC safe points to 1000:1, 64:4 seems to cause a...
monojenkins [Sun, 3 Jan 2021 00:06:21 +0000 (19:06 -0500)]
[llvm] Change branch weights for GC safe points to 1000:1, 64:4 seems to cause a warning from clang: (#46254)

warning: <unknown>:0:0: 94.12% (64 / 68)

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years agoremove lo argument in ArratSortHelper.DownHeap (#46503)
hrrrrustic [Sat, 2 Jan 2021 20:41:32 +0000 (15:41 -0500)]
remove lo argument in ArratSortHelper.DownHeap (#46503)

3 years agoFix building interp-whitebox test. (#46388)
monojenkins [Sat, 2 Jan 2021 19:37:53 +0000 (14:37 -0500)]
Fix building interp-whitebox test. (#46388)

<!--
Thank you for your Pull Request!

If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed.

Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number
-->

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years ago[jit] Make the stelem helper calls non-virtual if possible. (#46262)
monojenkins [Sat, 2 Jan 2021 16:30:18 +0000 (11:30 -0500)]
[jit] Make the stelem helper calls non-virtual if possible. (#46262)

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years ago[wasm] Handle the case when emscripten interleaves methods from multiple AOT images...
monojenkins [Sat, 2 Jan 2021 15:17:27 +0000 (10:17 -0500)]
[wasm] Handle the case when emscripten interleaves methods from multiple AOT images. (#46393)

<!--
Thank you for your Pull Request!

If you are new to contributing to Mono, please try to do your best at conforming to our coding guidelines http://www.mono-project.com/community/contributing/coding-guidelines/ but don't worry if you get something wrong. One of the project members will help you to get things landed.

Does your pull request fix any of the existing issues? Please use the following format: Fixes #issue-number
-->

Co-authored-by: vargaz <vargaz@users.noreply.github.com>
3 years agoRemove MainAssembly parameter from WasmAppBuilder (#46453)
Mitchell Hwang [Fri, 1 Jan 2021 16:54:12 +0000 (11:54 -0500)]
Remove MainAssembly parameter from WasmAppBuilder (#46453)

Co-authored-by: Mitchell Hwang <mitchell.hwang@microsoft.com>
3 years agoFix arm64 wrong multireg copies from reg to small type field in memory (#46345)
Sergey Andreenko [Thu, 31 Dec 2020 22:47:14 +0000 (14:47 -0800)]
Fix arm64 wrong multireg copies from reg to small type field in memory (#46345)

* Add a repro.

* improve the test.

* Fix the issue and add a few comments.

* response review.

3 years agoApple Silicon Fix GCStressC (#46471)
Steve MacLean [Thu, 31 Dec 2020 17:32:12 +0000 (12:32 -0500)]
Apple Silicon Fix GCStressC (#46471)

* Fix W^X Thread::CommitGCStressInstructionUpdate()

* Fix RemoveGcCoverageInterrupt

* Fix PAL_DispatchException continueExecution

3 years agoRemove managed Mono.MonoDomainSetup class and MonoAppDomainSetup struct (#46472)
Aleksey Kliger (λgeek) [Thu, 31 Dec 2020 13:21:12 +0000 (08:21 -0500)]
Remove managed Mono.MonoDomainSetup class and MonoAppDomainSetup struct (#46472)

* [runtime] remove MonoDomain:setup field

* [CoreLib] Delete Mono.MonoDomainSetup

* [metadata] Use a System.Object sentinel object for MonoAppDomainSetup

Doesn't seem like we need any of this stuff on netcore

* [metadata] MonoAppDomainSetup struct is dead code on netcore

3 years agoAllow incremental servicing of packages and more packaging infra cleanup (#46447)
Viktor Hofer [Thu, 31 Dec 2020 10:20:46 +0000 (11:20 +0100)]
Allow incremental servicing of packages and more packaging infra cleanup (#46447)

* More packaging cleanup

* Add incremental package servicing throughout the repo

* Update dependencies to 6.0.0-beta.20630.3

3 years agoRemove dead code in XML (#46454)
Dan Moseley [Wed, 30 Dec 2020 23:06:59 +0000 (15:06 -0800)]
Remove dead code in XML (#46454)

3 years agoAllow idle timeout to be inherited from msquic (#46207)
Justin Kotalik [Wed, 30 Dec 2020 22:55:09 +0000 (14:55 -0800)]
Allow idle timeout to be inherited from msquic (#46207)

3 years agoThread abort exceptions, do not preallocate + some cleanup. (#46455)
Vladimir Sadov [Wed, 30 Dec 2020 21:21:22 +0000 (13:21 -0800)]
Thread abort exceptions, do not preallocate + some cleanup. (#46455)

* remove preallocated thread aborts and base exception

* removed DB_IPCE_FET_RE_ABORT

* removed TSNC_DebuggerReAbort

* removed TAR_Thread

* removed TS_Aborted

* removed ThreadAbortRequester

* remove ThreadAbortInfo

* finalizer and threadpool outer loops should not see or need to handle thread aborts

3 years agoUse Strings.resx file for the exception messages (#43414)
Roman Marusyk [Wed, 30 Dec 2020 20:45:45 +0000 (22:45 +0200)]
Use Strings.resx file for the exception messages (#43414)

* Use Strings.resx file for the exception messages

* Use Strings.resx file for the exception messages

* Use Strings.resx file for the exception messages

* Code review fixes

* Remove unused resource string

* Code review fixes

* Code review fixes

* Add resx

* Reverse change for dead code

* Fix build and delete 2 dead files

* Another missing resx

Co-authored-by: Dan Moseley <danmose@microsoft.com>
3 years agomove SocketTaskExtensions methods to Socket class (#45083)
Geoff Kizer [Wed, 30 Dec 2020 19:45:10 +0000 (11:45 -0800)]
move SocketTaskExtensions methods to Socket class (#45083)

* move SocketTaskExtensions methods to Socket class

* add SocketTaskExtensionsTest for minimal verification of the old extension methods

* alphabetize methods in ref source

* add doc comments

Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
3 years agoAdhoc codesign corrupt signatures (#46435)
Steve MacLean [Wed, 30 Dec 2020 16:03:37 +0000 (11:03 -0500)]
Adhoc codesign corrupt signatures (#46435)

* Adhoc codesign corrupt signatures

* PR Feedback

3 years agouse nuget pack task from the package instead of the sdk (#46438)
Anirudh Agnihotry [Tue, 29 Dec 2020 17:18:05 +0000 (09:18 -0800)]
use nuget pack task from the package instead of the sdk (#46438)

* use nuget pack task from the package instead of the sdk

* Update Directory.Build.targets

* Update Versions.props

* Update Versions.props

* Update Directory.Build.targets

Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
3 years agoDelete all.locproj (#46449)
Viktor Hofer [Tue, 29 Dec 2020 14:01:58 +0000 (15:01 +0100)]
Delete all.locproj (#46449)

Looks to be dead code?

3 years agoUpdate dependencies from https://github.com/dotnet/runtime build 20201227.5 (#46427)
dotnet-maestro[bot] [Tue, 29 Dec 2020 06:28:36 +0000 (22:28 -0800)]
Update dependencies from https://github.com/dotnet/runtime build 20201227.5 (#46427)

runtime.native.System.IO.Ports , Microsoft.NETCore.ILAsm , Microsoft.NETCore.DotNetHostPolicy , Microsoft.NET.Sdk.IL , Microsoft.NETCore.DotNetHost , System.Runtime.CompilerServices.Unsafe , System.Text.Json
 From Version 6.0.0-alpha.1.20620.6 -> To Version 6.0.0-alpha.1.20627.5

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
3 years agoILVerify Testing documentation changes (#46418)
Benjamin Bartels [Tue, 29 Dec 2020 02:55:33 +0000 (02:55 +0000)]
ILVerify Testing documentation changes (#46418)

* Added documentation to build/run ILVerify tests

* Added more information about breaking ILVerify test builds

* Reworded Sentence

* Addressed reviewer feedback

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years ago[RyuJIT] Don't optimize "x < 0" to shift for unsigned cmp (#45243)
Egor Bogatov [Mon, 28 Dec 2020 21:42:18 +0000 (00:42 +0300)]
[RyuJIT] Don't optimize "x < 0" to shift for unsigned cmp (#45243)

* Don't optimize singed comparisons

* use issue's ID

* Address feedback

* Update codegenxarch.cpp

* enable test

3 years agoRyuJIT: Remove redundant memory barrier for XAdd and XChg on arm (#45970)
Egor Bogatov [Mon, 28 Dec 2020 21:36:23 +0000 (00:36 +0300)]
RyuJIT: Remove redundant memory barrier for XAdd and XChg on arm (#45970)

* Remove redundant memory barrier for XAdd and XChg on arm

* Update codegenarm64.cpp

* Same for casal

3 years ago[master] Update dependencies from mono/linker (#46428)
dotnet-maestro[bot] [Mon, 28 Dec 2020 20:30:27 +0000 (20:30 +0000)]
[master] Update dependencies from mono/linker (#46428)

[master] Update dependencies from mono/linker

3 years agoAvoid deferred Arcade importing (#46397)
Viktor Hofer [Mon, 28 Dec 2020 16:33:57 +0000 (17:33 +0100)]
Avoid deferred Arcade importing (#46397)

* General cleanup and mono import Arcade in root

* More cleanup and coreclr import Arcade root

* Import Arcade root from libraries

* Set informationversion for corelib

* BuildArchitecture cleanup

* Fix property name

* Fix default target invocation of runtime.proj

* specify tfm correctly

* Remove unnecessary TestStrongNameKeyId

* Revert TestStrongNameKeyId removal

* Fix entrypoint target by using M.B.NoTargets

* Fix reference assembly paths

* PR feedback

* Set Platform correctly

* PR feedback and more cleanup

* Move BaselineMicrosoftNetCoreAppPackageVersion

* Fix reference to CoreLib

* Fix OS calculation

* Fix targets importing

* Remove *TargetOS

* Add RuntimeConfiguration doc

* Change conditions in root msbuild files

* installer test fixes

* Cleanup

* More cleanup because of well defined entrypoint

* Don't import D.B.* from installer tests at all

* Rename fix

* Include explicit reference to mscorlib in ilproj

* Update eng/restore/docs.targets

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Revert some installer test changes

* Installer test fix again

* Disable EOL tfm check for installer tests

* Set platform later for installer

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
3 years agofix typo (#46423)
Weihan Li [Mon, 28 Dec 2020 09:32:42 +0000 (17:32 +0800)]
fix typo (#46423)

3 years ago[master] Update dependencies from mono/linker (#46385)
dotnet-maestro[bot] [Mon, 28 Dec 2020 07:52:10 +0000 (07:52 +0000)]
[master] Update dependencies from mono/linker (#46385)

[master] Update dependencies from mono/linker

3 years agoIntrinsify Object.MemberwiseClone() (#46243)
Egor Bogatov [Sun, 27 Dec 2020 17:26:29 +0000 (20:26 +0300)]
Intrinsify Object.MemberwiseClone() (#46243)

3 years agoDisable failing tests to clean-up JitStress runs. (#46350)
Sergey Andreenko [Sun, 27 Dec 2020 17:24:41 +0000 (09:24 -0800)]
Disable failing tests to clean-up JitStress runs. (#46350)

* disable coreroot_determinism with JitStress

* Disable Vector3Interop_r on arm64 windows.

https://github.com/dotnet/runtime/issues/46347

3 years ago[sgen] Use new MonoClassKind MONO_CLASS_GC_FILLER in mono_class_create_array_fill_typ...
Aleksey Kliger (λgeek) [Sun, 27 Dec 2020 16:41:25 +0000 (11:41 -0500)]
[sgen] Use new MonoClassKind MONO_CLASS_GC_FILLER in mono_class_create_array_fill_type (#46366)

The array fill type MonoClass is used to populate the vtable of sgen nursery
free space.

Previously we used a static MonoClass that was zero-initialized. To make it
easier to spot pointers to freed nursery memory, initialize the class_kind to a
new constant MONO_CLASS_GC_FILLER.

Check for the new value explicitly in class-accessors.c

3 years agoClean up managed dependencies for Mono's domain/loader context (#46323)
Marek Safar [Sun, 27 Dec 2020 08:10:59 +0000 (09:10 +0100)]
Clean up managed dependencies for Mono's domain/loader context (#46323)

Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
3 years agoFix ILVerify Default Method Verification (#46404)
Benjamin Bartels [Sun, 27 Dec 2020 07:35:21 +0000 (07:35 +0000)]
Fix ILVerify Default Method Verification (#46404)

3 years agoRespect PackAllLibraries property for all libraries packages (#46403)
Jan Kotas [Sat, 26 Dec 2020 08:23:02 +0000 (22:23 -1000)]
Respect PackAllLibraries property for all libraries packages (#46403)

A few libraries packages were still building even when PackAllLibraries was set to false

3 years agoFix Android sample (#46386)
Egor Bogatov [Fri, 25 Dec 2020 22:28:42 +0000 (01:28 +0300)]
Fix Android sample (#46386)

3 years agoMove few more methods to shared RuntimeType (#46383)
Marek Safar [Fri, 25 Dec 2020 04:56:36 +0000 (05:56 +0100)]
Move few more methods to shared RuntimeType (#46383)

3 years agoPartial rollback of #46244 to workaround #46389 (#46390)
Jan Kotas [Fri, 25 Dec 2020 04:51:17 +0000 (18:51 -1000)]
Partial rollback of #46244 to workaround #46389 (#46390)

3 years agoConsolidate packaging properties (#46331)
Viktor Hofer [Fri, 25 Dec 2020 02:02:42 +0000 (03:02 +0100)]
Consolidate packaging properties (#46331)

* Consolidate packaging properties

* Remove versions.txt file from packages

The versions.txt file was added to packages to know which SHA a package
was built against. As the nuspec now contains the SHA, the versions file
isn't necessary anymore.

3 years agoDon't include the CoreCLR cross targeting files when dumping to disk. (#46394)
Jeremy Koritzinsky [Fri, 25 Dec 2020 00:24:01 +0000 (16:24 -0800)]
Don't include the CoreCLR cross targeting files when dumping to disk. (#46394)

3 years agodisable MainWindow*_GetWithGui_ShouldRefresh_Windows tests for Windows Server Core...
Adam Sitnik [Thu, 24 Dec 2020 22:45:59 +0000 (23:45 +0100)]
disable MainWindow*_GetWithGui_ShouldRefresh_Windows tests for Windows Server Core (#46387)

* the MainWindowTitle might have already been initialized

* disable MainWindow*_GetWithGui_ShouldRefresh_Windows tests for Windows Server Core

3 years agoalways try to add the result of getegid to the list returned by getgroups (#46302)
Adam Sitnik [Thu, 24 Dec 2020 13:49:53 +0000 (14:49 +0100)]
always try to add the result of getegid to the list returned by getgroups (#46302)

* according to https://man7.org/linux/man-pages/man2/getgroups.2.html it's not specified if this group is included in the list returned by getgroups

3 years agoJIT: ensure pred lists stay in increasing bbNum order (#46351)
Andy Ayers [Thu, 24 Dec 2020 09:23:21 +0000 (01:23 -0800)]
JIT: ensure pred lists stay in increasing bbNum order (#46351)

Whenever blocks are renumbered or a block is swapped into an existing
pred list entry, ensure the pred list remains properly ordered.

Closes #8720.

3 years agoRemove ICustomMarshaler from linker descriptor linker can keep the type (#46333)
Marek Safar [Thu, 24 Dec 2020 08:22:54 +0000 (09:22 +0100)]
Remove ICustomMarshaler from linker descriptor linker can keep the type (#46333)

* Remove ICustomMarshaler from linker descriptor linker can keep the type
conditionally

* Add dependency link to runtime infrastructure code

3 years agoRefactor more of thread creation into shared CoreLib partition (#46244)
Jan Kotas [Thu, 24 Dec 2020 08:01:22 +0000 (22:01 -1000)]
Refactor more of thread creation into shared CoreLib partition (#46244)

3 years agoMake managed `enum_flag_HasTypeEquivalence` match value in methodtable.h (#45185)
Vladimir Sadov [Thu, 24 Dec 2020 07:55:38 +0000 (23:55 -0800)]
Make managed `enum_flag_HasTypeEquivalence` match value in methodtable.h (#45185)

* make managed enum_flag_HasTypeEquivalence match value in methodtable.h

* IsInstanceOfClass JIT helper does not need to check for type equivalence

3 years ago[master] Update dependencies from dotnet/runtime-assets dotnet/llvm-project dotnet...
dotnet-maestro[bot] [Wed, 23 Dec 2020 22:48:17 +0000 (22:48 +0000)]
[master] Update dependencies from dotnet/runtime-assets dotnet/llvm-project dotnet/icu dotnet/arcade (#46321)

[master] Update dependencies from dotnet/runtime-assets dotnet/llvm-project dotnet/icu dotnet/arcade

 - Merge branch 'master' into darc-master-00529095-a8ce-4967-9456-ad78bb3e877c

3 years agoRemove Mono.MonoDomain managed class (#46346)
Aleksey Kliger (λgeek) [Wed, 23 Dec 2020 22:42:46 +0000 (17:42 -0500)]
Remove Mono.MonoDomain managed class (#46346)

3 years agoFixes environment variable prefixes with double underscores preventing environment...
Mateusz Brawański [Wed, 23 Dec 2020 18:34:57 +0000 (19:34 +0100)]
Fixes environment variable prefixes with double underscores preventing environment variables from being parsed (#42932)

* Prevent envvar prefix normalization. Fixes #40911

The fix implementation works like so:
- The environment variable prefix is stripped from a variable name.
- The variable name is then normalized.
- The prefix is then prepended to the variable name.
- Additionally, the filtering now occurs at the same time as
parsing/transformation.

* Account for the fact that envPrefix is never null.

* Remove LINQ per #44923

* Fix bad tests resulting from misunderstanding how loader is supposed to work.

* Fixed merge conflicts

* Actually merge #44923 and fix conflicts.

Co-authored-by: Stephen Toub <stoub@microsoft.com>
3 years agoFix handling of Arm32 struct with 8-byte alignment and 12-byte rounded size. (#46320)
Sergey Andreenko [Wed, 23 Dec 2020 06:43:04 +0000 (22:43 -0800)]
Fix handling of Arm32 struct with 8-byte alignment and 12-byte rounded size. (#46320)

* Add a repro.

* Fix arm32 struct with 8-byte alignment and 12-byte rounded size.

* format fixes

* review

3 years agoa bit more cleanup for regions (#46348)
Maoni Stephens [Wed, 23 Dec 2020 06:12:13 +0000 (22:12 -0800)]
a bit more cleanup for regions (#46348)

got rid of the 2 fields related to plan_allocation_start since regions do not need them

3 years agoUpdate dependencies from https://github.com/mono/linker build 20201222.1 (#46336)
dotnet-maestro[bot] [Wed, 23 Dec 2020 01:27:49 +0000 (01:27 +0000)]
Update dependencies from https://github.com/mono/linker build 20201222.1 (#46336)

[master] Update dependencies from mono/linker

3 years agoReplace AWK with Bash scripts (#46313)
Adeel Mujahid [Wed, 23 Dec 2020 00:52:26 +0000 (02:52 +0200)]
Replace AWK with Bash scripts (#46313)

* Replace AWK with Bash scripts

* Replace awk usage with Bash or POSIX tr

* Simplify genmoduleindex.sh