platform/upstream/coreclr.git
5 years agoUpdate eventcounter spec (#23019)
Sung Yoon Whang [Tue, 5 Mar 2019 11:06:40 +0000 (03:06 -0800)]
Update eventcounter spec (#23019)

* Update EventCounter spec

* some wording fix

* some wording fix

* fix payload example

* Add DisplayRateTimeScale

5 years agoJIT: remove unneeded ref count updating traversal from optimizer (#22954)
Andy Ayers [Tue, 5 Mar 2019 07:30:48 +0000 (23:30 -0800)]
JIT: remove unneeded ref count updating traversal from optimizer (#22954)

The ref count update traversal in the optimizer is not doing anything,
so remove it. This was overlooked when we changed away from incremental
updates in #19345.

Also: fix up comments and documentation to reflect the current approach
to local var ref counts.

5 years agoRemove dead ContainToAppDomain (#23021)
Steve MacLean [Tue, 5 Mar 2019 06:54:24 +0000 (01:54 -0500)]
Remove dead ContainToAppDomain (#23021)

* Remove dead ContainToAppDomain

* Respond to feedback

5 years agoDo not treat warnings as errors during corefx build in docker. (#23014)
Sergey Andreenko [Tue, 5 Mar 2019 05:46:19 +0000 (21:46 -0800)]
Do not treat warnings as errors during corefx build in docker. (#23014)

* Do not treat warnings as errors during corefx build in docker.

* Add a comment.

5 years agoRemove loose dependency in runtime on System.ComponentModel. (#23010)
Aaron Robinson [Tue, 5 Mar 2019 02:58:56 +0000 (18:58 -0800)]
Remove loose dependency in runtime on System.ComponentModel. (#23010)

Remove loose dependency in runtime on System.ComponentModel.
Disable test to sync with CoreFX

5 years agoRemove BEGIN/END_EXCEPTION_GLUE from botr
Steve MacLean [Tue, 5 Mar 2019 01:29:11 +0000 (20:29 -0500)]
Remove BEGIN/END_EXCEPTION_GLUE from botr

5 years agoPass -priority= argument directly to build-test.cmd (#23007)
Egor Chesakov [Tue, 5 Mar 2019 00:42:40 +0000 (16:42 -0800)]
Pass -priority= argument directly to build-test.cmd (#23007)

5 years agoUpdate dependencies from https://github.com/dotnet/corefx build 20190303.8 (#22992)
dotnet-maestro[bot] [Mon, 4 Mar 2019 23:30:24 +0000 (15:30 -0800)]
Update dependencies from https://github.com/dotnet/corefx build 20190303.8 (#22992)

This change updates the following dependencies
- Microsoft.NETCore.Platforms - 3.0.0-preview4.19153.8
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19153.8

5 years agoPublish logs as pipeline artifacts for build-job.yml and test-job.yml (#22926)
Egor Chesakov [Mon, 4 Mar 2019 23:22:56 +0000 (15:22 -0800)]
Publish logs as pipeline artifacts for build-job.yml and test-job.yml (#22926)

5 years agoDisable tests for open issues (#22976)
Jarret Shook [Mon, 4 Mar 2019 22:22:44 +0000 (14:22 -0800)]
Disable tests for open issues (#22976)

* Disable tests for open issues

* Clean pri1 run

5 years agoFix rid choice setup stress (#23004)
Jarret Shook [Mon, 4 Mar 2019 22:19:14 +0000 (14:19 -0800)]
Fix rid choice setup stress (#23004)

* Correct rid choice for setting up coredistools

* Force ubuntu.14.04 as the rid choice for ubuntu

* Add better comment

* Fix typo

5 years agoMove EEClassLayoutInfo::CollectLayoutFieldMetadataThrowing to class.cpp (#22932)
Jeremy Koritzinsky [Mon, 4 Mar 2019 21:15:28 +0000 (13:15 -0800)]
Move EEClassLayoutInfo::CollectLayoutFieldMetadataThrowing to class.cpp (#22932)

Move `EEClassLayoutInfo::CollectLayoutFieldMetadataThrowing` to class.cpp and out of fieldmarshaler.cpp.

This change co-locates `EEClassLayoutInfo::CollectLayoutFieldMetadataThrowing` with the rest of the implementation of `EEClassLayoutInfo`. Additionally, this PR separates out the field blittability check into a separate function instead of burying it in `CollectLayoutFieldMetadataThrowing`.

Finally, it adds a small optimization in the field marshaler implementations where if a field's native size is statically known, the code returns that value instead of calling into one of the FieldMarshaler "virtual" calls.

Originally part of #21415, but extracted out to make that PR smaller.

5 years agoMerge pull request #22791 from CarolEidt/Fix19256
Carol Eidt [Mon, 4 Mar 2019 16:54:19 +0000 (08:54 -0800)]
Merge pull request #22791 from CarolEidt/Fix19256

Fix condition for calling EvalArgsToTemps

5 years agoUpdate dependencies from https://github.com/dotnet/core-setup build 20190303.9 (...
dotnet-maestro[bot] [Mon, 4 Mar 2019 16:36:20 +0000 (08:36 -0800)]
Update dependencies from https://github.com/dotnet/core-setup build 20190303.9 (#22993)

This change updates the following dependencies
- Microsoft.NETCore.App - 3.0.0-preview4-27503-9

5 years agoCleanup more GCC warnings (#22872)
Sinan Kaya [Mon, 4 Mar 2019 06:55:22 +0000 (01:55 -0500)]
Cleanup more GCC warnings (#22872)

* Add parenthesis

src/vm/sha1.cpp: In function ‘void SHA1_block(SHA1_CTX*)’:
src/vm/sha1.cpp:93:29: warning: suggest parentheses around arithmetic in operand of ‘|’ [-Wparentheses]
 #define ROUND3(B, C, D) ((C & (B | D) | (B & D)) + sha1_round3)
                             ^
src/vm/sha1.cpp:139:32: note: in expansion of macro ‘ROUND3’
         e += ROTATE32L(a, 5) + ROUND3(b, c, d) + msg80[i];

* Move declaration into same file as one was defined Extern the other one was static

* Remove hr=hr undefined assignment

* Fix mutli-line comment warning

* Convert multi-character literal

* Remove null check for stack local variables

rc/vm/invokeutil.cpp: In static member function ‘static void InvokeUtil::SetValidField(CorElementType, TypeHandle, FieldDesc*, OBJECTREF*, OBJECTREF*, TypeHandle, CLR_BOOL*)’:
src/vm/invokeutil.cpp:978:29: warning: the address of ‘Throwable’ will never be NULL [-Waddress]
EX_CATCH_THROWABLE(&Throwable);
^
src/inc/ex.h:1087:21: note: in definition of macro ‘EX_CATCH_THROWABLE’
if (NULL != ppThrowable)
^

5 years agoMirror changes from dotnet/corert (#22985)
Dotnet-GitSync-Bot [Mon, 4 Mar 2019 05:07:25 +0000 (21:07 -0800)]
Mirror changes from dotnet/corert (#22985)

* Move fully managed TimerQueue implementation to shared partition (#7111)

* Update CoreCLR for changes in shared partition

5 years agoMerge pull request #22981 from dotnet/darc-master-95952865-131b-47b2-99d0-f60a630db1b3
Stephen Toub [Sun, 3 Mar 2019 21:33:39 +0000 (16:33 -0500)]
Merge pull request #22981 from dotnet/darc-master-95952865-131b-47b2-99d0-f60a630db1b3

[master] Update dependencies from dotnet/corefx

5 years agoUpdate dependencies from https://dnceng@dev.azure.com/dnceng/internal/_git/dotnet...
dotnet-maestro[bot] [Sun, 3 Mar 2019 21:33:22 +0000 (16:33 -0500)]
Update dependencies from https://dnceng@dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190303.1 (#22983)

This change updates the following dependencies
- optimization.IBC.CoreCLR - 99.99.99-master-20190303.1

5 years agoDisable outdated tests
Jan Kotas [Sun, 3 Mar 2019 15:08:54 +0000 (07:08 -0800)]
Disable outdated tests

5 years agoUpdate dependencies from https://github.com/dotnet/corefx build 20190303.2
dotnet-maestro [Sun, 3 Mar 2019 13:47:55 +0000 (13:47 +0000)]
Update dependencies from https://github.com/dotnet/corefx build 20190303.2

This change updates the following dependencies
- Microsoft.NETCore.Platforms - 3.0.0-preview4.19153.2
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19153.2

5 years agoFix CoreCLR build break
Jan Kotas [Sun, 3 Mar 2019 06:25:25 +0000 (22:25 -0800)]
Fix CoreCLR build break

5 years agoUpdate CoreRT for changes in shared partition
Jan Kotas [Sun, 3 Mar 2019 03:21:19 +0000 (19:21 -0800)]
Update CoreRT for changes in shared partition

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoCorrected some misspellings (#22978)
Fawad Halim [Sun, 3 Mar 2019 03:21:39 +0000 (03:21 +0000)]
Corrected some misspellings (#22978)

5 years agoMove Activator to shared partition (#22894)
Marek Safar [Sat, 2 Mar 2019 22:22:55 +0000 (23:22 +0100)]
Move Activator to shared partition (#22894)

5 years agoUse BitOperations in more callsites (CoreCLR) (#22630)
Grant [Sat, 2 Mar 2019 21:55:07 +0000 (13:55 -0800)]
Use BitOperations in more callsites (CoreCLR) (#22630)

* Missed perf improvement in EventProvider

* Add missing methods to StubEnvironment

5 years ago[master] Update dependencies from dotnet/corefx (#22968)
dotnet-maestro[bot] [Sat, 2 Mar 2019 18:55:15 +0000 (10:55 -0800)]
[master] Update dependencies from dotnet/corefx (#22968)

* Update dependencies from https://github.com/dotnet/corefx build 20190302.1

This change updates the following dependencies
- Microsoft.NETCore.Platforms - 3.0.0-preview4.19152.1
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19152.1

* Disable outdated tests

5 years agoRevert "Revert "Improve coreclrhost.h header" (#22955)" (#22973)
Jarret Shook [Sat, 2 Mar 2019 18:54:48 +0000 (10:54 -0800)]
Revert "Revert "Improve coreclrhost.h header" (#22955)" (#22973)

This reverts commit 831cb13f1432aac09e66a8543831d3ed55b4bddf.

5 years agoRevert "Improve coreclrhost.h header" (#22955)
Jarret Shook [Sat, 2 Mar 2019 18:51:40 +0000 (10:51 -0800)]
Revert "Improve coreclrhost.h header" (#22955)

5 years agoDisable DOTNET_MULTILEVEL_LOOKUP in the build scripts (#22972)
Jan Kotas [Sat, 2 Mar 2019 16:49:52 +0000 (08:49 -0800)]
Disable DOTNET_MULTILEVEL_LOOKUP in the build scripts (#22972)

Fixes #22971

5 years agoUpdate dependencies from https://dnceng@dev.azure.com/dnceng/internal/_git/dotnet...
dotnet-maestro[bot] [Sat, 2 Mar 2019 16:37:45 +0000 (08:37 -0800)]
Update dependencies from https://dnceng@dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190302.1 (#22970)

This change updates the following dependencies
- optimization.IBC.CoreCLR - 99.99.99-master-20190302.1

5 years agoMove more Thread logic to shared partition (#22935)
Marek Safar [Sat, 2 Mar 2019 13:46:27 +0000 (14:46 +0100)]
Move more Thread logic to shared partition (#22935)

* Move more Thread logic to shared partition

* Keep the fields in runtime part for reliable layout structure

5 years agoFix CoreFX build break
Jan Kotas [Sat, 2 Mar 2019 04:15:28 +0000 (20:15 -0800)]
Fix CoreFX build break

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoFix netfx build break
Jan Kotas [Fri, 1 Mar 2019 21:59:19 +0000 (13:59 -0800)]
Fix netfx build break

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoSupport IClassFactory2 - LicenseManager use in COM activation (#22846)
Aaron Robinson [Sat, 2 Mar 2019 06:53:42 +0000 (22:53 -0800)]
Support IClassFactory2 - LicenseManager use in COM activation (#22846)

* Implement IClassFactory2

* Add test support for IClassFactory2

* Add support for testing RCW activation via IClassFactory2

5 years agoUse arcade's version of dotnet to build (#22755)
Steve MacLean [Sat, 2 Mar 2019 04:07:35 +0000 (23:07 -0500)]
Use arcade's version of dotnet to build (#22755)

* Use arcade dotnet

* Add cmake_msbuild.cmd

Move msbuild.cmd to cmake_msbuild.bat
Document intent that this file is only used to resolve
Windows cmake dependency on desktop msbuild.exe

Remove one instance of msbuild.cmd

* Fix inittools.cmd

* Remove spurious setup_vs_tools.cmd calls

5 years agoRevert heapcount and enable CPU Groups to fix Ubuntu FPE (#22861)
Varun Venkatesan [Sat, 2 Mar 2019 00:41:09 +0000 (16:41 -0800)]
Revert heapcount and enable CPU Groups to fix Ubuntu FPE (#22861)

5 years agoFix CoreRT build breaks
Jan Kotas [Fri, 1 Mar 2019 18:08:59 +0000 (10:08 -0800)]
Fix CoreRT build breaks

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years ago[master] Update dependencies from dotnet/arcade (#22818)
Juan Hoyos [Fri, 1 Mar 2019 22:00:15 +0000 (14:00 -0800)]
[master] Update dependencies from dotnet/arcade (#22818)

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

This change updates the following dependencies
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19128.3
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19128.3

5 years agoUpdate dependencies from https://dnceng@dev.azure.com/dnceng/internal/_git/dotnet...
dotnet-maestro[bot] [Fri, 1 Mar 2019 21:49:47 +0000 (13:49 -0800)]
Update dependencies from https://dnceng@dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20190301.2 (#22949)

This change updates the following dependencies
- optimization.PGO.CoreCLR - 99.99.99-master-20190301.2

5 years ago[master] Update dependencies from dotnet/corefx (#22953)
dotnet-maestro[bot] [Fri, 1 Mar 2019 21:49:15 +0000 (13:49 -0800)]
[master] Update dependencies from dotnet/corefx (#22953)

* Update dependencies from https://github.com/dotnet/corefx build 20190301.4

This change updates the following dependencies
- Microsoft.NETCore.Platforms - 3.0.0-preview4.19151.4
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview4.19151.4

* Disable outdated tests

5 years agoRemove unused code from EventSource (#22853)
Marek Safar [Fri, 1 Mar 2019 21:16:56 +0000 (22:16 +0100)]
Remove unused code from EventSource (#22853)

FallbackActivityId is theoretically references in CoreFX but it's under never defined FEATURE_ACTIVITYSAMPLING
and the implementation should live in CoreFX part anyway

5 years agoLabel implements IEquatable<Label> (#22938)
Foxtrek_64 [Fri, 1 Mar 2019 21:15:23 +0000 (15:15 -0600)]
Label implements IEquatable<Label> (#22938)

5 years agoJIT: revise comment about struct-of-struct-of-field promotion (#22952)
Andy Ayers [Fri, 1 Mar 2019 21:00:52 +0000 (13:00 -0800)]
JIT: revise comment about struct-of-struct-of-field promotion (#22952)

Fixes an oversight in #22867.

5 years agoFixes: Audit missing entries in ClrEtwAll.man #22790 (#22795)
José Rivero [Fri, 1 Mar 2019 19:23:49 +0000 (11:23 -0800)]
Fixes: Audit missing entries in ClrEtwAll.man #22790 (#22795)

5 years agoFix issue #22337
Andrew Au [Fri, 1 Mar 2019 01:39:08 +0000 (17:39 -0800)]
Fix issue #22337

5 years agoMerge pull request #22905 from vancem/RundownFix
Vance Morrison [Fri, 1 Mar 2019 17:07:16 +0000 (09:07 -0800)]
Merge pull request #22905 from vancem/RundownFix

Rundown profiler fix

5 years agoTurn on IBC and enforce PGO in official and release builds. (#22843)
Jeremy Koritzinsky [Fri, 1 Mar 2019 16:48:49 +0000 (08:48 -0800)]
Turn on IBC and enforce PGO in official and release builds. (#22843)

* Enable pgocheck to run on python 3.

* Enable IBC optimizations in official builds and enforce PGO in release builds on platforms where pgocheck.py works.

* Only enable IBC on Windows x64/x86.

5 years agoImplement Serialization Guard
Morgan Brown [Fri, 1 Mar 2019 16:46:22 +0000 (08:46 -0800)]
Implement Serialization Guard

Add Serialization Guard API and consume it in CoreLib targets

5 years agoMerge pull request #22801 from janvorli/improve-coreclrhost-header
Jan Vorlicek [Fri, 1 Mar 2019 16:40:55 +0000 (17:40 +0100)]
Merge pull request #22801 from janvorli/improve-coreclrhost-header

Improve coreclrhost.h header

5 years agoMerge pull request #22821 from am11/fix/signed-compare-and-narrowing
Jan Vorlicek [Fri, 1 Mar 2019 16:38:44 +0000 (17:38 +0100)]
Merge pull request #22821 from am11/fix/signed-compare-and-narrowing

Fix comparison and narrowing errors reported by GCC

5 years agoDisable tests for a clean official build
jashook [Thu, 28 Feb 2019 22:44:15 +0000 (14:44 -0800)]
Disable tests for a clean official build

5 years agoUpdate dependencies from https://github.com/dotnet/arcade build 20190228.3
dotnet-maestro [Fri, 1 Mar 2019 13:26:21 +0000 (13:26 +0000)]
Update dependencies from https://github.com/dotnet/arcade build 20190228.3

This change updates the following dependencies
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19128.3
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19128.3

5 years agoFix resource stream for collectible assemblies (#22925)
Jan Vorlicek [Fri, 1 Mar 2019 11:10:49 +0000 (12:10 +0100)]
Fix resource stream for collectible assemblies (#22925)

* Fix resource stream for collectible assemblies

The GetManifestResourceStream was returning a stream that didn't keep
the underlying assembly alive. For collectible assemblies, that means
that an assembly could be collected and the stream still kept,
potentially reading garbage.

The fix is to create a new stream type that stores a reference to the
underlying assembly, thus ensuring the proper lifetime management.

* Make the new stream class sealed

5 years agoAnother small tweak to fix Thread behavioral difference (#22943)
Stephen Toub [Fri, 1 Mar 2019 09:35:45 +0000 (04:35 -0500)]
Another small tweak to fix Thread behavioral difference (#22943)

To match existing behavior: https://github.com/dotnet/corefx/blob/5dc8132370532804a5381b90e2ce87d6c52b61f6/src/Common/src/CoreLib/System/Threading/Thread.Unix.cs#L13

5 years agoFix keyword for PinPlugAtGCTime event (#22806)
Sung Yoon Whang [Fri, 1 Mar 2019 05:50:14 +0000 (21:50 -0800)]
Fix keyword for PinPlugAtGCTime event (#22806)

5 years agoAdd Rune.DecodeUtf16 / DecodeUtf8 and friends (#22725)
Levi Broderick [Fri, 1 Mar 2019 05:48:01 +0000 (21:48 -0800)]
Add Rune.DecodeUtf16 / DecodeUtf8 and friends (#22725)

5 years agoMove COM related attributes to the shared source location of Object class. (#22942)
Aaron Robinson [Fri, 1 Mar 2019 03:17:13 +0000 (19:17 -0800)]
Move COM related attributes to the shared source location of Object class. (#22942)

5 years agoConsume optimization packages using new dependency flow system (#22915)
Juan Hoyos [Fri, 1 Mar 2019 02:55:34 +0000 (18:55 -0800)]
Consume optimization packages using new dependency flow system (#22915)

* Consume optimization packages using new dependency flow system.

5 years agoFix CoreFX build scripts2. (#22931)
Sergey Andreenko [Fri, 1 Mar 2019 02:31:44 +0000 (18:31 -0800)]
Fix CoreFX build scripts2. (#22931)

5 years agochange to kick off CI
Vance Morrison [Fri, 1 Mar 2019 00:42:26 +0000 (16:42 -0800)]
change to kick off CI

5 years agoRemoving the ExtractVector128 and InsertVector128 APIs that take an address. (#22886)
Tanner Gooding [Fri, 1 Mar 2019 00:28:14 +0000 (16:28 -0800)]
Removing the ExtractVector128 and InsertVector128 APIs that take an address. (#22886)

* Removing the InsertVector128 and ExtractVector128 overloads that take an address from S.P.Corelib

* Removing the ExtractStore and InsertLoad tests.

* Fixing the PacketTracer test to use the appropriate Extract/InsertVector128 overloads

* Removing the JIT support for the Extract/InsertVector128 overloads that take an address.

5 years agoRevert "Update added types and methoddefs on ApplyMetadata (#22617)" (#22923)
Jan Kotas [Thu, 28 Feb 2019 23:45:26 +0000 (15:45 -0800)]
Revert "Update added types and methoddefs on ApplyMetadata (#22617)" (#22923)

This reverts commit ee755e322dabc2fc280e2561b0fbaf6e90aedf54.

5 years agoSet the MarshalByRefObject to be ComVisible and (#22930)
Aaron Robinson [Thu, 28 Feb 2019 23:25:17 +0000 (15:25 -0800)]
Set the MarshalByRefObject to be ComVisible and (#22930)

a IDispatch class interface. this is being done
  to ensure WinForms consumers can interact with
  COM based controls.

5 years agoSet flag in comp info to signal that a caller has >8 byte struct args (#22775)
Jarret Shook [Thu, 28 Feb 2019 22:30:03 +0000 (14:30 -0800)]
Set flag in comp info to signal that a caller has >8 byte struct args (#22775)

* Set flag in comp info to signal that a caller has >8 byte struct args

This will be used by fgCanFastTailCall to correctly determine whether an arm64
or x64 linux caller/callee can fastTailCall.
It is also a workaround to #12468 to catch early any slot shuffling that would happen in LowerFastTailCall. Which currently assumes all parameters are one slot size.

* Address feedback

* Apply format patch

* Add comment

* apply new format patch

5 years agoNativeLibraryTests: Platform restriction on some tests (#22732)
Swaroop Sridhar [Thu, 28 Feb 2019 22:10:46 +0000 (14:10 -0800)]
NativeLibraryTests: Platform restriction on some tests (#22732)

NativeLibraryTests: Platform restriction on some tests

This change adds platform restrictions on two API tests:
* Change the System32 dll loading test from `msi.dll` to `uri.dll`
* Restrict the System32 dll loading test to platforms where `uri.dll` actually exists in the System32 directory.
* Disable double-free tests on Linux, because the OS call doesn't reliably fail.

Use the public version of CoreLib, since the NativeLibrary APIs are
now available.

Fixes #22726

5 years agoFix DumpAsync to understand ContinuationWrapper (#22913)
Stephen Toub [Thu, 28 Feb 2019 21:44:26 +0000 (16:44 -0500)]
Fix DumpAsync to understand ContinuationWrapper (#22913)

Continuations created while the debugger is attached or certain EventSource events are enabled end up getting wrapped in an extra ContinuationWrapper object that carries some additional information.  DumpAsync currently isn't unwrapping these but should.  This just teaches it to look for a known field name so that it can "see through" these wrappers while following async "stacks".

5 years agoFix GetApartmentState value on Unix to be Unknown (#22928)
Stephen Toub [Thu, 28 Feb 2019 21:42:27 +0000 (16:42 -0500)]
Fix GetApartmentState value on Unix to be Unknown (#22928)

* Fix GetApartmentState value on Unix to be Unknown

The code in corefx is returning ApartmentState.Unknown on Unix.  This new coreclr implementation should do the same.

* Fix visibility on TrySetApartmentStateUnchecked

5 years agoJIT: allow slightly more general promotion of structs with struct fields (#22867)
Andy Ayers [Thu, 28 Feb 2019 20:15:19 +0000 (12:15 -0800)]
JIT: allow slightly more general promotion of structs with struct fields (#22867)

For a while now the jit has been able to promote an outer struct A with an
inner struct field B that itself has a single non-struct field C, provided
that C occupies all of B and that C and B are pointer-sized.

For example, this comes up when supporting promotion of `Span<T>`, as a span
contains a `ByReference<T>` field that itself contains a pointer-sized field.

This change relaxes the constraints slightly, allowing B and C to be less than
pointer sized, provided C still occupies all of B, and B is suitably aligned
within A.

Doing so allows promotion of the new `Range` type, which contains two `Index`
fields that each wrap an `int`. This improves performance for uses of `Range`
for simple examples like those in #22079.

5 years agoMake the new stream class sealed
Jan Vorlicek [Thu, 28 Feb 2019 19:59:34 +0000 (20:59 +0100)]
Make the new stream class sealed

5 years agoRemove unused packages from init-tools.msbuild (#22884)
Steve MacLean [Thu, 28 Feb 2019 19:47:58 +0000 (14:47 -0500)]
Remove unused packages from init-tools.msbuild (#22884)

5 years agoRemove sdmaclea from active arm64 users (#22924)
Steve MacLean [Thu, 28 Feb 2019 19:08:06 +0000 (14:08 -0500)]
Remove sdmaclea from active arm64 users (#22924)

5 years agoFix resource stream for collectible assemblies
Jan Vorlicek [Thu, 28 Feb 2019 19:06:57 +0000 (20:06 +0100)]
Fix resource stream for collectible assemblies

The GetManifestResourceStream was returning a stream that didn't keep
the underlying assembly alive. For collectible assemblies, that means
that an assembly could be collected and the stream still kept,
potentially reading garbage.

The fix is to create a new stream type that stores a reference to the
underlying assembly, thus ensuring the proper lifetime management.

5 years agoRe-partition MSBuild test groups (#22885)
Egor Chesakov [Thu, 28 Feb 2019 17:55:28 +0000 (09:55 -0800)]
Re-partition MSBuild test groups (#22885)

This changes a tests partitioning scheme of coreclr tests in several different ways:

1. Make the test groups are of equal (to some extent) sizes keeping the number of tests in one group less than 1000;

2. As a resulf of 1) this increases a number of groups needed for Pri0 tests to 3 and decreases a number of groups for Pri1 tests to 10;

3. This also changes a way of tests partitioning scheme is defined - instead of explicitly specifying MSBuild Include-patterns this defines a boundaries between test groups in a form of _StartsWith ItemGroup. Then I use StringComparer.Ordinal to pick tests that belong to a particular group.

5 years agoFix CoreRT build break
Jan Kotas [Thu, 28 Feb 2019 07:41:42 +0000 (23:41 -0800)]
Fix CoreRT build break

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoChange IBC package layout to match what we generate (#22799)
Michelle McDaniel [Thu, 28 Feb 2019 06:52:30 +0000 (22:52 -0800)]
Change IBC package layout to match what we generate (#22799)

* Change IBC package layout to match what the optimization repo now generates

5 years agoMerge pull request #22890 from stephentoub/fixthreadbehavior
Stephen Toub [Thu, 28 Feb 2019 04:23:46 +0000 (23:23 -0500)]
Merge pull request #22890 from stephentoub/fixthreadbehavior

Fix Thread-related behavior changes

5 years agoUpdate BuildTools, CoreClr, IbcData, PgoData to preview1-03723-01, preview4-27427...
Juan Hoyos [Thu, 28 Feb 2019 02:27:31 +0000 (18:27 -0800)]
Update BuildTools, CoreClr, IbcData, PgoData to preview1-03723-01, preview4-27427-72, master-20190227.1, master-20190227.1, respectively (master) [Manual] (#22903)

5 years agoAddress PR feedback (clean up style in Thread.CoreCLR.cs)
Stephen Toub [Wed, 27 Feb 2019 22:53:25 +0000 (17:53 -0500)]
Address PR feedback (clean up style in Thread.CoreCLR.cs)

5 years agoRemove legacy classfactory.cpp implementation for managed COM activation (#22895)
Aaron Robinson [Thu, 28 Feb 2019 00:49:26 +0000 (16:49 -0800)]
Remove legacy classfactory.cpp implementation for managed COM activation (#22895)

5 years agoadded a lightweight GC profiling option (#22866)
Maoni Stephens [Thu, 28 Feb 2019 00:35:03 +0000 (16:35 -0800)]
added a lightweight GC profiling option (#22866)

added a profiling event mask in the high 32-bit, COR_PRF_HIGH_BASIC_GC, for basic GC monitoring. it can be set via `ICorProfilerInfo5::SetEventMask2`. all this gives you is

    * GC start callback

    * GC end callback

    * update generational bounds

note that one different behavior between this and the existing COR_PRF_MONITOR_GC is, aside from the obvious that it doesn't give you any info beyond the above, is that the GC end callback + update generational bounds are enabled for _all_ GCs, not just non concurrent GCs. I kept the behavior the same for COR_PRF_MONITOR_GC because I don't want to risk breaking existing profiling tools that do not anticipate these for concurrent GCs.

5 years agoMerge pull request #22736 from dotnet/dev/tomat/copyrights
Tomáš Matoušek [Thu, 28 Feb 2019 00:20:36 +0000 (16:20 -0800)]
Merge pull request #22736 from dotnet/dev/tomat/copyrights

Set copyright and package license

5 years agoUpdate issue number
Vance Morrison [Thu, 28 Feb 2019 00:19:31 +0000 (16:19 -0800)]
Update issue number

5 years agoPartial fix for issue 22585. Fixes symbol lookup in profilers.
Vance Morrison [Thu, 28 Feb 2019 00:18:42 +0000 (16:18 -0800)]
Partial fix for issue 22585.   Fixes symbol lookup in profilers.

5 years agoFix BitOperations using in standalone EventSource build
Stephen Toub [Wed, 27 Feb 2019 13:43:03 +0000 (08:43 -0500)]
Fix BitOperations using in standalone EventSource build

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoFix EventSource StubEnvironment
Jan Kotas [Wed, 27 Feb 2019 06:21:32 +0000 (22:21 -0800)]
Fix EventSource StubEnvironment

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
5 years agoFix sync.sh syntax error (#22883)
Steve MacLean [Wed, 27 Feb 2019 21:53:08 +0000 (16:53 -0500)]
Fix sync.sh syntax error (#22883)

5 years ago[Test fix] Test failure: tracing_eventsource._eventpipeandetw_eventpipeandetw_eventpi...
José Rivero [Wed, 27 Feb 2019 21:46:54 +0000 (13:46 -0800)]
[Test fix] Test failure: tracing_eventsource._eventpipeandetw_eventpipeandetw_eventpipeandetw_/_eventpipeandetw_eventpipeandetw_eventpipeandetw_cmd (#22870)

- Fixes #19302

5 years agoDisabling runtimeeventsource to unblock official build. (#22899)
José Rivero [Wed, 27 Feb 2019 21:41:45 +0000 (13:41 -0800)]
Disabling runtimeeventsource to unblock official build. (#22899)

- Related failures: #18907, #19340, #22441, #22729.

5 years agoDisabling windows event log test till further investigation on frequent failures...
Sung Yoon Whang [Wed, 27 Feb 2019 21:34:36 +0000 (13:34 -0800)]
Disabling windows event log test till further investigation on frequent failures (#22889)

5 years agoFixing hwintrinsicArm64 to return nullptr for the Base_As intrinsics if featureSimd...
Tanner Gooding [Wed, 27 Feb 2019 20:14:00 +0000 (12:14 -0800)]
Fixing hwintrinsicArm64 to return nullptr for the Base_As intrinsics if featureSimd is false (#22831)

5 years agoFix Thread-related breaking changes
Stephen Toub [Wed, 27 Feb 2019 19:51:50 +0000 (14:51 -0500)]
Fix Thread-related breaking changes

- Thread.ExecutionContext needs to return ExecutionContext.Capture() to public callers.
- Fix restoring of culture to be inside of the ExecutionContext callback where applicable

5 years agoFix Thread.ExecutionContext breaking change (#22882)
Stephen Toub [Wed, 27 Feb 2019 18:16:11 +0000 (13:16 -0500)]
Fix Thread.ExecutionContext breaking change (#22882)

Its getter is a public API and can't be made internal.

5 years agoFix WaitTimeout breaking change (#22881)
Stephen Toub [Wed, 27 Feb 2019 17:40:06 +0000 (12:40 -0500)]
Fix WaitTimeout breaking change (#22881)

WaitHandle.WaitTimeout is a public API.  It can't be made internal.

5 years ago[master] Update dependencies from dotnet/core-setup (#22854)
dotnet-maestro[bot] [Wed, 27 Feb 2019 17:17:03 +0000 (09:17 -0800)]
[master] Update dependencies from dotnet/core-setup (#22854)

* Update dependencies from https://github.com/dotnet/core-setup build 20190227.1

This change updates the following dependencies
- Microsoft.NETCore.App - 3.0.0-preview4-27427-1

5 years agoRemove BuildTestsAgainstPackages logic
Russ Keldorph [Tue, 26 Feb 2019 19:02:53 +0000 (11:02 -0800)]
Remove BuildTestsAgainstPackages logic

No longer necessary without PipeBuild logic

5 years agoAdd blob feed to dependencies.props (#22857)
Jeremy Koritzinsky [Wed, 27 Feb 2019 06:59:33 +0000 (22:59 -0800)]
Add blob feed to dependencies.props (#22857)

5 years agoPreserve Marshal.GetLastWin32Error in SafeHandle.DangerousRelease (#22871)
Jan Kotas [Wed, 27 Feb 2019 06:51:21 +0000 (22:51 -0800)]
Preserve Marshal.GetLastWin32Error in SafeHandle.DangerousRelease (#22871)

5 years agoMove Thread to shared CoreLib (#22744)
Filip Navara [Wed, 27 Feb 2019 06:48:33 +0000 (07:48 +0100)]
Move Thread to shared CoreLib (#22744)

* Move Thread to shared CoreLib

* Remove all local variables from Thread in shared code

* Remove duplicate checks

* Port back CoreRT changes needed for shared code

* Fix missing culture initialization in ThreadStart()

* Adjust for shared WaitHandle

5 years agoMake BitOperations public (CoreCLR) (#22864)
Grant [Wed, 27 Feb 2019 05:04:37 +0000 (21:04 -0800)]
Make BitOperations public (CoreCLR) (#22864)

* Make BitOps public

* Update name to BitOperations

* Change namespace to System.Numerics

* Fix file name

* Alphabetical

5 years agoRemove bogus assert in Thread::MarkThreadForAbort (#22869)
Andrew Au [Wed, 27 Feb 2019 04:39:30 +0000 (20:39 -0800)]
Remove bogus assert in Thread::MarkThreadForAbort (#22869)