platform/upstream/dotnet/runtime.git
19 months ago[Tizen] make corefx-managed as noarch pkg accepted/tizen_7.0_unified_hotfix tizen_7.0_hotfix accepted/tizen/7.0/unified/20221110.062713 accepted/tizen/7.0/unified/hotfix/20221116.110721 accepted/tizen/unified/20221004.150438 tizen_7.0_m2_release
Hyungju Lee [Mon, 3 Oct 2022 23:39:22 +0000 (08:39 +0900)]
[Tizen] make corefx-managed as noarch pkg

20 months agoEnable aggresive optimization for aarch64 accepted/tizen/unified/20220902.125513 submit/tizen/20220902.000912
Woongsuk Cho [Thu, 1 Sep 2022 21:24:53 +0000 (06:24 +0900)]
Enable aggresive optimization for aarch64

In case of aarch64, DISABLE_AGGRESSIVE_OPT option makes start-time slow and use a lot of memory.
So, enable aggressive optimization for aarch64.

21 months agoRe-create profile data on profile-use-only mode (#71754) accepted/tizen/unified/20220825.063606 submit/tizen/20220825.013003
ws77.cho [Thu, 11 Aug 2022 17:53:57 +0000 (02:53 +0900)]
Re-create profile data on profile-use-only mode (#71754)

Activate multicorejit recorder to re-create the profile data
when the multicorejit player cannot be executed due to BADIMAGEFORMAT error on profile-use-only mode

21 months ago[Tizen] Fix module setup in mcj-edit for generic args and fnptr args
Gleb Balykov [Tue, 9 Aug 2022 10:00:51 +0000 (13:00 +0300)]
[Tizen] Fix module setup in mcj-edit for generic args and fnptr args

See usage of GetTypeHandleThrowing in src/coreclr/vm/siginfo.cpp for more details.

21 months agoAsan alloc-dealloc-mismatch accepted/tizen/unified/20220808.135307 submit/tizen/20220808.003922
Hyungju Lee [Mon, 8 Aug 2022 00:20:42 +0000 (09:20 +0900)]
Asan alloc-dealloc-mismatch

21 months agoFix ASAN violation under Samsung's netcoredbg (#69339) accepted/tizen/unified/20220807.235006 submit/tizen/20220804.224104
Mike McLaughlin [Mon, 16 May 2022 22:11:36 +0000 (15:11 -0700)]
Fix ASAN violation under Samsung's netcoredbg (#69339)

* Fix ASAN violation under Samsung's netcoredbg

Fixes issue https://github.com/dotnet/runtime/issues/62281

The wrong holder was being used in DacDbiInterfaceImpl::GetNativeVarData(); change to NewArrayHolder.

Added new/delete operators to Exception so when it is thrown from the DAC and caught/deleted in DBI, the
correct C++ allocator is used. When the DAC is called by DBI, g_pAllocator points to the DBI allocator.

* Code review feedback

22 months ago[Tizen] Fix property setup for DisableAggressiveOpt accepted/tizen/unified/20220629.152610 submit/tizen/20220628.184902
Gleb Balykov [Tue, 28 Jun 2022 16:01:52 +0000 (19:01 +0300)]
[Tizen] Fix property setup for DisableAggressiveOpt

22 months ago[Tizen] Add truncate command to mcj-edit submit/tizen/20220628.140436
Gleb Balykov [Thu, 23 Jun 2022 09:58:18 +0000 (12:58 +0300)]
[Tizen] Add truncate command to mcj-edit

22 months ago[Tizen] Fix calculation of method count for modules
Gleb Balykov [Wed, 22 Jun 2022 19:33:48 +0000 (22:33 +0300)]
[Tizen] Fix calculation of method count for modules

This was a bit out of sync with the way runtime increments methodCount in MulticoreJitRecorder::EncodeModule.
Value of methodCount for module is not used in runtime, but anyway this is a bug and merge of module with itself
without this patch produces different sha256 because counters did not match. After this patch sha256 match.

23 months ago[Tizen] Fix typo for size of longCounters
Gleb Balykov [Wed, 15 Jun 2022 13:13:02 +0000 (16:13 +0300)]
[Tizen] Fix typo for size of longCounters

23 months ago[Tizen] More R2R Compilation
Dong-Heon Jung [Wed, 18 May 2022 04:59:29 +0000 (13:59 +0900)]
[Tizen] More R2R Compilation

Compiles more methods which have IsAggressiveOptimization attribute.

23 months agoFix ICorDebugFunction2::GetVersionNumber for arm32.
Mikhail Kurinnoi [Fri, 27 May 2022 15:29:49 +0000 (18:29 +0300)]
Fix ICorDebugFunction2::GetVersionNumber for arm32.

23 months agoDo not use ExecutableMemoryAllocator on 64 bit platforms if default base address...
Gleb Balykov [Thu, 9 Jun 2022 18:35:12 +0000 (21:35 +0300)]
Do not use ExecutableMemoryAllocator on 64 bit platforms if default base address usage is requested

23 months ago[Tizen] Add missing xunit.console.dll for ILCompiler.TypeSystem.ReadyToRun.Tests
Gleb Balykov [Mon, 6 Jun 2022 19:21:15 +0000 (22:21 +0300)]
[Tizen] Add missing xunit.console.dll for ILCompiler.TypeSystem.ReadyToRun.Tests

2 years ago[Tizen] Add mcj-edit.py tool that can modify MultiCoreJit profiles.
Gleb Balykov [Fri, 22 Apr 2022 10:28:32 +0000 (13:28 +0300)]
[Tizen] Add mcj-edit.py tool that can modify MultiCoreJit profiles.

Available commands:
- split (splits mcj profile in app-dependent and app-independent based on modules)
- merge (merges mcj profiles in one profile)
- verify (verifies correctness of mcj profile)
- find (finds method or module in mcj profile)
- compare (compares mcj profiles)
- clean-stats (cleans mcj profile usage stats)
- print (prints mcj profile)
- help (shows short summary on some aspects of mcj profile)
- self-test (performs some testing)

See README for more details on usage, see examples/ for examples of mcj profiles.

2 years ago[Tizen] Add missing copyright to tizen ASan related changes accepted/tizen/unified/20220501.223647 submit/tizen/20220429.002649
Gleb Balykov [Tue, 26 Apr 2022 10:18:33 +0000 (13:18 +0300)]
[Tizen] Add missing copyright to tizen ASan related changes

2 years agoCheck MultiCoreJit code cache before trying to jit method in mcj thread
Gleb Balykov [Tue, 5 Apr 2022 10:03:17 +0000 (13:03 +0300)]
Check MultiCoreJit code cache before trying to jit method in mcj thread

This is needed when multiple profiles are played and same methods exist in them.
Without this change, if method was not yet requested in main thread,
it will be jitted as many times in mcj thread as it appears in all profiles.

2 years ago[Tizen] crossgen2: Add --imagebase option
Timur Mustafin [Wed, 9 Feb 2022 10:41:07 +0000 (13:41 +0300)]
[Tizen] crossgen2: Add --imagebase option

--imagebase option set preferable ImageBase field to output PE-file

2 years ago[Tizen] Move createdump to CoreCLR binary part.
Mikhail Kurinnoi [Tue, 22 Feb 2022 15:03:42 +0000 (07:03 -0800)]
[Tizen] Move createdump to CoreCLR binary part.

2 years agoAdd Linux x86 createdump code.
Mikhail Kurinnoi [Tue, 22 Feb 2022 14:58:35 +0000 (06:58 -0800)]
Add Linux x86 createdump code.

2 years ago[Tizen] Enable Hot Reload debugger API. accepted/tizen/unified/20220412.100248 submit/tizen/20220407.164827
Mikhail Kurinnoi [Thu, 7 Apr 2022 12:21:54 +0000 (15:21 +0300)]
[Tizen] Enable Hot Reload debugger API.

Note, we use part debugger API related to EnC in order to work with Hot Reload from debugger.
EnC itself not implemented (runtime don't have code for Linux arm32/arm64/x86 that could "jump" from old method version into new method version).
At this moment, runtime don't support Hot Reload for Linux/Tizen x86.

2 years ago[Tizen] Revert 01d07431ab6c60ec4e7f2a87255520d84a6ff8a2
Mikhail Kurinnoi [Thu, 7 Apr 2022 11:09:18 +0000 (14:09 +0300)]
[Tizen] Revert 01d07431ab6c60ec4e7f2a87255520d84a6ff8a2

2 years ago[Tizen] Enable Hot Reload debugger API. submit/tizen/20220406.172323
Mikhail Kurinnoi [Wed, 6 Apr 2022 09:48:15 +0000 (12:48 +0300)]
[Tizen] Enable Hot Reload debugger API.

Note, we use part debugger API related to EnC in order to work with Hot Reload from debugger.
EnC itself not implemented (runtime don't have code for Linux arm32/arm64/x86 that could "jump" from old method version into new method version).

2 years agoFix ReplaceModuleMapping for 32bit binary on 64bit kernel (#66640) accepted/tizen/unified/20220321.141107 submit/tizen/20220321.051546
Hyungju Lee [Mon, 21 Mar 2022 04:58:35 +0000 (13:58 +0900)]
Fix ReplaceModuleMapping for 32bit binary on 64bit kernel (#66640)

2 years agoIncrease arm32/arm64 maximum instruction group size (#65153) accepted/tizen/unified/20220318.132846 submit/tizen/20220317.212551
Bruce Forstall [Fri, 11 Feb 2022 19:10:19 +0000 (11:10 -0800)]
Increase arm32/arm64 maximum instruction group size (#65153)

We require that the maximum number of prolog instructions all fit in one
instruction group. Recent changes appear to have increased the number of
instructions we are generating the prolog, leading to NOWAY assert on
Release builds and test failure on linux-arm64.

Bump up the number to avoid this problem, and leave some headroom for
possible additional needs.

Fixes #64162, #64793.

2 years agoFix unaligned UTF16 string read in collect tracing EventPipe command.
lateralusX [Mon, 28 Feb 2022 08:59:17 +0000 (09:59 +0100)]
Fix unaligned UTF16 string read in collect tracing EventPipe command.

Collect tracing 2 EventPipe command triggers an unaligned UTF16 string
read that could cause a SIGBUS on platforms not supporting unalinged
reads of UTF16 strings (so far only seen on 32-bit ARM Linux CI machine).

On CoreCLR this could even cause a unalinged int read due to
optimizations used in UTF8Encoding::GetByteCount.

Signed-off-by: olekarev <o.lekarev@samsung.com>
2 years ago[Tizen] Enable TC_QuickJitForLoops by default
Gleb Balykov [Fri, 10 Sep 2021 15:48:36 +0000 (18:48 +0300)]
[Tizen] Enable TC_QuickJitForLoops by default

2 years ago[Tizen] Enable Linq expressions interpreter instead of compiler for tests
Gleb Balykov [Mon, 29 Nov 2021 19:12:10 +0000 (22:12 +0300)]
[Tizen] Enable Linq expressions interpreter instead of compiler for tests

Limitations of linq expressions interpreter:
- can't get IL for interpreted linq expressions (see `VerifyIL` on how to get IL code), because it either won't match, or exception will happen because method is not dynamic; besides, there's actually no IL for interpreted expression, interpreter has its own internal representation
- target of Delegate returned by interpreter can't be casted to Closure (see VerifyEmitConstantsToIL<T> in CompilerTests.cs)
- aliased byref parameters are not supported with interpreted linq expressions (https://github.com/dotnet/runtime/issues/19286)
- interpreting TryExpression that is inside the Filter expression of a CatchBlock of another TryExpression works in interpreter, but throws in compiler (https://github.com/dotnet/runtime/issues/20083)
- analysis of Quote expression is a bit different for interpreter (see AssertIsBox<T> in UnaryQuoteTests.cs)
- with disabled FEATURE_DLG_INVOKE and FEATURE_FAST_CREATE if TypeMissing is used in linq expression, then exception is thrown (https://github.com/dotnet/runtime/issues/15553), this is fixed if these features are enabled

2 years ago[Tizen] Enable Linq expressions interpreter instead of compiler
Gleb Balykov [Wed, 24 Nov 2021 17:54:48 +0000 (20:54 +0300)]
[Tizen] Enable Linq expressions interpreter instead of compiler

2 years ago[Tizen] Allow marshalling IL_STUB compilation for ndirect methods using crossgen2...
Gleb Balykov [Wed, 2 Mar 2022 19:42:28 +0000 (22:42 +0300)]
[Tizen] Allow marshalling IL_STUB compilation for ndirect methods using crossgen2 if SPC.dll is in the same bubble

2 years ago[Tizen] Revert "Pass zero length array as null" https://github.com/dotnet/coreclr...
Gleb Balykov [Wed, 2 Mar 2022 19:37:30 +0000 (22:37 +0300)]
[Tizen] Revert "Pass zero length array as null" https://github.com/dotnet/coreclr/pull/27555

Without this revert two coreclr tests fail if they are compiled with inputbubble and IL_STUB saving in ni:
- Interop/PInvoke/Array/MarshalArrayAsParam/AsDefault/AsDefaultTest/AsDefaultTest.sh
- Interop/PInvoke/Array/MarshalArrayAsParam/AsLPArray/AsLPArrayTest/AsLPArrayTest.sh

For both tests problem is exactly with array with 0 length, which is passed as NULL to native function.
But it should be a pointer to the non-existing element, and IL_STUB generated at runtime does exactly this.

2 years agoProperly use result value for dump IPC cmd (#60726) accepted/tizen/unified/20220318.020439 submit/tizen/20220316.211614
John Salem [Wed, 27 Oct 2021 00:10:18 +0000 (17:10 -0700)]
Properly use result value for dump IPC cmd (#60726)

Signed-off-by: Mikhail Kurinnoi <m.kurinnoi@samsung.com>
2 years ago[Tizen] Add coreclr crossgen2 skips for RPI4 for armhf
Gleb Balykov [Thu, 3 Feb 2022 08:16:19 +0000 (11:16 +0300)]
[Tizen] Add coreclr crossgen2 skips for RPI4 for armhf

These are mostly a subset of src/tests/issues.targets with some additional excludes:

- BasicTestWithMcj is skipped because it manually invokes crossgen2

2 years ago[Tizen] Add coreclr skips for RPI4 for armhf
Gleb Balykov [Thu, 3 Feb 2022 08:08:11 +0000 (11:08 +0300)]
[Tizen] Add coreclr skips for RPI4 for armhf

These are a subset of src/tests/issues.targets

2 years ago[Tizen] runtest.sh: move System.Private.CoreLib.dll to System.Private.CoreLib.dll...
Gleb Balykov [Wed, 2 Feb 2022 17:51:29 +0000 (20:51 +0300)]
[Tizen] runtest.sh: move System.Private.CoreLib.dll to System.Private.CoreLib.dll.bak only if crossgen was successful

2 years ago[Tizen] Fix build mode setup for crossgen2 self-contained publish
Gleb Balykov [Thu, 27 Jan 2022 13:25:33 +0000 (16:25 +0300)]
[Tizen] Fix build mode setup for crossgen2 self-contained publish

2 years ago[Tizen] Fix continuous unsuccessful pthread_setschedparam if there's no CAP_SYS_NICE...
Gleb Balykov [Wed, 16 Feb 2022 11:38:36 +0000 (14:38 +0300)]
[Tizen] Fix continuous unsuccessful pthread_setschedparam if there's no CAP_SYS_NICE capability

2 years ago[Tizen] Create list dynamic dependencies of crossgen2 in RPM
j-h.choi [Mon, 10 Jan 2022 07:53:58 +0000 (16:53 +0900)]
[Tizen] Create list dynamic dependencies of crossgen2 in RPM

2 years ago[Tizen] Publish crossgen2 as a single file with self-contained accepted/tizen/unified/20220110.054933 submit/tizen/20220110.044913
j-h.choi [Thu, 6 Jan 2022 05:19:15 +0000 (14:19 +0900)]
[Tizen] Publish crossgen2 as a single file with self-contained

2 years ago[Tizen] Add armv7hl arch support to coreclr test runner script
Gleb Balykov [Thu, 23 Dec 2021 20:07:30 +0000 (23:07 +0300)]
[Tizen] Add armv7hl arch support to coreclr test runner script

2 years ago[Tizen] Add coreclr tests build dependencies v6.0.0 for armv7hl
Gleb Balykov [Thu, 23 Dec 2021 14:19:16 +0000 (17:19 +0300)]
[Tizen] Add coreclr tests build dependencies v6.0.0 for armv7hl

To add these files do next steps:
1. Remove .gitignore
2. Remove all previous build artifacts and non-used files (make output of "git status" clear)
3. export NUGET_PACKAGES=`pwd`/.packages
4. Cross build coreclr tests for arm
5. Commit .packages

Notes:
- If some of these nuget packages are not commited or missed for other reasons, gbs build will fail.
- To build such way with all the tizen changes next patch is needed:

diff --git a/src/tests/build.proj b/src/tests/build.proj
index e71e28f4871..074cfda408b 100644
--- a/src/tests/build.proj
+++ b/src/tests/build.proj
@@ -45,7 +45,7 @@
     <PropertyGroup>
       <_ConfigurationProperties>/p:TargetOS=$(TargetOS) /p:TargetArchitecture=$(TargetArchitecture) /p:Configuration=$(Configuration) /p:CrossBuild=$(CrossBuild)</_ConfigurationProperties>
       <DotnetRestoreCommand Condition="'$(__DistroRid)' == ''">"$(DotNetTool)" restore $(RestoreProj) $(PackageVersionArg) /p:SetTFMForRestore=true $(_ConfigurationProperties)</DotnetRestoreCommand>
-      <DotnetRestoreCommand Condition="'$(__DistroRid)' != ''">"$(DotNetTool)" restore --ignore-failed-sources --source ../../.packages -r $(__DistroRid) $(RestoreProj) $(PackageVersionArg) /p:SetTFMForRestore=true $(_ConfigurationProperties)</DotnetRestoreCommand>
+      <DotnetRestoreCommand Condition="'$(__DistroRid)' != ''">"$(DotNetTool)" restore $(RestoreProj) $(PackageVersionArg) /p:SetTFMForRestore=true $(_ConfigurationProperties)</DotnetRestoreCommand>
     </PropertyGroup>
     <Exec Command="$(DotnetRestoreCommand)"/>
   </Target>

2 years ago[Tizen] Add armv7hl build support
Gleb Balykov [Thu, 23 Dec 2021 09:50:17 +0000 (12:50 +0300)]
[Tizen] Add armv7hl build support

2 years ago[Tizen] Add coreclr crossgen2 skips for RPI4 for arm64
Gleb Balykov [Mon, 20 Dec 2021 17:30:38 +0000 (20:30 +0300)]
[Tizen] Add coreclr crossgen2 skips for RPI4 for arm64

These are mostly a subset of src/tests/issues.targets with some additional excludes:

- BasicTestWithMcj is skipped because it manually invokes crossgen2

2 years ago[Tizen] Add coreclr skips for RPI4 for arm64
Gleb Balykov [Mon, 20 Dec 2021 17:30:00 +0000 (20:30 +0300)]
[Tizen] Add coreclr skips for RPI4 for arm64

These are mostly a subset of src/tests/issues.targets with some additional excludes:

- readytorun/r2rdump/FrameworkTests/R2RDumpTests/R2RDumpTests is excluded because System.Private.CoreLib.dll is not a r2r image in default mode

2 years ago[Tizen] Crossgen all dlls in clr test dir
Gleb Balykov [Mon, 13 Dec 2021 09:12:35 +0000 (12:12 +0300)]
[Tizen] Crossgen all dlls in clr test dir

2 years ago[Tizen] Do not pack not needed R2RDump libs on arm/arm64
Gleb Balykov [Mon, 20 Dec 2021 15:47:03 +0000 (18:47 +0300)]
[Tizen] Do not pack not needed R2RDump libs on arm/arm64

2 years ago[Tizen] Add ni.dll.tmp files in order to not interfere with crossgen2
Gleb Balykov [Wed, 15 Dec 2021 11:21:46 +0000 (14:21 +0300)]
[Tizen] Add ni.dll.tmp files in order to not interfere with crossgen2

Consequnce of this is that crossgen2 libs itself can be safely compiled with --inputbubble option

2 years ago[Tizen] Add coreclr crossgen2 skips for TM1/TW3 for armel
Gleb Balykov [Fri, 10 Dec 2021 14:19:42 +0000 (17:19 +0300)]
[Tizen] Add coreclr crossgen2 skips for TM1/TW3 for armel

These are mostly a subset of src/tests/issues.targets with some additional excludes:

- crossgen2 for HugeField1, b71005, b311420 get killed
- BasicTestWithMcj is skipped because it manually invokes crossgen2

2 years ago[Tizen] Add coreclr skips for TM1/TW3 for armel
Gleb Balykov [Fri, 10 Dec 2021 13:36:58 +0000 (16:36 +0300)]
[Tizen] Add coreclr skips for TM1/TW3 for armel

These are mostly a subset of src/tests/issues.targets with some additional excludes:

- readytorun/r2rdump/FrameworkTests/R2RDumpTests/R2RDumpTests is excluded because System.Private.CoreLib.dll is not a r2r image in default mode
- hugeexpr1, releaseondetach, HugeField2, test16 get killed

2 years ago[Tizen] Add method to write coredump of .NET process
Mateusz Moscicki [Mon, 21 Jun 2021 16:12:54 +0000 (18:12 +0200)]
[Tizen] Add method to write coredump of .NET process

This method allows to create minimal coredump (as createdump does) of a
process that is in dumping state after crush.

Original commit:
https://github.sec.samsung.net/dotnet/coreclr/commit/66a3b803910b389de38703ce349695a247146f5b

2 years ago[Tizen] Enable pgo for armel
Gleb Balykov [Thu, 9 Dec 2021 13:56:28 +0000 (16:56 +0300)]
[Tizen] Enable pgo for armel

---------------------------
I. How to get pgo profiles:
---------------------------

1. Rebuild coreclr in instrumentation mode (set pgo_instrument to 1 in coreclr.spec in case of gbs build)

2. Setup device (tw3) correctly, pgo profiling setup should match setup of device for perf measurements:

  a) generate ni.dll using crossgen2 for all dlls from /usr/share/dotnet.tizen/netcoreapp, /usr/share/dotnet.tizen/framework and for all apps:

    for pgo profiles gathered in this commit next crossgen2 options are used: --jitpath /usr/share/dotnet.tizen/netcoreapp/libclrjit.so --targetarch armel -O --compilebubblegenerics --inputbubble

  b) install plugin-prebuilt

3. Run applications using instrumented coreclr in standalone mode:

  For pgo profiles gathered in this commit next apps were used: Alarm, Calculator, XStopWatch.

  To launch apps use app_launcher -e, then terminate app with app_launcher -t.

  Profile data will be stored in /tmp/clrjit-<pid>.profdata and /tmp/coreclr-<pid>.profdata files. It's possible to change filename using LLVM_PROFILE_FILE environment variable (both for clrjit and coreclr).

4. Merge profile data:

  $ llvm-profdata merge -output=/tmp/coreclr.profdata /tmp/coreclr-*.profdata
  $ llvm-profdata merge -output=/tmp/clrjit.profdata /tmp/clrjit-*.profdata

----------------------------
II. How to use pgo profiles:
----------------------------

1. Put profile data in ./pgodata/<arch>/data

  Be sure to verify there are no lines about PGO or LTO in gbs build log! Otherwise pgo profiles are placed incorrectly!

2. Rebuild coreclr with disabled pgo_instrument and enabled pgo_optimized (PGO is disabled by default)

2 years ago[Tizen] Add corerun to coreclr pkg
Woongsuk Cho [Mon, 13 Sep 2021 00:25:28 +0000 (09:25 +0900)]
[Tizen] Add corerun to coreclr pkg

2 years ago[x86/Linux] Fix SIGSEGV on Debugger.Break() during debugging.
Mikhail Kurinnoi [Thu, 23 Sep 2021 14:56:40 +0000 (07:56 -0700)]
[x86/Linux] Fix SIGSEGV on Debugger.Break() during debugging.

SIGSEGV occur in src/vm/i386/cgenx86.cpp `HelperMethodFrame::UpdateRegDisplay()` at line `pRD->pCurrentContext->Eip = pRD->ControlPC = m_MachState.GetRetAddr();`, since `pRD->pCurrentContext` is NULL.
The point of issue - wrong code block compilation in DebuggerWalkStack() in case of Linux x86.

2 years ago#58181 Fix NullReferenceException in crossgen2. (#58183)
Mikhail Filippov [Fri, 10 Sep 2021 16:12:04 +0000 (19:12 +0300)]
#58181 Fix NullReferenceException in crossgen2. (#58183)

* #58181 Fix NullReferenceException in crossgen2.

* Support .exe extension in output filename.

2 years agoUse temporary ni.dll.tmp files with crossgen2 pipeline mode in order to not interfere...
Gleb Balykov [Wed, 1 Sep 2021 22:08:02 +0000 (01:08 +0300)]
Use temporary ni.dll.tmp files with crossgen2 pipeline mode in order to not interfere with crossgen2 itself (#57341)

* Use temporary ni.dll.tmp files with crossgen2 pipeline mode in order to not interfere with crossgen2 itself

* Add check that --single-file-compilation mode of crossgen2 is always used with --out-near-input

2 years agoFix x86 linux tests build and run
Timur Mustafin [Tue, 13 Jul 2021 19:51:59 +0000 (22:51 +0300)]
Fix x86 linux tests build and run

[unix x86] Fix tests build
[unix x86] Add register map for crossgen2
            Fixes readytorun/coreroot_determinism/coreroot_determinism/coreroot_determinism.sh on x86 linux
[unix x86] Fix tail calls tests
[unix x86] Fix unmanaged callconv
[unix x86] Fix passing implicit args via stack
[unix x86] Pop hidden retbuff arg on cdecl callconv
[unix x86] Fix WriteBarrier call

[x86] Add calling convention name print to dump
[x86] Use ebx to pass VASigCookie to GenericPInvokeCalliHelper
            It fixes stack alignment in GenericPInvokeCalliHelper on unix x86

Fix storageType overflow assertion in TinyArray

2 years ago[Tizen] Disable FEATURE_DLG_INVOKE and FEATURE_FAST_CREATE in System.Linq.Expression
Hyungju Lee [Wed, 24 Apr 2019 08:24:15 +0000 (17:24 +0900)]
[Tizen] Disable FEATURE_DLG_INVOKE and FEATURE_FAST_CREATE in System.Linq.Expression

This increases memory consumption

2 years ago[Tizen] Disable staticfilehost for ASan build
Slava Barinov [Mon, 21 Jun 2021 14:21:47 +0000 (17:21 +0300)]
[Tizen] Disable staticfilehost for ASan build

Static binary is not supported by libasansi.so

Signed-off-by: Slava Barinov <v.barinov@samsung.com>
2 years ago[Tizen] Enable ASan annotation of passing to native code buffers
Andrey Kazmin [Wed, 16 Jun 2021 13:49:18 +0000 (16:49 +0300)]
[Tizen] Enable ASan annotation of passing to native code buffers

Turn on ASan inteceptors while marshaling managed buffers to native code.
We could not properly annotate already allocated on heap buffers, so
we have to disable pinning of such objects.
Current patch affects only pinning of native arrays.

Signed-off-by: Slava Barinov <v.barinov@samsung.com>
2 years ago[Tizen] Enable Tizen ASan runtime support
Vyacheslav Cherkashin [Wed, 16 Jun 2021 13:24:30 +0000 (16:24 +0300)]
[Tizen] Enable Tizen ASan runtime support

Enable libasansi.so support (libasan.so with switchable interceptors).

Signed-off-by: Vyacheslav Cherkashin <v.cherkashin@samsung.com>
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
2 years ago[Tizen] Implement ASan wrapper for Linux AMD64
Vyacheslav Cherkashin [Wed, 16 Jun 2021 13:21:55 +0000 (16:21 +0300)]
[Tizen] Implement ASan wrapper for Linux AMD64

Signed-off-by: Vyacheslav Cherkashin <v.cherkashin@samsung.com>
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
2 years ago[Tizen] Implement ASan wrapper for Linux ARM32
Vyacheslav Cherkashin [Wed, 16 Jun 2021 13:19:36 +0000 (16:19 +0300)]
[Tizen] Implement ASan wrapper for Linux ARM32

This commit implements wrappers that allow interception transitions
from managed to external unmanaged code (CIL -> native) and back
(native -> CIL). This allows enable/disable ASan during transitions.
Due to this, we sanitize only external code, which allows us to
achieve acceptable performance.

Signed-off-by: Vyacheslav Cherkashin <v.cherkashin@samsung.com>
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
2 years ago[Tizen] Implement detecting of sanitized libraries
Andrey Drobyshev [Mon, 21 Jun 2021 07:10:17 +0000 (10:10 +0300)]
[Tizen] Implement detecting of sanitized libraries

Parse ".dynamic" section (ELF dynamic array tags) of the module being
added, find ".rel(a).plt" section and search it for presence of
'__asan_init' symbol.

Signed-off-by: Andrey Drobyshev <a.drobyshev@samsung.com>
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
2 years ago[Tizen] Add new vconf to set runtime_version
j-h.choi [Tue, 8 Jun 2021 05:14:12 +0000 (14:14 +0900)]
[Tizen] Add new vconf to set runtime_version

2 years ago[Tizen] Use simple name without suffix in MulticoreJit
Gleb Balykov [Mon, 7 Jun 2021 07:52:00 +0000 (10:52 +0300)]
[Tizen] Use simple name without suffix in MulticoreJit

After this change name of resulting profile on disk matches the one passed with COMPlus_MultiCoreJitProfile env variable

2 years ago[Tizen] Reduce arm_phdr_cb call overhead
JUNG DONG-HEON [Thu, 9 Jan 2020 07:38:00 +0000 (16:38 +0900)]
[Tizen] Reduce arm_phdr_cb call overhead

- Too many calls to arm_phdr_cb even though it get the same data.
- It caches an ARM_CB_DATA for libcoreclr.so, then reuse.

2 years ago[Tizen] Disable jithost arena cache
Gleb Balykov [Fri, 2 Aug 2019 14:28:27 +0000 (17:28 +0300)]
[Tizen] Disable jithost arena cache

2 years ago[Tizen] Add coreclr_preload_assembly to CoreCLR host API
Gleb Balykov [Wed, 19 May 2021 17:13:49 +0000 (20:13 +0300)]
[Tizen] Add coreclr_preload_assembly to CoreCLR host API

This API allows to preload ni.dll (both simple and composite)

Restrictions:
- single file bundle can't be preloaded using this API
- images with huge pages (i.e. images with alignment > os page size) can't be preloaded using this API

!This patch should be rebased with caution, see comment for MAPApplyBaseRelocationsPreloadedPEFile!

Co-authored by k.baladurin@samsung.com

----

Simple change to tests coreclr preloading api on corerun (note the extra / for non-SPC dlls, it is needed because TPA list in corerun is created with extra / after dir name, i.e. "/home/z/Dev/runtime2/overlay_x64//System.Runtime.ni.dll" will be in tpa list, and argument of coreclr_preload_assembly must match it exactly). TPA list in dotnet/launcher is created without extra /.

diff --git a/src/coreclr/hosts/corerun/corerun.cpp b/src/coreclr/hosts/corerun/corerun.cpp
index b3f2c867c30..33d446d1a32 100644
--- a/src/coreclr/hosts/corerun/corerun.cpp
+++ b/src/coreclr/hosts/corerun/corerun.cpp
@@ -288,6 +288,17 @@ static int run(const configuration& config)
         return -1;
     }

+    coreclr_preload_assembly_ptr coreclr_preload_assembly_func = nullptr;
+    if (!try_get_export(coreclr_mod, "coreclr_preload_assembly", (void**)&coreclr_preload_assembly_func))
+    {
+        return -1;
+    }
+
+
+    coreclr_preload_assembly_func("/home/z/Dev/runtime2/overlay_x64/System.Private.CoreLib.dll");
+    coreclr_preload_assembly_func("/home/z/Dev/runtime2/overlay_x64//System.Runtime.ni.dll");
+    coreclr_preload_assembly_func("/home/z/Dev/runtime2/overlay_x64//System.IO.ni.dll");
+
     // Construct CoreCLR properties.
     pal::string_utf8_t tpa_list_utf8 = pal::convert_to_utf8(std::move(tpa_list));
     pal::string_utf8_t app_path_utf8 = pal::convert_to_utf8(std::move(app_path));

2 years ago[Tizen] separate PIC and PIE to fix x86_64 build error
Woongsuk Cho [Thu, 9 May 2019 09:02:22 +0000 (18:02 +0900)]
[Tizen] separate PIC and PIE to fix x86_64 build error

2 years ago[Tizen] add pie linker option to createdump
Woongsuk Cho [Thu, 12 Dec 2019 11:41:39 +0000 (20:41 +0900)]
[Tizen] add pie linker option to createdump

2 years ago[Tizen] Add a config knob for importing ibc files
Swift Kim [Thu, 1 Aug 2019 06:10:49 +0000 (15:10 +0900)]
[Tizen] Add a config knob for importing ibc files

2 years ago[Tizen] Workaround Timing Issue
Hyungju Lee [Sun, 19 Apr 2020 22:19:32 +0000 (07:19 +0900)]
[Tizen] Workaround Timing Issue

To avoid an exception thrown on managed build
Context: dotnet/roslyn#37974 and dotnet/roslyn#38420

```
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error MSB3883: Unexpected exception:  [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : System.AggregateException: One or more errors occurred. (Object synchronization method was called from an unsynchronized block of code.) [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : ---> System.ApplicationException: Object synchronization method was called from an unsynchronized block of code. [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : at System.Threading.Mutex.ReleaseMutex() [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : at Microsoft.CodeAnalysis.CommandLine.ServerNamedMutex.Dispose() [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : at Microsoft.CodeAnalysis.CommandLine.BuildServerConnection.RunServerCompilationCore(RequestLanguage language, List`1 arguments, BuildPathsAlt buildPaths, String pipeName, String keepAlive, String libEnvVariable, Nullable`1 timeoutOverride, Func`3 tryCreateServerFunc, CancellationToken cancellationToken) [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : --- End of inner exception stack trace --- [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken) [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : at System.Threading.Tasks.Task.Wait(CancellationToken cancellationToken) [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
[  336s] /home/abuild/rpmbuild/BUILD/corefx-3.1.0/packages/microsoft.net.compilers.toolset/3.3.0-beta2-19367-02/tasks/netcoreapp2.1/Microsoft.CSharp.Core.targets(58,5): error : at Microsoft.CodeAnalysis.BuildTasks.ManagedCompiler.ExecuteTool(String pathToTool, String responseFileCommands, String commandLineCommands) [/home/abuild/rpmbuild/BUILD/corefx-3.1.0/src/System.ComponentModel/src/System.ComponentModel.csproj]
```

2 years ago[Tizen] skip dotnet specific arguments in corerun
Konstantin Baladurin [Fri, 4 Oct 2019 16:45:44 +0000 (19:45 +0300)]
[Tizen] skip dotnet specific arguments in corerun

Now we use corerun to run corefx tests instead of dotnet, because last
one isn't available for Tizen/armel. So we need to skip dotnet specific
arguments, we patch corerun for it because Microsoft.DotNet.RemoteExecutor
tries to execute binary that it gets from /proc/self/maps, so we need a
binary that will behave like dotnet.

2 years ago[Tizen] add access(2) call before dlopening files
Yaroslav Yamshchikov [Thu, 18 Jul 2019 10:14:14 +0000 (13:14 +0300)]
[Tizen] add access(2) call before dlopening files

2 years ago[Tizen] Disable IBC Logger as a default
DongHeon Jung [Thu, 18 Jul 2019 08:28:55 +0000 (17:28 +0900)]
[Tizen] Disable IBC Logger as a default

- Profile information is collected by ibc logger.
  Hower it is not used and saved into profile file.
- The patch disables IBC logger which is enabled by default.
- It disables IBC logger only with ibclogger.h file.
  IBCLOGGER_ENABLED definition is only used in ibclogger files.

2 years ago[Tizen] Update .gitignore
Hyungju Lee [Wed, 13 Mar 2019 00:28:54 +0000 (09:28 +0900)]
[Tizen] Update .gitignore

2 years ago[Tizen] Fix OOPStackUnwinderX86::Unwind crash when Eip is invalid
Igor Kulaychuk [Wed, 25 Apr 2018 18:31:59 +0000 (21:31 +0300)]
[Tizen] Fix OOPStackUnwinderX86::Unwind crash when Eip is invalid

2 years ago[Tizen] Fix EECodeManager::GetAmbientSP on x86/Linux
Igor Kulaychuk [Fri, 20 Apr 2018 20:52:57 +0000 (23:52 +0300)]
[Tizen] Fix EECodeManager::GetAmbientSP on x86/Linux

2 years ago[Tizen] Add -pie to linker option
Hyungju Lee [Mon, 2 Jul 2018 00:28:08 +0000 (09:28 +0900)]
[Tizen] Add -pie to linker option

There have been no -pie linker option.
This patch adds -pie linker option into crossgen(for tizen)

This originates from 0024-Add-pie-to-linker-option.patch

2 years ago[Tizen] Add support for gbs build for i586, x86_64, armv7l, aarch64 (including tests)
Gleb Balykov [Mon, 12 Apr 2021 20:13:24 +0000 (23:13 +0300)]
[Tizen] Add support for gbs build for i586, x86_64, armv7l, aarch64 (including tests)

2 years agoFix linux x86 build error (partial cherry-pick of https://github.com/dotnet/runtime...
Gleb Balykov [Tue, 7 Dec 2021 13:28:24 +0000 (16:28 +0300)]
Fix linux x86 build error (partial cherry-pick of https://github.com/dotnet/runtime/pull/60817)

2 years ago[Tizen] Hardcode LD_GNU for tizen
Gleb Balykov [Tue, 7 Dec 2021 09:12:31 +0000 (12:12 +0300)]
[Tizen] Hardcode LD_GNU for tizen

2 years ago[Tizen] Add coreclr tests build dependencies v6.0.0
Gleb Balykov [Mon, 6 Dec 2021 20:49:45 +0000 (23:49 +0300)]
[Tizen] Add coreclr tests build dependencies v6.0.0

To add these files do next steps:
1. Remove .gitignore
2. Remove all previous build artifacts and non-used files (make output of "git status" clear)
3. export NUGET_PACKAGES=`pwd`/.packages
4. Cross build coreclr tests for armel/arm64/x86 and x64
5. Commit .packages

Notes:
- If some of these nuget packages are not commited or missed for other reasons, gbs build will fail.

2 years ago[Tizen] Add prebuilt libicu-57.1 libraries for x64
Gleb Balykov [Mon, 12 Apr 2021 14:20:02 +0000 (17:20 +0300)]
[Tizen] Add prebuilt libicu-57.1 libraries for x64

These are required for x64 BuildTools in order to run under gbs.

2 years ago[Tizen] Add nuget packages for corefx-managed-ref for clr <= 3.1
Gleb Balykov [Mon, 12 Apr 2021 14:43:01 +0000 (17:43 +0300)]
[Tizen] Add nuget packages for corefx-managed-ref for clr <= 3.1

These are nuget packages, which are used during application build.
To generate these, build TizenFX and put downloaded nuget packages in nuget/ dir.

2 years ago[Tizen] Add x64 BuildTools v6.0.0
Gleb Balykov [Mon, 6 Dec 2021 19:58:08 +0000 (22:58 +0300)]
[Tizen] Add x64 BuildTools v6.0.0

To add these files do next steps:
1. Remove .gitignore
2. Remove all previous build artifacts and non-used files (make output of "git status" clear)
3. export NUGET_PACKAGES=`pwd`/.packages
4. Cross build runtime for required arches (armel, arm64, x86) and build for x64
5. Commit .dotnet, .packages

Notes:
- If some dir names change in future, this will be seen in "git status" after step 4. Add those dirs too.
- If some of these dirs are not commited or missed for other reasons, gbs build will fail.
- These build tools are for x64, thus, gbs build without clang-accel is not supported.

2 years agoUpdate dependencies from https://github.com/dotnet/arcade build 20211022.3 (#60783)
dotnet-maestro[bot] [Fri, 22 Oct 2021 20:27:45 +0000 (13:27 -0700)]
Update dependencies from https://github.com/dotnet/arcade build 20211022.3 (#60783)

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

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
2 years ago[release/6.0] [wasm][debugger] Fix loading a non wasm page and then returning to...
github-actions[bot] [Fri, 22 Oct 2021 20:21:03 +0000 (13:21 -0700)]
[release/6.0] [wasm][debugger] Fix loading a non wasm page and then returning to a wasm page. (#60777)

* Fix loading a non wasm page and then returning to a wasm page.

* Adding non-wasm-page.html

* fixing other method

* addressing @radical comments

* adding last empty line

Co-authored-by: DESKTOP-GEPIA6N\Thays <thaystg@gmail.com>
2 years ago[release/6.0] Create a parent CMake project for building app bundles on CI (#59154)
github-actions[bot] [Thu, 21 Oct 2021 18:43:50 +0000 (14:43 -0400)]
[release/6.0] Create a parent CMake project for building app bundles on CI (#59154)

Backport of #58965 to release/6.0

This allows us to not run the CMake configure step separately for each libraries test suite which speeds up the build.

Helps with #58549

2 years ago[release/6.0] Update dependencies from dotnet/icu dotnet/emsdk (#60684)
dotnet-maestro[bot] [Thu, 21 Oct 2021 15:07:10 +0000 (08:07 -0700)]
[release/6.0] Update dependencies from dotnet/icu dotnet/emsdk (#60684)

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

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-rtm.21515.1 -> To Version 6.0.0-rtm.21519.1

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

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

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

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

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
2 years ago[release/6.0] Tweak workload build to use _GenerateMsiVersionString target (#60695)
github-actions[bot] [Wed, 20 Oct 2021 22:36:28 +0000 (15:36 -0700)]
[release/6.0] Tweak workload build to use _GenerateMsiVersionString target (#60695)

* Tweak workload build to use _GenerateMsiVersionString target

Replaces GenerateVersions that wasn't quite accurate enough for what we need

* Pulled in arcade target that will be removed at a later date

* More tweaks

* Forget dependsontargets

Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
2 years ago[release/6.0] Update dependencies from dotnet/icu dotnet/emsdk dotnet/runtime-assets...
dotnet-maestro[bot] [Wed, 20 Oct 2021 14:00:53 +0000 (07:00 -0700)]
[release/6.0] Update dependencies from dotnet/icu dotnet/emsdk dotnet/runtime-assets dotnet/arcade (#60495)

* Update dependencies from https://github.com/dotnet/runtime-assets build 20211015.1

Microsoft.DotNet.CilStrip.Sources , 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.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Windows.Extensions.TestData
 From Version 6.0.0-beta.21514.1 -> To Version 6.0.0-beta.21515.1

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

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

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

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 6.0.0-rtm.21513.2 -> To Version 6.0.0-rtm.21515.1

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

Microsoft.NET.Workload.Emscripten.Manifest-6.0.100
 From Version 6.0.0-rtm.21514.1 -> To Version 6.0.0

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

Microsoft.NET.Workload.Emscripten.Manifest-6.0.100
 From Version 6.0.0-rtm.21514.1 -> To Version 6.0.0

* [wasm] Fix workload install for tests, with 6.0.0

Move to using the generated nuget.config, which has the feeds added by
darc. The target is a duplicate from
`src/installer/tests/PrepareTestAssets/PrepareTestAssets.proj`, and
should be moved to a common location in future.

Thanks to @lewing for the suggestion.

* [wasm] Remove unused bits

* Update dependencies from https://github.com/dotnet/runtime-assets build 20211018.1

Microsoft.DotNet.CilStrip.Sources , 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.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Windows.Extensions.TestData
 From Version 6.0.0-beta.21514.1 -> To Version 6.0.0-beta.21518.1

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

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

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Ankit Jain <radical@gmail.com>
Co-authored-by: Matt Mitchell <mmitche@microsoft.com>
2 years ago[release/6.0] Don't special case "Experimental" projects (#60643)
github-actions[bot] [Tue, 19 Oct 2021 23:27:01 +0000 (16:27 -0700)]
[release/6.0] Don't special case "Experimental" projects (#60643)

* Don't special case "Experimental" projects

We only have one experimental project, System.Runtime.Experimental and
we want it to behave like any other package.

* Make coreclr packages use `IsShipping`

Co-authored-by: Eric StJohn <ericstj@microsoft.com>
2 years ago[release/6.0] Fix stable builds for some transport packages (#60635)
Matt Mitchell [Tue, 19 Oct 2021 23:21:40 +0000 (16:21 -0700)]
[release/6.0] Fix stable builds for some transport packages (#60635)

* Fix stable builds for some transport packages
Some non-shipping transport and sources packages were getting incorrectly getting stable versions. This didn't show up in the servicing excercise, though they probably did the right thing for unrelated reasons.

* Fix transport package version by not using PackageVersion property on workloads-testing.targets

Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
2 years agoUpdate mac installers location string (#60500)
github-actions[bot] [Tue, 19 Oct 2021 17:08:51 +0000 (10:08 -0700)]
Update mac installers location string (#60500)

Co-authored-by: sfoslund <sfoslund@microsoft.com>
2 years ago[release/6.0] Enforce scatter/gather file I/O Windows API requirements et. al. (...
github-actions[bot] [Tue, 19 Oct 2021 17:02:56 +0000 (10:02 -0700)]
[release/6.0] Enforce scatter/gather file I/O Windows API requirements et. al. (#58423)

* Move checking and pinning Windows vectored I/O buffers to a dedicated method.

* Refactor the scatter/gather APIs to use the common checking method.

And use pinned GCHandles and IntPtrs instead of MemoryHandles when passing the segment array to the bottom-most method.

* Shorten the name of the buffer-checking method.

* Directly get the pinned array's address instead of calling GCHandle.AddrOfPinnedObject.

* Refactor the error handling logic in TryPrepareScatterGatherBuffers.

* Allocate the segment array from native memory and at TryPrepareScatterGatherBuffers.

* Cache the page size on a static readonly field and add a couple of TODOs.

* Make the memory handlers readonly structs.

* Add a test.

* Reorder some methods with PR feedback taken into consideration.

* Stop special-casing scatter/gather operations with zero or one buffer.

* Factor the cleaning-up of the segment buffers into a separate method.

* Follow up on Scatter/Gather API changes (#58447)

* Allocate an array of memory handles only if needed.

* Remove an unnecessary variable in the multiple-syscall write gather.

* Actually verify the content read by the read scatter operation.

* Delay allocating native memory.

* Verify that the whole file was read in the scatter/gather test.

* Test the case when the scatter/gather buffers are acceptable by the Windows API.

* Avoid null pointer dereferences when passing an empty segment array.

* Test performing scatter/gather I/O with an empty segment array.

Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Theodore Tsirpanis <teo.tsirpanis.718@gmail.com>
Co-authored-by: Theodore Tsirpanis <12659251+teo-tsirpanis@users.noreply.github.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
2 years ago[release/6.0] Use custom error message when running out of syncblocks (#60592)
github-actions[bot] [Tue, 19 Oct 2021 17:01:37 +0000 (10:01 -0700)]
[release/6.0] Use custom error message when running out of syncblocks (#60592)

* Use custom error message when running out of syncblocks

Contributes to #49215

* Update src/coreclr/dlls/mscorrc/mscorrc.rc

update message

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Co-authored-by: Manish Godse <61718172+mangod9@users.noreply.github.com>
2 years ago[release/6.0] Update IntelliSense package (#60621)
github-actions[bot] [Tue, 19 Oct 2021 17:01:06 +0000 (10:01 -0700)]
[release/6.0] Update IntelliSense package (#60621)

* Update IntelliSense package

* Fixed package version

Co-authored-by: carlossanlop <carlossanlop@users.noreply.github.com>
Co-authored-by: carlossanlop <1175054+carlossanlop@users.noreply.github.com>
2 years ago[release/6.0] Stabilize for RTM (#60294)
Matt Mitchell [Tue, 19 Oct 2021 01:53:32 +0000 (18:53 -0700)]
[release/6.0] Stabilize for RTM (#60294)

* Stabilize for RTM

* revert xunit version to fix MEDIspecificationTests package

* pass the correct wasm package version and disable the coreclr failing test

* Update wcf and system.data.sqlclient compat pack dependencies

* Update WCF dependencies

Co-authored-by: Anirudh Agnihotry <anagniho@microsoft.com>
Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
2 years ago[release/6.0] Update THIRD-PARTY-NOTICES.TXT (#60092)
Nikola Milosavljevic [Mon, 18 Oct 2021 21:03:44 +0000 (14:03 -0700)]
[release/6.0] Update THIRD-PARTY-NOTICES.TXT (#60092)

* Update THIRD-PARTY-NOTICES.TXT

* Regenerating to incorporate a change in infra

* Fixes for duplicate instance and misplaced header

* Remove duplicate corefx header