platform/upstream/coreclr.git
4 years agoUpdate .gitignore
이형주/Common Platform Lab(SR)/Staff Engineer/삼성전자 [Wed, 21 Aug 2019 08:41:30 +0000 (17:41 +0900)]
Update .gitignore

4 years agoAlign the Contents of EventPipeBuffers (#19375) accepted/tizen/5.0/base/20190717.015232 submit/tizen_5.0_base/20190715.035802 submit/tizen_5.0_base/20190715.050501
Brian Robbins [Fri, 10 Aug 2018 17:22:40 +0000 (10:22 -0700)]
Align the Contents of EventPipeBuffers (#19375)

5 years agoFix hijacking for ARM/ARM64/x86 on Unix (#20042) 14/201014/1 accepted/tizen/5.0/base/20190308.035751 submit/tizen_5.0_base/20190307.063951
Jan Vorlicek [Mon, 24 Sep 2018 23:51:44 +0000 (01:51 +0200)]
Fix hijacking for ARM/ARM64/x86 on Unix (#20042)

* Fix hijacking for ARM/ARM64/x86 on Unix

We were not checking the case when we have interrupted a thread inside
of a function epilog for other architectures than amd64. When such an
interruption happens, GS cookie check in a stack walking has failed,
since we are unable to decode GS cookie location when the IP is in
epilog.
This fix implements IsIPInEpilog for all architectures and makes the
check unconditional.

Change-Id: I365be79d6b43ec900084bf2ec031b3555917f8e0

5 years agoAdd an error log to determine where to throw BadImageFormatException 39/195839/1 accepted/tizen/5.0/base/20181221.113757 submit/tizen_5.0_base/20181219.005417
Woongsuk Cho [Tue, 18 Dec 2018 23:50:43 +0000 (08:50 +0900)]
Add an error log to determine where to throw BadImageFormatException

Change-Id: I0231e9c5209ce39acfe37c54cfcda934b4f773db

5 years ago[Tizen] Update version: 2.1.1 -> 2.1.4 accepted/tizen_base tizen_base accepted/tizen/5.0/base/20181101.090356 accepted/tizen/base/20180921.231027 submit/tizen_5.0_base/20181101.000001 submit/tizen_base/20180921.060650
Gleb Balykov [Tue, 11 Sep 2018 10:02:50 +0000 (13:02 +0300)]
[Tizen] Update version: 2.1.1 -> 2.1.4

5 years ago[Tizen] Update build tools to 2.1.0-rc1-03006-01
Gleb Balykov [Fri, 7 Sep 2018 13:40:01 +0000 (16:40 +0300)]
[Tizen] Update build tools to 2.1.0-rc1-03006-01

5 years ago[Tizen] Fix gen-buildsys-clang.sh to set CLR_CMAKE_LINUX_ID
Hyungju Lee [Wed, 29 Aug 2018 07:56:17 +0000 (16:56 +0900)]
[Tizen] Fix gen-buildsys-clang.sh to set CLR_CMAKE_LINUX_ID

Change-Id: I95043b2fcdccd27e3ae198f7c41d89bde3049c48

5 years ago[Tizen] Remove `tizen-release` package dependency for GBS build
Hyungju Lee [Fri, 10 Aug 2018 05:28:30 +0000 (14:28 +0900)]
[Tizen] Remove `tizen-release` package dependency for GBS build

`tizen-release` package holds variables that need to be defined at the
unified build. Therefore, it is about to move to unified while coreclr
stays at the base. So, the local os-release file is introduced.

5 years agoFillRegDisplay: initialize volatileCurrContextPointers for ARM and ARM64
Konstantin Baladurin [Tue, 7 Aug 2018 15:41:25 +0000 (18:41 +0300)]
FillRegDisplay: initialize volatileCurrContextPointers for ARM and ARM64

We need to initialize volatileCurrContextPointers because they could be
used by GC in the case of the leaf frame. This patch fixes crashes during
GC when we are single stepping using managed debugger.

5 years agoMove assert so it doesn't fire for null addresses
Chris Sienkiewicz [Thu, 31 May 2018 20:40:11 +0000 (13:40 -0700)]
Move assert so it doesn't fire for null addresses

5 years agoAdd missing semicolon
Chris Sienkiewicz [Tue, 29 May 2018 19:01:37 +0000 (12:01 -0700)]
Add missing semicolon

5 years agoRestore deleted space
Chris Sienkiewicz [Fri, 25 May 2018 19:51:14 +0000 (12:51 -0700)]
Restore deleted space

5 years agoEnsure thumb bit is set when calling FindOrCreateInitAndAddJitInfo. Add an assert...
Chris Sienkiewicz [Fri, 25 May 2018 01:10:44 +0000 (18:10 -0700)]
Ensure thumb bit is set when calling FindOrCreateInitAndAddJitInfo. Add an assert to FindOrCreateInitAndAddJitInfo when on arm to ensure the thumb bit is set

5 years agoUse macro rather than manually setting thumb bit in debugger.cpp
Chris Sienkiewicz [Wed, 23 May 2018 22:38:14 +0000 (15:38 -0700)]
Use macro rather than manually setting thumb bit in debugger.cpp

5 years agoEnsure thumb bit is set when intializing a code region.
Chris Sienkiewicz [Wed, 23 May 2018 22:37:04 +0000 (15:37 -0700)]
Ensure thumb bit is set when intializing a code region.

5 years ago[Tizen] Enable RELRO protection
junghyuk.park [Wed, 25 Jul 2018 09:26:25 +0000 (18:26 +0900)]
[Tizen] Enable RELRO protection

5 years ago[Tizen] Fix call convension for profiler wrappers with clang 5 support
Petr Bred [Fri, 3 Aug 2018 08:50:50 +0000 (11:50 +0300)]
[Tizen] Fix call convension for profiler wrappers with clang 5 support

Signed-off-by: Petr Bred <p.bred@samsung.com>
5 years ago[Tizen] Add crossgen and coreconsole to coreclr package
junghyuk.park [Tue, 24 Jul 2018 04:21:26 +0000 (13:21 +0900)]
[Tizen] Add crossgen and coreconsole to coreclr package

- The coreclr-extra package is going to be eliminated soon.
- Symlinks to crossgen and coreconsole are created temporarily for graceful migration

5 years agoZapper::CompileAssembly: save NI file atomically
Konstantin Baladurin [Fri, 20 Jul 2018 12:19:50 +0000 (15:19 +0300)]
Zapper::CompileAssembly: save NI file atomically

It can get rid of possible problems with corrupted NI files if crossgen
will be killed during image saving.

5 years agoFix call convension for profiler wrappers.
Dmitri Botcharnikov [Thu, 19 Jul 2018 13:42:20 +0000 (16:42 +0300)]
Fix call convension for profiler wrappers.

Change-Id: I7937dfffeb7500d37b4e2da485a563a442b38b8c

5 years ago[Tizen] Provide symlinks to .NET version for compatibility
junghyuk.park [Thu, 12 Jul 2018 23:19:24 +0000 (08:19 +0900)]
[Tizen] Provide symlinks to .NET version for compatibility

This commit will be reverted soon when all dependent modules watch the symlink at '/usr/share/dotnet.tizen/netcoreapp'.

Change-Id: Ib2ebf62a5788e225a9e3354f53fadde282708700

5 years ago[Tizen] Update version: 2.1.0 -> 2.1.1
Gleb Balykov [Mon, 9 Jul 2018 11:55:37 +0000 (14:55 +0300)]
[Tizen] Update version: 2.1.0 -> 2.1.1

5 years agoi386: Refixed declaration in eetoprofinterfaceimpl.cpp with definition
Sergey Ignatov [Mon, 9 Jul 2018 08:11:53 +0000 (11:11 +0300)]
i386: Refixed declaration in eetoprofinterfaceimpl.cpp with definition

5 years agoi386: Fixed declaration in eetoprofinterfaceimpl.cpp with definition
Sergey Ignatov [Thu, 5 Jul 2018 17:29:00 +0000 (20:29 +0300)]
i386: Fixed declaration in eetoprofinterfaceimpl.cpp with definition

5 years agoRevert "Launching the Memory Profiler on x86 emulator may lead to crash in coreclr...
Sergey Ignatov [Mon, 9 Jul 2018 09:45:04 +0000 (12:45 +0300)]
Revert "Launching the Memory Profiler on x86 emulator may lead to crash in coreclr (xmm bug)"

This reverts commit a6695d168396847df8d006a8743c84e5141824af.

5 years ago[Tizen] Add skipped testcase: superpmi
Hyeongseok Oh [Mon, 26 Jun 2017 07:12:08 +0000 (16:12 +0900)]
[Tizen] Add skipped testcase: superpmi

Skip JIT/superpmi/superpmicollect/superpmicollect.sh

5 years ago[Tizen] Add skipped testcase on TM1
Jiyoung Yun [Tue, 20 Jun 2017 06:09:10 +0000 (15:09 +0900)]
[Tizen] Add skipped testcase on TM1

Lists:
JIT.jit64.opt.cse.hugeSimpleExpr1.hugeSimpleExpr1
GC.Regressions.v2.0-rtm.494226.494226.494226
GC.Scenarios.ServerModel.servermodel.servermodel
JIT.jit64.opt.cse.HugeField1.HugeField1
JIT.jit64.opt.cse.HugeField2.HugeField2
JIT.jit64.opt.cse.hugeexpr1.hugeexpr1

5 years agoPEImageLayout: flush instruction cache only for pages with relocs.
Konstantin Baladurin [Mon, 14 May 2018 09:35:09 +0000 (12:35 +0300)]
PEImageLayout: flush instruction cache only for pages with relocs.

We need to flush instruction cache only for pages that have relocations
instead of full sections because otherwise application's shared clean
memory is increased in some cases on Linux.

5 years agoLaunching the Memory Profiler on x86 emulator may lead to crash in coreclr (xmm bug)
Sergey Ignatov [Fri, 8 Jun 2018 16:50:47 +0000 (19:50 +0300)]
Launching the Memory Profiler on x86 emulator may lead to crash in coreclr (xmm bug)

5 years agoFix unset ZapRelocationType for fixup (#18589)
Gleb Balykov [Thu, 21 Jun 2018 22:16:58 +0000 (01:16 +0300)]
Fix unset ZapRelocationType for fixup (#18589)

5 years agoFix build breaks with older MSVC compiler (#18725)
Jan Kotas [Sat, 30 Jun 2018 03:43:08 +0000 (20:43 -0700)]
Fix build breaks with older MSVC compiler (#18725)

5 years agoAdd FEATURE_NGEN_RELOCS_OPTIMIZATIONS=true as default value for Unix ARM
Gleb Balykov [Fri, 1 Jun 2018 17:44:46 +0000 (20:44 +0300)]
Add FEATURE_NGEN_RELOCS_OPTIMIZATIONS=true as default value for Unix ARM

5 years agoRemove relocations for vtable chunks (#17147)
Gleb Balykov [Fri, 29 Jun 2018 14:25:17 +0000 (17:25 +0300)]
Remove relocations for vtable chunks (#17147)

* Separate sections READONLY_VCHUNKS and READONLY_DICTIONARY

* Remove relocations for second-level indirection of Vtable in case FEATURE_NGEN_RELOCS_OPTIMIZATIONS is enabled.

Introduce FEATURE_NGEN_RELOCS_OPTIMIZATIONS, under which NGEN specific relocations optimizations are enabled

* Replace push/pop of R11 in stubs with
  - str/ldr of R4 in space reserved in epilog for non-tail calls
  - usage of R4 with hybrid-tail calls (same as for EmitShuffleThunk)

* Replace push/pop of R11 for function epilog with usage of LR as helper register right before its restore from stack

5 years ago[x86/Linux] Fix marshalling struct with 64-bit types (#17455)
Konstantin Baladurin [Mon, 16 Apr 2018 18:11:41 +0000 (21:11 +0300)]
[x86/Linux] Fix marshalling struct with 64-bit types (#17455)

* [x86/Linux] Fix marshalling struct with 64-bit types

The System V ABI for i386 defines 4-byte alignment for 64-bit types.

* [Linux/x86] Fix marshalling tests in the case of System V i386 ABI

5 years ago[Linux/x86] Fix tests in case of 4-byte alignment for 64-bit types (#17829)
Konstantin Baladurin [Thu, 3 May 2018 19:57:26 +0000 (22:57 +0300)]
[Linux/x86] Fix tests in case of 4-byte alignment for 64-bit types (#17829)

JIT/Directed/RVAInit/nested
JIT/Directed/RVAInit/simple
JIT/Regression/CLR-x86-JIT/V1.2-Beta1/b103058/b103058

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

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

5 years agoFix unwinding of funclet with no epilog on x86/Linux
Igor Kulaychuk [Fri, 6 Apr 2018 15:11:37 +0000 (18:11 +0300)]
Fix unwinding of funclet with no epilog on x86/Linux

5 years agoFix x86/Linux ICorDebug frames API
Igor Kulaychuk [Thu, 5 Apr 2018 19:02:48 +0000 (22:02 +0300)]
Fix x86/Linux ICorDebug frames API

5 years ago[Tizen] Provide a symlink to installed Microsoft.NETCore.App version
junghyuk.park [Wed, 4 Jul 2018 23:08:50 +0000 (08:08 +0900)]
[Tizen] Provide a symlink to installed Microsoft.NETCore.App version

The symlink is added to provide consistent access to installed Microsoft.NETCore.App version.
'/usr/share/dotnet.tizen/netcoreapp' is linked to '/usr/share/dotnet/shared/Microsoft.NETCore.App/2.1.0'.

5 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

5 years ago[Tizen] Enable -O3 optimization in clang 3.8
junghyuk.park [Mon, 25 Jun 2018 10:01:00 +0000 (19:01 +0900)]
[Tizen] Enable -O3 optimization in clang 3.8

5 years ago[Tizen] Add support for GBS
junghyuk.park [Mon, 25 Jun 2018 09:47:41 +0000 (18:47 +0900)]
[Tizen] Add support for GBS

5 years ago[Tizen] Add BuildTools 2.1.0-rc1-02804-05
junghyuk.park [Mon, 25 Jun 2018 07:12:39 +0000 (16:12 +0900)]
[Tizen] Add BuildTools 2.1.0-rc1-02804-05

5 years ago[Tizen] Add prebuilt libicu-57.1 libraries
junghyuk.park [Mon, 25 Jun 2018 07:03:57 +0000 (16:03 +0900)]
[Tizen] Add prebuilt libicu-57.1 libraries

5 years agoSign xstate binary from correct location (#19470)
Matt Mitchell [Mon, 13 Aug 2018 23:04:51 +0000 (16:04 -0700)]
Sign xstate binary from correct location (#19470)

* Sign xstate binary from correct location

* Only submit xstate binary for x86

5 years agoSign api-ms-win-core-xstate-l2-1-0.dll (#19451)
Matt Mitchell [Mon, 13 Aug 2018 20:58:42 +0000 (13:58 -0700)]
Sign api-ms-win-core-xstate-l2-1-0.dll (#19451)

This file is only catalog signed in RS4.  Sign during the build. To achieve this copy the CRT binaries locally rather than referencing from the UCRT location directly.

5 years agoAdd Tizen 5.0 RID
Gleb Balykov [Fri, 20 Jul 2018 10:40:49 +0000 (13:40 +0300)]
Add Tizen 5.0 RID

5 years agoMerge pull request #19224 from AndyAyersMS/Port19156toRelease21
Andy Ayers [Mon, 6 Aug 2018 19:44:35 +0000 (12:44 -0700)]
Merge pull request #19224 from AndyAyersMS/Port19156toRelease21

JIT: port extra check to struct of struct of x promotion to release/2.1

5 years agoFix version of System.Runtime.Intrinsics.Experimental (#19260)
Andy Ayers [Fri, 3 Aug 2018 02:05:46 +0000 (19:05 -0700)]
Fix version of System.Runtime.Intrinsics.Experimental (#19260)

Since there is no servicing version for this package, the 2.1 build was upgrading
to an incompatible 4.6 prerelease which caused test build breaks.

This package is only needed to build tests. We don't expect to service it
for 2.1, given it was an experemental prerelease package.

So fix its version at 4.5.0-rtm.

Closes #19138.

5 years agoJIT: port extra check to struct of struct of x promotion to relase/2.1
Andy Ayers [Fri, 27 Jul 2018 18:09:02 +0000 (11:09 -0700)]
JIT: port extra check to struct of struct of x promotion to relase/2.1

Port of #19156.

Avoid promoting structs that contain struct fields that themselves
wrap single simple fields, if those single simple fields are smaller
than their enclosing struct.

Otherwise we run the risk of losing track of the "extra" bytes in the
innner struct.

Addresses #19149.

5 years agoMerge pull request #19100 from dotnet-maestro-bot/release/2.1-UpdateDependencies
Wes Haggard [Wed, 25 Jul 2018 22:42:46 +0000 (15:42 -0700)]
Merge pull request #19100 from dotnet-maestro-bot/release/2.1-UpdateDependencies

Update CoreClr, CoreFx, PgoData to servicing-26724-06, servicing-26724-03, release-20180725-0038, respectively (release/2.1)

5 years agoUpdate CoreClr, CoreFx, PgoData to servicing-26724-06, servicing-26724-03, release...
dotnet-maestro-bot [Wed, 25 Jul 2018 07:54:02 +0000 (00:54 -0700)]
Update CoreClr, CoreFx, PgoData to servicing-26724-06, servicing-26724-03, release-20180725-0038, respectively

5 years agoUpdate PgoData to release-20180720-0153 (#19055)
dotnet-maestro-bot [Fri, 20 Jul 2018 10:57:23 +0000 (03:57 -0700)]
Update PgoData to release-20180720-0153 (#19055)

5 years agoMerge pull request #19028 from dotnet-maestro-bot/release/2.1-UpdateDependencies
Wes Haggard [Thu, 19 Jul 2018 22:39:16 +0000 (15:39 -0700)]
Merge pull request #19028 from dotnet-maestro-bot/release/2.1-UpdateDependencies

Update CoreClr, CoreFx to servicing-26719-02, servicing-26719-03, respectively (release/2.1)

5 years agoUpdate CoreClr, CoreFx to servicing-26719-02, servicing-26719-03, respectively
dotnet-maestro-bot [Thu, 19 Jul 2018 15:54:55 +0000 (08:54 -0700)]
Update CoreClr, CoreFx to servicing-26719-02, servicing-26719-03, respectively

5 years agoUpdate CoreClr, CoreFx, PgoData to servicing-26718-03, servicing-26718-03, release...
dotnet-maestro-bot [Thu, 19 Jul 2018 14:20:26 +0000 (07:20 -0700)]
Update CoreClr, CoreFx, PgoData to servicing-26718-03, servicing-26718-03, release-20180719-0105, respectively (#19014)

5 years agoUpdate PgoData to release-20180718-0150 (#18980)
dotnet-maestro-bot [Wed, 18 Jul 2018 16:40:49 +0000 (09:40 -0700)]
Update PgoData to release-20180718-0150 (#18980)

5 years agoMerge pull request #18955 from dotnet-maestro-bot/release/2.1-UpdateDependencies
Wes Haggard [Tue, 17 Jul 2018 18:07:53 +0000 (11:07 -0700)]
Merge pull request #18955 from dotnet-maestro-bot/release/2.1-UpdateDependencies

Update PgoData to release-20180717-0134 (release/2.1)

5 years agoUpdate PgoData to release-20180717-0134
dotnet-maestro-bot [Tue, 17 Jul 2018 08:51:05 +0000 (01:51 -0700)]
Update PgoData to release-20180717-0134

5 years agoUpdate PgoData to release-20180716-0253 (#18931)
dotnet-maestro-bot [Mon, 16 Jul 2018 14:00:11 +0000 (07:00 -0700)]
Update PgoData to release-20180716-0253 (#18931)

5 years agoUpdate PgoData to release-20180715-0216 (#18921)
dotnet-maestro-bot [Sun, 15 Jul 2018 13:38:00 +0000 (06:38 -0700)]
Update PgoData to release-20180715-0216 (#18921)

5 years agoUpdate PgoData to release-20180714-0608 (#18909)
dotnet-maestro-bot [Sat, 14 Jul 2018 19:12:48 +0000 (12:12 -0700)]
Update PgoData to release-20180714-0608 (#18909)

5 years agoUpdate PgoData to release-20180713-0043 (#18899)
dotnet-maestro-bot [Fri, 13 Jul 2018 12:55:55 +0000 (05:55 -0700)]
Update PgoData to release-20180713-0043 (#18899)

5 years agoSkip old time zones adjustments with offsets higher than 14h (#18305) (#18874)
Krzysztof Wicher [Fri, 13 Jul 2018 03:24:07 +0000 (20:24 -0700)]
Skip old time zones adjustments with offsets higher than 14h (#18305) (#18874)

* Skip old time zones with offsets higher than 14h

* apply offline feedback

* fix braces

5 years agoUpdate PgoData to release-20180712-0122 (#18883)
dotnet-maestro-bot [Thu, 12 Jul 2018 14:28:44 +0000 (07:28 -0700)]
Update PgoData to release-20180712-0122 (#18883)

5 years agoMerge pull request #18811 from dotnet-maestro-bot/release/2.1-UpdateDependencies
Wes Haggard [Wed, 11 Jul 2018 19:47:56 +0000 (12:47 -0700)]
Merge pull request #18811 from dotnet-maestro-bot/release/2.1-UpdateDependencies

Update BuildTools, CoreClr, CoreFx, PgoData to rc1-03006-01, servicing-26708-02, servicing-26708-02, release-20180711-0041, respectively (release/2.1)

5 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to rc1-03006-01, servicing-26708-02,...
dotnet-maestro-bot [Wed, 11 Jul 2018 07:58:26 +0000 (00:58 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to rc1-03006-01, servicing-26708-02, servicing-26708-02, release-20180711-0041, respectively

5 years agoMerge commit 'c6e7fbc5516842945b9b375f7724438dece10627' into release/2.1
Matt Mitchell [Tue, 10 Jul 2018 23:25:16 +0000 (16:25 -0700)]
Merge commit 'c6e7fbc5516842945b9b375f7724438dece10627' into release/2.1

5 years agoMerge pull request #18757 from CarolEidt/Fix17969in2.1
Carol Eidt [Tue, 10 Jul 2018 16:55:53 +0000 (09:55 -0700)]
Merge pull request #18757 from CarolEidt/Fix17969in2.1

Port the fix for Issue 17969 to Rel/2.1

5 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to rc1-02913-01, servicing-26606-02,...
dotnet-maestro-bot [Fri, 6 Jul 2018 08:11:15 +0000 (01:11 -0700)]
Update BuildTools, CoreClr, CoreFx, PgoData to rc1-02913-01, servicing-26606-02, servicing-26703-08, release-20180706-0055, respectively

6 years agoPort the fix for Issue 17969 to Rel/2.1
Carol Eidt [Mon, 2 Jul 2018 21:48:10 +0000 (14:48 -0700)]
Port the fix for Issue 17969 to Rel/2.1

6 years agoPort to 2.1: Fix alternate stack cleanup on MUSL (#18687)
Jan Vorlicek [Thu, 28 Jun 2018 21:39:51 +0000 (23:39 +0200)]
Port to 2.1: Fix alternate stack cleanup on MUSL (#18687)

The MUSL implementation of sigaltstack checks that the ss.ss_size is
larger or equal than the MINSIGSTKSZ even when the ss_flags is set
to SS_DISABLE even though Linux man page for sigaltstack states that
when this flag is set, all other ss fields are ignored.

We were not setting the ss_size in this case and it was causing a memory
leak for each thread that has terminated on MUSL based Linux distros
like Alpine.

Glibc implementation doesn't check the ss_size when the SS_DISABLE is set
so the problem was really MUSL specific.

6 years agoMerge 'v2.1.1'
Wes Haggard [Thu, 28 Jun 2018 21:52:58 +0000 (14:52 -0700)]
Merge 'v2.1.1'

.NET Core 2.1.1

6 years agoPort to 2.1: Fix alternate stack cleanup on MUSL (#18687)
Jan Vorlicek [Thu, 28 Jun 2018 21:39:51 +0000 (23:39 +0200)]
Port to 2.1: Fix alternate stack cleanup on MUSL (#18687)

The MUSL implementation of sigaltstack checks that the ss.ss_size is
larger or equal than the MINSIGSTKSZ even when the ss_flags is set
to SS_DISABLE even though Linux man page for sigaltstack states that
when this flag is set, all other ss fields are ignored.

We were not setting the ss_size in this case and it was causing a memory
leak for each thread that has terminated on MUSL based Linux distros
like Alpine.

Glibc implementation doesn't check the ss_size when the SS_DISABLE is set
so the problem was really MUSL specific.

6 years agoJIT: Fix bug in finally cloning caused by unsound callfinally reordering
Andy Ayers [Wed, 27 Jun 2018 16:49:54 +0000 (09:49 -0700)]
JIT: Fix bug in finally cloning caused by unsound callfinally reordering

Port of #18348 to release/2.1

We need to make sure that if we reorder a callfinally during finally cloning
that the callfinally is actually the one being targeted by the last block in
the try range.

Closes #18332. Linked issue has some more detailed notes.

6 years agoFix SpanHelpers.ClearWithoutReferences alignment detection (#18222)
Pent Ploompuu [Fri, 1 Jun 2018 03:02:45 +0000 (06:02 +0300)]
Fix SpanHelpers.ClearWithoutReferences alignment detection (#18222)

6 years agoOptimize Array.Clear using SpanHelpers (#18101)
Jan Kotas [Thu, 24 May 2018 14:07:20 +0000 (07:07 -0700)]
Optimize Array.Clear using SpanHelpers (#18101)

Reimplement most of Array.Clear in managed code using Span Clear helpers.

Fixes dotnet/corefx#29848

6 years agoFix number formatting exception with empty NumberGroupSizes array (#18221) (#18667)
Stephen Toub [Wed, 27 Jun 2018 03:30:38 +0000 (23:30 -0400)]
Fix number formatting exception with empty NumberGroupSizes array (#18221) (#18667)

6 years agoAllow ILCodeVersion to fallback to default IL (#18502)
Noah Falk [Wed, 27 Jun 2018 03:29:00 +0000 (20:29 -0700)]
Allow ILCodeVersion to fallback to default IL (#18502)

* Allow ILCodeVersion to fallback to default IL

For compat with profilers that used our APIs in unexpected ways we can allow
the ILCodeVersion to fallback to the default IL code when no IL was explicitly
given.

* Fix incorrect usage of ILCodeVersion::AsNode (issue #18602)

When the debugger is querying the active rejit IL for an IL method that has not been rejitted it incorrectly creates a VMPTR_ILCodeVersionNode for a code version that shouldn't have one.

6 years agoAssemblyName parsing with unicode/emoji crashes (#18309)
Luqun Lou [Wed, 27 Jun 2018 03:16:16 +0000 (20:16 -0700)]
AssemblyName parsing with unicode/emoji crashes (#18309)

6 years agoFix handling of generating relative path to parent (#18460)
Jeremy Kuhne [Fri, 15 Jun 2018 03:12:28 +0000 (20:12 -0700)]
Fix handling of generating relative path to parent (#18460)

Fixes #30263

6 years agoUpdate branding to 2.1.3 (#18651)
William Godbe [Tue, 26 Jun 2018 22:53:42 +0000 (15:53 -0700)]
Update branding to 2.1.3 (#18651)

6 years agomach_absolute_time as the primary clock source on macOS (corefx#30391) (#18505) ...
Stephen Toub [Tue, 26 Jun 2018 22:49:12 +0000 (18:49 -0400)]
mach_absolute_time as the primary clock source on macOS (corefx#30391) (#18505) (#18526)

macOS 10.12+ supports clock_gettime (HAVE_CLOCK_MONOTONIC is defined)
However, mach_absolute_time has better resolution and should be used
as the primary clock source.

6 years agoUpdate SDK used to build jitutils to 2.1 RC (#18290)
Andy Ayers [Tue, 5 Jun 2018 14:52:35 +0000 (07:52 -0700)]
Update SDK used to build jitutils to 2.1 RC (#18290)

In anticipation of taking a dependence on netcoreapp2.1 for the
forthcoming PMI work from jitutils.

Also make sure to shut down build servers before cleaning up the SDK.

6 years agoUpdate PgoData to release-20180604-0043 (#18275)
dotnet-maestro-bot [Mon, 4 Jun 2018 12:41:09 +0000 (05:41 -0700)]
Update PgoData to release-20180604-0043 (#18275)

6 years agoUpdate PgoData to release-20180603-0040 (#18265)
dotnet-maestro-bot [Sun, 3 Jun 2018 10:43:17 +0000 (03:43 -0700)]
Update PgoData to release-20180603-0040 (#18265)

6 years agoUpdate PgoData to release-20180602-0037 (#18250)
dotnet-maestro-bot [Sat, 2 Jun 2018 11:43:11 +0000 (04:43 -0700)]
Update PgoData to release-20180602-0037 (#18250)

6 years agoFix alternate stack for Alpine docker on SELinux (#17936) (#17975)
kasper3 [Fri, 1 Jun 2018 12:22:43 +0000 (15:22 +0300)]
Fix alternate stack for Alpine docker on SELinux (#17936) (#17975)

For some reason, the Alpine docker container running on a SELinux host maps
heap as RWX. When we allocate alternate stack from the heap, we also
change the protection of the first page to PROT_NONE so that it can
serve as a guard page to catch stack overflow. And when we free the
alternate stack, we restore the protection back to PROT_READ |
PROT_WRITE. The restoration fails in Alpine docker container running on
a SELinux host with EPROT failure and the SELinux log reports that an
attempt to change heap to executable was made. So it looks like the
kernel has added the PERM_EXEC to the permissions we have passed to the
mprotect call. There is a code in the mprotect implementation that can
do that, although I don't fully understand the conditions under which it
happens. This is driven by the VM_MAYEXEC flag in the internal VMA block
structure.
To fix that, I've modified the alternate stack allocation to use mmap /
munmap instead of C heap allocation.

6 years agoUpdate g_highest_address and g_lowest_address in StompWriteBarrier(WriteBarrierOp...
Egor Chesakov [Thu, 24 May 2018 13:08:26 +0000 (06:08 -0700)]
Update g_highest_address and g_lowest_address in StompWriteBarrier(WriteBarrierOp::StompResize) on ARM (#18107)

6 years agoUse sysconf(_SC_NPROCESSORS_CONF) instead of sysconf(_SC_NPROCESSORS_ONLN) in PAL...
Egor Chesakov [Fri, 18 May 2018 22:03:00 +0000 (15:03 -0700)]
Use sysconf(_SC_NPROCESSORS_CONF) instead of sysconf(_SC_NPROCESSORS_ONLN) in PAL and GC on ARM and ARM64

6 years agoUpdate PgoData to release-20180531-0037 (#18214)
dotnet-maestro-bot [Thu, 31 May 2018 13:10:31 +0000 (06:10 -0700)]
Update PgoData to release-20180531-0037 (#18214)

6 years agoUpdate PgoData to release-20180530-0051 (#18194)
dotnet-maestro-bot [Wed, 30 May 2018 23:50:48 +0000 (16:50 -0700)]
Update PgoData to release-20180530-0051 (#18194)

6 years agoUpdate branding to 2.1.1 (#18161)
Matt Mitchell [Tue, 29 May 2018 22:27:30 +0000 (15:27 -0700)]
Update branding to 2.1.1 (#18161)

6 years agoMerge pull request #17998 from dotnet-maestro-bot/release/2.1-UpdateDependencies
Wes Haggard [Tue, 29 May 2018 20:24:04 +0000 (13:24 -0700)]
Merge pull request #17998 from dotnet-maestro-bot/release/2.1-UpdateDependencies

Update CoreClr, CoreFx, PgoData to rtm-26515-07, rtm, release-20180529-0037, respectively (release/2.1)

6 years agoUpdate dependencies to rtm
Wes Haggard [Tue, 29 May 2018 18:31:19 +0000 (11:31 -0700)]
Update dependencies to rtm

6 years agoUpdate CoreClr, CoreFx, PgoData to rtm-26515-07, rtm, release-20180529-0037, respectively
dotnet-maestro-bot [Tue, 29 May 2018 07:53:02 +0000 (00:53 -0700)]
Update CoreClr, CoreFx, PgoData to rtm-26515-07, rtm, release-20180529-0037, respectively

6 years agoUpdate CoreClr, CoreFx, PgoData to rtm-26514-02, rtm-26514-02, release-20180514-0049...
dotnet-maestro-bot [Mon, 14 May 2018 17:37:38 +0000 (12:37 -0500)]
Update CoreClr, CoreFx, PgoData to rtm-26514-02, rtm-26514-02, release-20180514-0049, respectively (#17987)

6 years agoMerge pull request #17965 from jashook/port_build_test_sh_changes
Jarret Shook [Fri, 11 May 2018 21:55:05 +0000 (14:55 -0700)]
Merge pull request #17965 from jashook/port_build_test_sh_changes

Port build-test.sh changes from master to release/2.1

6 years agoSplit unix test builds in slices (#17785)
Steve MacLean [Fri, 4 May 2018 19:53:44 +0000 (15:53 -0400)]
Split unix test builds in slices (#17785)

* Split unix test builds in slices

Ports #17161 to linux

* Address review feedback