platform/upstream/coreclr.git
6 years agoAdd OS flag to calls to run-xunit-perf.py (#16100)
Michelle McDaniel [Tue, 30 Jan 2018 17:53:35 +0000 (09:53 -0800)]
Add OS flag to calls to run-xunit-perf.py (#16100)

We were uploading windows results as win32 instead of Windows_NT.

6 years agoCompiler::lookupHWIntrinsic: fix oob read (#16075)
Konstantin Baladurin [Tue, 30 Jan 2018 15:23:16 +0000 (18:23 +0300)]
Compiler::lookupHWIntrinsic: fix oob read (#16075)

6 years agoTemporaily disable some HWIntrinsic tests due to the naming changes.
Tanner Gooding [Tue, 30 Jan 2018 03:17:02 +0000 (19:17 -0800)]
Temporaily disable some HWIntrinsic tests due to the naming changes.

6 years agoReplace TryCopyTo with CopyTo (#16078)
Stephen Toub [Tue, 30 Jan 2018 15:17:30 +0000 (10:17 -0500)]
Replace TryCopyTo with CopyTo (#16078)

While doing various Span-related work involving copying, in a few places I previously used a pattern of calling TryCopyTo and then asserting its result, in places where I knew the destination was long enough.  This was because CopyTo was implemented as a wrapper around TryCopyTo and thus involved an extra unnecessary branch.  Now that that's no longer the case, I'm simplifying the call sites.

6 years agoRemove ValueTuple usage from ConfiguredValueTaskAwaitable
Stephen Toub [Tue, 30 Jan 2018 15:14:58 +0000 (10:14 -0500)]
Remove ValueTuple usage from ConfiguredValueTaskAwaitable

It was superfluous and made sharing the code with corefx more challenging due to the netstandard1.0 build of System.Threading.Tasks.Extensions in corefx.

6 years agoMake ValueTaskAwaiters readonly structs
Stephen Toub [Tue, 30 Jan 2018 15:13:52 +0000 (10:13 -0500)]
Make ValueTaskAwaiters readonly structs

The _value field wasn't previously readonly, because method calls were made on the ValueTask, resulting in a copy.  But now that ValueTask is a readonly struct, the field can be readonly, and these structs can then also be readonly.

6 years agoRemove defunct CreateAsyncMethodBuilder from ValueTask
Stephen Toub [Tue, 30 Jan 2018 15:12:52 +0000 (10:12 -0500)]
Remove defunct CreateAsyncMethodBuilder from ValueTask

6 years agoThrowExceptionFromContextInternal, RtlCaptureContext: fix for asan (#16074)
Konstantin Baladurin [Tue, 30 Jan 2018 14:05:57 +0000 (17:05 +0300)]
ThrowExceptionFromContextInternal, RtlCaptureContext: fix for asan (#16074)

- Save arguments on stack before calling __asan_handle_no_return in
  ThrowExceptionFromContextInternal

- Fix saving arguments on stack before calling __asan_handle_no_return
  in RtlCaptureContext for arm64

6 years agoCleanup + Small TimeZoneInfo optimization for Unix (dotnet/corert#5314)
Jan Kotas [Tue, 30 Jan 2018 09:11:03 +0000 (01:11 -0800)]
Cleanup + Small TimeZoneInfo optimization for Unix (dotnet/corert#5314)

* Delete non-shared TimeZoneInfo.cs
* Delete duplicate resource

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoDefault interface methods test fixes (#15995)
Michal Strehovský [Tue, 30 Jan 2018 12:52:20 +0000 (13:52 +0100)]
Default interface methods test fixes (#15995)

* The diamondshape test should work now that #15979 and #15978 are merged.
* Create debug and retail version of diamondshape and sharedgenerics tests so that we have retail coverage. These tests hit issues around devirtualization (that is only active when RyuJIT is optimizing).
* Add license headers

6 years agoChanging ConvertTo.*Scalar to ConvertScalarTo.*
Tanner Gooding [Tue, 30 Jan 2018 03:09:10 +0000 (19:09 -0800)]
Changing ConvertTo.*Scalar to ConvertScalarTo.*

6 years agoPrevent compiler optimization that could cause local var values to change in multithr...
Koundinya Veluri [Tue, 30 Jan 2018 03:08:02 +0000 (19:08 -0800)]
Prevent compiler optimization that could cause local var values to change in multithreaded environments, in some places (#16089)

6 years agoAdd ActivityId Support to EventPipe (#16055)
Brian Robbins [Tue, 30 Jan 2018 02:49:51 +0000 (18:49 -0800)]
Add ActivityId Support to EventPipe (#16055)

6 years agoChanging BroadcastElement to BroadcastScalar
Tanner Gooding [Tue, 30 Jan 2018 02:47:28 +0000 (18:47 -0800)]
Changing BroadcastElement to BroadcastScalar

6 years agoAdding missing instruction mapping documentation and fixing some signatures.
Tanner Gooding [Tue, 30 Jan 2018 01:29:43 +0000 (17:29 -0800)]
Adding missing instruction mapping documentation and fixing some signatures.

6 years agoEventPipe: Don't Generate and Emit Stacks on Rundown (#16083)
Brian Robbins [Tue, 30 Jan 2018 00:57:01 +0000 (16:57 -0800)]
EventPipe: Don't Generate and Emit Stacks on Rundown (#16083)

6 years agoAdding the missing memory fencing and prefetch intrinsics for x86
Tanner Gooding [Tue, 30 Jan 2018 00:39:42 +0000 (16:39 -0800)]
Adding the missing memory fencing and prefetch intrinsics for x86

6 years agoAdding the Vector128 postfix on the Sse2.LoadScalar instructions
Tanner Gooding [Tue, 30 Jan 2018 00:15:16 +0000 (16:15 -0800)]
Adding the Vector128 postfix on the Sse2.LoadScalar instructions

6 years agoMerge pull request #16066 from tannergooding/sse-intrinsics
Tanner Gooding [Tue, 30 Jan 2018 00:05:10 +0000 (16:05 -0800)]
Merge pull request #16066 from tannergooding/sse-intrinsics

Adding basic codegen support for the SSE Store intrinsics.

6 years agoMoving the listed instruction for the HWIntrinsics to its own line
Tanner Gooding [Tue, 30 Jan 2018 00:01:35 +0000 (16:01 -0800)]
Moving the listed instruction for the HWIntrinsics to its own line

6 years agoChanging the hardware intrinsic APIs to use pointers rather than ref
Tanner Gooding [Mon, 29 Jan 2018 23:46:55 +0000 (15:46 -0800)]
Changing the hardware intrinsic APIs to use pointers rather than ref

6 years agoRenaming Sse41.LoadAlignedNonTemporal to Sse41.LoadAlignedVector128NonTemporal
Tanner Gooding [Wed, 24 Jan 2018 20:34:47 +0000 (12:34 -0800)]
Renaming Sse41.LoadAlignedNonTemporal to Sse41.LoadAlignedVector128NonTemporal

6 years agoAdding the missing Sse2.MoveScalar intrinsics
Tanner Gooding [Wed, 24 Jan 2018 20:33:10 +0000 (12:33 -0800)]
Adding the missing Sse2.MoveScalar intrinsics

6 years agoListing the instruction mappings for the AVX2 intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 20:32:52 +0000 (12:32 -0800)]
Listing the instruction mappings for the AVX2 intrinsics.

6 years agoListing the instruction mappings for the FMA intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 18:56:41 +0000 (10:56 -0800)]
Listing the instruction mappings for the FMA intrinsics.

6 years agoListing the instruction mappings for the AVX intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 18:47:26 +0000 (10:47 -0800)]
Listing the instruction mappings for the AVX intrinsics.

6 years agoListing the instruction mappings for the SSE4.2 intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 07:07:31 +0000 (23:07 -0800)]
Listing the instruction mappings for the SSE4.2 intrinsics.

6 years agoListing the instruction mappings for the SSE4.1 intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 06:59:28 +0000 (22:59 -0800)]
Listing the instruction mappings for the SSE4.1 intrinsics.

6 years agoListing the instruction mappings for the SSSE3 intrinsics
Tanner Gooding [Wed, 24 Jan 2018 06:29:56 +0000 (22:29 -0800)]
Listing the instruction mappings for the SSSE3 intrinsics

6 years agoListing the instruction mappings for the SSE3 intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 06:22:56 +0000 (22:22 -0800)]
Listing the instruction mappings for the SSE3 intrinsics.

6 years agoListing the instruction mappings for the SSE2 intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 06:17:55 +0000 (22:17 -0800)]
Listing the instruction mappings for the SSE2 intrinsics.

6 years agoListing the instruction mappings for the SSE intrinsics.
Tanner Gooding [Wed, 24 Jan 2018 04:23:48 +0000 (20:23 -0800)]
Listing the instruction mappings for the SSE intrinsics.

6 years agoAdding overloads for the x86 Scalar intrinsics to not take 'upper'.
Tanner Gooding [Sat, 20 Jan 2018 17:54:46 +0000 (09:54 -0800)]
Adding overloads for the x86 Scalar intrinsics to not take 'upper'.

6 years agoFix the naming of the arguments for LoadHigh and LoadLow
Tanner Gooding [Fri, 19 Jan 2018 06:31:02 +0000 (22:31 -0800)]
Fix the naming of the arguments for LoadHigh and LoadLow

6 years agoFixing some inconsistencies in the Scalar intrinsics
Tanner Gooding [Fri, 19 Jan 2018 06:27:04 +0000 (22:27 -0800)]
Fixing some inconsistencies in the Scalar intrinsics

6 years agoAdding the missing Sse2.MoveMask(Vector128<byte>) intrinsic
Tanner Gooding [Fri, 19 Jan 2018 05:34:48 +0000 (21:34 -0800)]
Adding the missing Sse2.MoveMask(Vector128<byte>) intrinsic

6 years agoUpdating the auto-generated x86 HWIntrinsic test files to contain basic documentation.
Tanner Gooding [Mon, 29 Jan 2018 23:29:15 +0000 (15:29 -0800)]
Updating the auto-generated x86 HWIntrinsic test files to contain basic documentation.

6 years agoMove TimeZoneInfo.Unix.cs to shared CoreLib partition (#16057)
Jan Kotas [Mon, 29 Jan 2018 23:22:01 +0000 (15:22 -0800)]
Move TimeZoneInfo.Unix.cs to shared CoreLib partition (#16057)

- Refactored internal version of System.IO.File to be similar to full corefx version
- Cleaned up some Unix PAL APIs that are no longer used

Contributes to dotnet/corert#5248

6 years agoEnsureCapacty(0) should return zero as capacity for a non initialized Dictionary...
Maryam Ariyan [Mon, 29 Jan 2018 22:35:21 +0000 (17:35 -0500)]
EnsureCapacty(0) should return zero as capacity for a non initialized Dictionary rather than doing initialization. (#16076)

Issue is: dotnet/corefx#24445

6 years agoMerge pull request #16077 from mikedn/smalltype
Carol Eidt [Mon, 29 Jan 2018 21:57:57 +0000 (13:57 -0800)]
Merge pull request #16077 from mikedn/smalltype

Use genTypeCanRepresentValue only with small types

6 years agoUpdate Span/ReadOnlySpan strings
Ian Hays [Mon, 29 Jan 2018 21:49:59 +0000 (13:49 -0800)]
Update Span/ReadOnlySpan strings

6 years agoUse corelib-shared ValueStringBuilder
Stephen Toub [Mon, 29 Jan 2018 17:01:12 +0000 (12:01 -0500)]
Use corelib-shared ValueStringBuilder

Use the shared version, delete the copy.

Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
6 years agoJIT: don't overlook strong nearby preference in LSRA (#16028)
Andy Ayers [Mon, 29 Jan 2018 20:36:38 +0000 (12:36 -0800)]
JIT: don't overlook strong nearby preference in LSRA (#16028)

When allocating an interval, LSRA will look at related intervals
for preference hints.

LSRA may look past a related interval I1 to its related interval
I2 if I1 looks like a simple copy. But if I1 has been previously
allocated then it seems we are often better served using I1's
preferences instead of using I2's.

Addresses some issues seen in #11390.

6 years agoPerform PhysicalMemoryLimit check for workstation GC, refactor GetLargestOnDieCacheSi...
Tom Deseyn [Mon, 29 Jan 2018 20:11:10 +0000 (21:11 +0100)]
Perform PhysicalMemoryLimit check for workstation GC, refactor GetLargestOnDieCacheSize into GetCacheSizePerLogicalCpu (#15975)

* refactor: combine GetLargestOnDieCacheSize and GetLogicalCpuCount in GetCacheSizePerLogicalCpu

* Perform PhysicalMemoryLimit check also for workstation GC

6 years agoUpdate CoreClr to preview2-26129-05 (#16073)
dotnet-maestro-bot [Mon, 29 Jan 2018 18:33:32 +0000 (12:33 -0600)]
Update CoreClr to preview2-26129-05 (#16073)

6 years agoAdded Grisu3 algorithm support for double.ToString(). (#14646)
Jingyu Ma [Mon, 29 Jan 2018 17:13:31 +0000 (01:13 +0800)]
Added Grisu3 algorithm support for double.ToString(). (#14646)

* Added Grisu3 algorithm support for double.ToString().

- Implemented Grisu3 algorithm.
- When calling double.ToString(), try Grisu3 first, if it fails, fall back to Dragon4.

Fix #14478

* Added comments. Fixed a minor bug.

* Optimized the performance in DigitGen.

* Added shortcut for numbers without fraction.

* Updated according to the review comments.

Added more comments. Changed the value of D_1_LOG2_10

6 years agoMerge pull request #15833 from sdmaclea/PR-ARM64-INITIAL-INTRINSIC-FRAMEWORK
Carol Eidt [Mon, 29 Jan 2018 17:06:45 +0000 (09:06 -0800)]
Merge pull request #15833 from sdmaclea/PR-ARM64-INITIAL-INTRINSIC-FRAMEWORK

[Arm64] Initial HW intrinsic framework

6 years agoDisable broken EventPipe tests at build time (#16046)
Victor "Nate" Graf [Mon, 29 Jan 2018 16:50:36 +0000 (08:50 -0800)]
Disable broken EventPipe tests at build time (#16046)

6 years agoUse EventSource guid ctor for ArrayPoolEventSource (#16054)
Ben Adams [Mon, 29 Jan 2018 16:44:18 +0000 (16:44 +0000)]
Use EventSource guid ctor for ArrayPoolEventSource (#16054)

* Use EventSource guid ctor for ArrayPoolEventSource

* missing e

6 years agoUse Guid ctor for TplEtwProvider (#16060)
Ben Adams [Mon, 29 Jan 2018 16:43:09 +0000 (16:43 +0000)]
Use Guid ctor for TplEtwProvider (#16060)

6 years agoFix reflection to work with default interface methods (#16034)
Michal Strehovský [Mon, 29 Jan 2018 16:37:27 +0000 (17:37 +0100)]
Fix reflection to work with default interface methods (#16034)

Fixes #15645.
Fixes #15644.

6 years agoUse genTypeCanRepresentValue only with small types
Mike Danes [Mon, 29 Jan 2018 16:31:36 +0000 (18:31 +0200)]
Use genTypeCanRepresentValue only with small types

It's not needed and it's problematic to make it work for other types. In the JIT constant values are represented using `ssize_t` and you can't distinguish between `-1` and `UINT64_MAX`.

6 years agoimprove DllImport library name variation trying (#15912)
Tom Deseyn [Mon, 29 Jan 2018 15:51:27 +0000 (16:51 +0100)]
improve DllImport library name variation trying (#15912)

* dllimport: refactor libname variation code

* Change order of libname variations depending on suffix presence

* make MAX_LIBNAME_VARIATIONS static

* PR feedback

* Fix non PAL build

6 years agoUpdate PgoData to master-20180129-0045 (#16070)
dotnet-maestro-bot [Mon, 29 Jan 2018 13:27:21 +0000 (07:27 -0600)]
Update PgoData to master-20180129-0045 (#16070)

6 years agoFix ProjectN build break (dotnet/corert#5302)
Jan Kotas [Mon, 29 Jan 2018 06:01:47 +0000 (22:01 -0800)]
Fix ProjectN build break (dotnet/corert#5302)

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
6 years agoFix metadata format error checking (#16036)
Jan Kotas [Mon, 29 Jan 2018 13:21:44 +0000 (05:21 -0800)]
Fix metadata format error checking (#16036)

NextStream_Verify can return NULL for invalid file. Report error for it instead of AVing.
Similar check is around the other calls to NextStream_Verify. It was missing here for some reason.

6 years agoUpdate CoreClr to preview2-26129-01 (#16067)
dotnet-maestro-bot [Mon, 29 Jan 2018 04:21:11 +0000 (22:21 -0600)]
Update CoreClr to preview2-26129-01 (#16067)

6 years agoMarking SSE HWIntrinsics as fully implemented
Tanner Gooding [Sun, 28 Jan 2018 19:38:03 +0000 (11:38 -0800)]
Marking SSE HWIntrinsics as fully implemented

6 years agoAdding tests for the SSE Store, StoreAligned, StoreAlignedNonTemporal, StoreHigh...
Tanner Gooding [Sun, 28 Jan 2018 19:37:31 +0000 (11:37 -0800)]
Adding tests for the SSE Store, StoreAligned, StoreAlignedNonTemporal, StoreHigh, StoreLow, and StoreScalar intrinsics

6 years agoAdding support for the SSE Store, StoreAligned, StoreAlignedNonTemporal, StoreHigh...
Tanner Gooding [Sun, 28 Jan 2018 19:37:12 +0000 (11:37 -0800)]
Adding support for the SSE Store, StoreAligned, StoreAlignedNonTemporal, StoreHigh, StoreLow, and StoreScalar intrinsics

6 years agoImprove Interlocked.Exchange<T> (#16058)
mikedn [Sun, 28 Jan 2018 18:58:58 +0000 (20:58 +0200)]
Improve Interlocked.Exchange<T> (#16058)

Replace TypedReference with Unsafe.As, it generates far less code and, with the help of AggresiveInlining, it allows Exchange<T> to inline.

6 years agoUpdate CoreClr, PgoData to preview2-26128-04, master-20180128-0035, respectively...
dotnet-maestro-bot [Sun, 28 Jan 2018 15:29:17 +0000 (09:29 -0600)]
Update CoreClr, PgoData to preview2-26128-04, master-20180128-0035, respectively (#16059)

6 years agoUpdate CoreClr to preview2-26128-01 (#16056)
dotnet-maestro-bot [Sun, 28 Jan 2018 02:39:56 +0000 (20:39 -0600)]
Update CoreClr to preview2-26128-01 (#16056)

6 years agoUpdating several of the Sse HardwareIntrinsic tests to be generated from a template.
Tanner Gooding [Sat, 27 Jan 2018 23:41:53 +0000 (15:41 -0800)]
Updating several of the Sse HardwareIntrinsic tests to be generated from a template.

6 years agoUpdating the Avx2.Add HardwareIntrinsic tests to be generated from a template.
Tanner Gooding [Sat, 27 Jan 2018 23:30:36 +0000 (15:30 -0800)]
Updating the Avx2.Add HardwareIntrinsic tests to be generated from a template.

6 years agoUpdating the Avx HardwareIntrinsic tests to be generated from a template.
Tanner Gooding [Sat, 27 Jan 2018 23:14:22 +0000 (15:14 -0800)]
Updating the Avx HardwareIntrinsic tests to be generated from a template.

6 years agoUpdating the Sse2 HardwareIntrinsic tests to be generated from a template.
Tanner Gooding [Sat, 27 Jan 2018 19:23:35 +0000 (11:23 -0800)]
Updating the Sse2 HardwareIntrinsic tests to be generated from a template.

6 years agoMerge pull request #15961 from tannergooding/struct-packing
Tanner Gooding [Sun, 28 Jan 2018 00:02:12 +0000 (16:02 -0800)]
Merge pull request #15961 from tannergooding/struct-packing

Updates `Vector64<T>`, `Vector128<T>`, and `Vector256<T>` to have the appropriate packing.

6 years agoMoving the SetIsIntrinsic code earlier in the method table builder.
Tanner Gooding [Fri, 26 Jan 2018 02:42:54 +0000 (18:42 -0800)]
Moving the SetIsIntrinsic code earlier in the method table builder.

6 years agoUpdating the Vector64, Vector128, and Vector256 StructPacking tests.
Tanner Gooding [Mon, 22 Jan 2018 08:26:21 +0000 (00:26 -0800)]
Updating the Vector64, Vector128, and Vector256 StructPacking tests.

6 years agoUpdating the VM to properly pack the SIMD hardware intrinsic types.
Tanner Gooding [Mon, 22 Jan 2018 03:35:47 +0000 (19:35 -0800)]
Updating the VM to properly pack the SIMD hardware intrinsic types.

6 years agoUpdating the methodtablebuilder to handle the System V ABI packing requirements for...
Tanner Gooding [Mon, 22 Jan 2018 00:06:00 +0000 (16:06 -0800)]
Updating the methodtablebuilder to handle the System V ABI packing requirements for i386

6 years agoAdding some StructPacking tests to ensure existing types don't regress
Tanner Gooding [Mon, 22 Jan 2018 01:12:28 +0000 (17:12 -0800)]
Adding some StructPacking tests to ensure existing types don't regress

6 years agoUpdate BuildTools, CoreClr, CoreFx, PgoData to prerelease-02427-01, preview2-26127...
dotnet-maestro-bot [Sat, 27 Jan 2018 19:32:55 +0000 (13:32 -0600)]
Update BuildTools, CoreClr, CoreFx, PgoData to prerelease-02427-01, preview2-26127-04, preview2-26127-04, master-20180127-0046, respectively (#15992)

6 years agoOptimize Span.Copy and Span.TryCopyTo (#15947)
Levi Broderick [Sat, 27 Jan 2018 06:35:46 +0000 (22:35 -0800)]
Optimize Span.Copy and Span.TryCopyTo (#15947)

* Introduce a ref-based version of Buffer.Memmove
* Remove pinning logic from Span.CopyTo
* Tweak flow graph of Span.CopyTo / TryCopyTo in order to encourage better codegen
* Push some uncommon logic (one-element buffers, perfectly overlapping buffers) down to Memmove

6 years agoFix some tests under GCStress (#16048)
Koundinya Veluri [Sat, 27 Jan 2018 03:39:51 +0000 (19:39 -0800)]
Fix some tests under GCStress (#16048)

- Disabled one test, it takes far too long under GCStress
- For another, added a second call to WaitForPendingFinalizers() to ensure correspondence with a GC.Collect() call

6 years agoFix side effect flags setting after expression cloning. (#16045)
Eugene Rozenfeld [Sat, 27 Jan 2018 01:06:07 +0000 (17:06 -0800)]
Fix side effect flags setting after expression cloning. (#16045)

Side effect flags need to be recomputed after cloning
an expression, since cloning may involve some simplifications
(e.g., replacing a local with a const).

I also did some minor refactoring and renaming of the side-effect-updating helpers
and made one of them more robust by checking whether a child is null before accessing
its flags.

This fixes VSO 543054 where this problem was encountered in a PMI ARM32 JitStress=2 run.

6 years agoGCPrivate, GCHandle, and GChandlePrivate events for local GC (#16020)
David Mason [Sat, 27 Jan 2018 00:05:44 +0000 (16:05 -0800)]
GCPrivate, GCHandle, and GChandlePrivate events for local GC (#16020)

* first event changed

* rest of the private events

* whitespace fixes

6 years ago[Arm64] Initial HWIntrinsic implementation
Steve MacLean [Tue, 19 Dec 2017 22:15:22 +0000 (17:15 -0500)]
[Arm64] Initial HWIntrinsic implementation

6 years agoFix FreeBSD build and update build instructions (#15998)
Conrad Meyer [Fri, 26 Jan 2018 21:31:21 +0000 (13:31 -0800)]
Fix FreeBSD build and update build instructions (#15998)

Move test code include in global CMakeLists before PAL runtime includes to
avoid conflicts between PAL and system headers.
(ForeignThreadExceptionsNative.cpp -> thread -> functional -> memory ->
cassert -> pal rt "assert.h".)  Drop no longer needed remove_definitions
lines -- they're only set by the clrdefinitions.cmake include later in
the file.

Update build instructions to include needed components (ninja,
lttng-ust, python27).

Add missing ElfW() definition when libunwind does not define it.

FreeBSD alloca() is defined in stdlib.h, so include that instead of
alloca.h on FreeBSD.

6 years agoMerge pull request #16035 from jashook/use_checked_centos
Jarret Shook [Fri, 26 Jan 2018 18:52:20 +0000 (10:52 -0800)]
Merge pull request #16035 from jashook/use_checked_centos

Use centOS Checked jobs

6 years agoUse centOS Checked jobs
jashook [Fri, 26 Jan 2018 17:08:43 +0000 (09:08 -0800)]
Use centOS Checked jobs

6 years agofix pointer in ILCodeVersionNode so it uses PTR_COR_ILMETHOD instead of COR_IL_METHOD...
David Mason [Fri, 26 Jan 2018 07:41:29 +0000 (23:41 -0800)]
fix pointer in ILCodeVersionNode so it uses PTR_COR_ILMETHOD instead of COR_IL_METHOD *, which was causing a crash in the DAC (#16003)

6 years agoCreate the concept of EventPipeSession and refactor EventPipe to use it. Also expose...
Brian Robbins [Fri, 26 Jan 2018 04:29:23 +0000 (20:29 -0800)]
Create the concept of EventPipeSession and refactor EventPipe to use it.  Also expose COMPlus configuration variables to support session configuration and output file path. (#16018)

6 years agoFix Windows-Specific EventPipe Bugs (#16025)
Brian Robbins [Fri, 26 Jan 2018 04:28:48 +0000 (20:28 -0800)]
Fix Windows-Specific EventPipe Bugs (#16025)

* Modify IsEnabled macros used on Windows.

* Fix arithmetic error due to order of operations.

6 years ago[Local GC] FEATURE_EVENT_TRACE 3/n: Defining and Firing Dynamic Events (#16000)
Sean Gillespie [Fri, 26 Jan 2018 02:17:57 +0000 (18:17 -0800)]
[Local GC] FEATURE_EVENT_TRACE 3/n: Defining and Firing Dynamic Events (#16000)

6 years agoCompute System.Private.CoreLib roots required by the runtime. (#15525)
Eugene Rozenfeld [Fri, 26 Jan 2018 01:45:10 +0000 (17:45 -0800)]
Compute System.Private.CoreLib roots required by the runtime. (#15525)

Embed the result as a System.Private.CoreLib.dll xml resource
for consumption by ILLink.

Update mscorlib.h to make several dependencies explicit.

The actual msbuild task lives in the linker repo:
https://github.com/mono/linker/blob/master/corebuild/integration/ILLink.Tasks/CreateRuntimeRootDescriptorFile.cs

6 years agoFix asan false-positive errors: (#15563)
Konstantin Baladurin [Thu, 25 Jan 2018 22:19:19 +0000 (01:19 +0300)]
Fix asan false-positive errors: (#15563)

- Call __asan_handle_no_return in RtlRestoreContext if it doesn't return
  and in ThrowExceptionFromContextInternal function;

- Increase alternate signal stack size and use it also for asan.

6 years agoEnable tiered jitting for R2R methods (#15967)
Koundinya Veluri [Thu, 25 Jan 2018 20:01:32 +0000 (12:01 -0800)]
Enable tiered jitting for R2R methods (#15967)

Enable tiered jitting for R2R methods

- Included R2R methods and generics over value types in CoreLib for tiered jitting. Tier 0 for R2R methods is the precompiled code if available, and tier 1 is selectively scheduled based on call counting.
- Added a delay before starting to count calls for tier 1 promotion. The delay is a short duration after frequent tier 0 jitting stops (current heuristic for identifying startup).
- Startup time and steady-state performance have improved on JitBench. There is a regression shortly following startup due to call counting and tier 1 jitting, for a short duration before steady-state performance stabilizes.
- Added two new config values, one for configuring the call count threshold for promoting to tier 1, and another for specifying the delay from the last tier 0 JIT invocation before starting to count calls

6 years agoRevert "Add environment variable (COMPlus_EnableDiagnostics) to disable debugging...
Russ Keldorph [Thu, 25 Jan 2018 00:52:29 +0000 (16:52 -0800)]
Revert "Add environment variable (COMPlus_EnableDiagnostics) to disable debugging and profiling. (#15878)"

This reverts commit 5bcfde404803f85451cf0ee9fd6406734cb878ff.

6 years ago Add GetLoadLibrary function for PAL & use in TrackErrorCode (#15831)
William Godbe [Thu, 25 Jan 2018 18:23:01 +0000 (10:23 -0800)]
 Add GetLoadLibrary function for PAL & use in TrackErrorCode (#15831)

* Add GetLoadLibrary function for PAL & use in TrackErrorCode

* Finish changes to dllimport.cpp

* Fix unix build errors

* fix windows issues

* Address feedback

* Fix return type

* Address feedback

* Fix return type

* Fix usage of LPCWSTR

* Use shared library string

* Append message strings

* Fix append

* Append newline

* Fix spelling

* Modify error messages

* Resolve conflicts

* Add mac message & stop appending all exceptions

* Fix another error message

* Fix NoName Error

* Add newline to .h file

6 years agoResolve iterators and async methods (#14655)
Ben Adams [Thu, 25 Jan 2018 17:56:36 +0000 (17:56 +0000)]
Resolve iterators and async methods (#14655)

Allows a developer to determine *correct* overload called for *async* and *iterators*, from a stacktrace.

Matches the compiler generated containing `Type` to the source method using:
`method.DeclaringType == StateMachineAttribute.StateMachineType` attribute to allow the stack trace to resolve the mangled method name to the correct overload.  Also appends the statemachine method name with `+` for iterators.

Resolves: dotnet/corefx#24627

6 years agoMerge pull request #16017 from jashook/fix_inner_loop_centos_test
Jarret Shook [Thu, 25 Jan 2018 17:34:12 +0000 (09:34 -0800)]
Merge pull request #16017 from jashook/fix_inner_loop_centos_test

Correctly allow buildOnly jobs for release x64

6 years agoCorrectly allow buildOnly jobs for release x64
jashook [Thu, 25 Jan 2018 17:15:08 +0000 (09:15 -0800)]
Correctly allow buildOnly jobs for release x64

6 years agoMerge pull request #16005 from CarolEidt/Fix15848
Carol Eidt [Thu, 25 Jan 2018 16:08:27 +0000 (08:08 -0800)]
Merge pull request #16005 from CarolEidt/Fix15848

Disable FP to Unsigned Vector Conversions

6 years agoMinor bug fix for Array.Sort: Replace keys.Length with length for FloorLog2PlusOne...
nietras [Thu, 25 Jan 2018 14:20:10 +0000 (15:20 +0100)]
Minor bug fix for Array.Sort: Replace keys.Length with length for FloorLog2PlusOne (#16002)

* replace keys.Length with length for FloorLog2PlusOne

* fix non-generic sort

6 years ago[x86/Linux] Fix HelperMethodFrame::UpdateRegDisplay (#15993)
Konstantin Baladurin [Thu, 25 Jan 2018 10:31:32 +0000 (13:31 +0300)]
[x86/Linux] Fix HelperMethodFrame::UpdateRegDisplay (#15993)

For DAC after initialization MachState using InsureInit method,
register pointers are NULL so we cannot use them to restore register
values.

6 years agoDisable the ConvertToUInt intrinsics by removing them from simdintrinsiclist.h
Carol Eidt [Thu, 25 Jan 2018 05:36:02 +0000 (21:36 -0800)]
Disable the ConvertToUInt intrinsics by removing them from simdintrinsiclist.h

6 years agoMerge pull request #15813 from jashook/inner_loop_fixes
Jarret Shook [Thu, 25 Jan 2018 05:24:02 +0000 (21:24 -0800)]
Merge pull request #15813 from jashook/inner_loop_fixes

Add innerloop tag for pri0 jobs

6 years agoAdd innerloop tag for pri0 jobs
jashook [Wed, 10 Jan 2018 17:52:23 +0000 (09:52 -0800)]
Add innerloop tag for pri0 jobs

Everything that is not innerloop will run priority 1.