platform/upstream/coreclr.git
6 years agoadd repro
Sergey Andreenko [Thu, 29 Mar 2018 23:33:52 +0000 (16:33 -0700)]
add repro

6 years agofix ifdefs comments
Sergey Andreenko [Thu, 29 Mar 2018 22:17:06 +0000 (15:17 -0700)]
fix ifdefs comments

6 years agoMerge pull request #17314 from fiigii/fixgctests
Carol Eidt [Fri, 30 Mar 2018 18:36:04 +0000 (11:36 -0700)]
Merge pull request #17314 from fiigii/fixgctests

Fix GCStress failures from hardware intrinsic tests

6 years agoUpdate CoreClr, CoreFx to preview3-26330-06, preview3-26330-06, respectively (#17344)
dotnet-maestro-bot [Fri, 30 Mar 2018 15:40:27 +0000 (10:40 -0500)]
Update CoreClr, CoreFx to preview3-26330-06, preview3-26330-06, respectively (#17344)

6 years agoChange OwnedMemory to MemoryManager and add an IMemoryOwner. (#17340)
Ahson Khan [Fri, 30 Mar 2018 15:27:25 +0000 (08:27 -0700)]
Change OwnedMemory to MemoryManager and add an IMemoryOwner. (#17340)

* Change OwnedMemory to MemoryManager and add an IMemoryOwner.

* Fix comments.

* Reset start and length if TryGetMemoryManager returns false.

* Reset start and length if TryGetMemoryManager returns false [actually].

* Re-order MemoryHandle ctor parameters and rename TOwner to TManager.

* Fix formatting, remove unused code, and fix impl of Pin()

6 years agoUpdate CoreClr to preview3-26330-01 (#17328)
dotnet-maestro-bot [Fri, 30 Mar 2018 07:53:45 +0000 (02:53 -0500)]
Update CoreClr to preview3-26330-01 (#17328)

6 years agoMerge pull request #17327 from weshaggard/FixIdentityPackageBuild
Wes Haggard [Thu, 29 Mar 2018 23:33:04 +0000 (16:33 -0700)]
Merge pull request #17327 from weshaggard/FixIdentityPackageBuild

Fix identity package filtering

6 years agoFix GCStress failures
Fei Peng [Thu, 29 Mar 2018 22:39:04 +0000 (15:39 -0700)]
Fix GCStress failures

6 years agoMerge pull request #17322 from BruceForstall/FixTestBuild
Bruce Forstall [Thu, 29 Mar 2018 22:29:07 +0000 (15:29 -0700)]
Merge pull request #17322 from BruceForstall/FixTestBuild

Add back hosting to split builds

6 years agoMerge pull request #17211 from mikedn/dyn-hwinfo
Carol Eidt [Thu, 29 Mar 2018 21:57:03 +0000 (14:57 -0700)]
Merge pull request #17211 from mikedn/dyn-hwinfo

Remove HWIntrinsicFlag bitwise OR operator

6 years agoFix identity package filtering
Wes Haggard [Thu, 29 Mar 2018 17:48:52 +0000 (10:48 -0700)]
Fix identity package filtering

We only want to filter out identity package builds on
official builds that aren't windows x64, to avoid building
and publishing them more then once in an official build.

We also need to account for source-build which sets the
OfficialBuildId property to replicate the official builds,
so we also look at the DotNetBuildOffline property to
determine that we should still build the identity package.

6 years agoFix for incorrectly handle invalid UTF8 characters issue (#17302)
Luqun Lou [Thu, 29 Mar 2018 20:59:18 +0000 (13:59 -0700)]
Fix for incorrectly handle invalid UTF8 characters issue (#17302)

There are some behavior difference between C/C++ UTF8 encoder/decoder and Encoding.UTF8 as mentioned by #16786.

6 years agoFix AssemblyLoadContext.Unloading and ProcessExit for Windows Docker containers ...
Daniel Harvey [Thu, 29 Mar 2018 18:59:19 +0000 (11:59 -0700)]
Fix AssemblyLoadContext.Unloading and ProcessExit for Windows Docker containers (#17265)

On Windows, we need to shutdown the EE when receiving a CTRL_CLOSE_EVENT to we run ProcessExit handlers and other code that relies on ProcessExit working (like AssemblyLoadContext.Unloading). One way we receive this event is when there's a running process in a docker container that has the stop command run against it.

6 years agoMerge pull request #17304 from dotnet/RemovingObsoleteCleanupBuilds
Divino César [Thu, 29 Mar 2018 18:01:36 +0000 (11:01 -0700)]
Merge pull request #17304 from dotnet/RemovingObsoleteCleanupBuilds

This BuildTask has been deprecated in favor of maintenance jobs.

6 years agoUpdate CoreFx to preview3-26329-05 (#17318)
dotnet-maestro-bot [Thu, 29 Mar 2018 17:32:32 +0000 (12:32 -0500)]
Update CoreFx to preview3-26329-05 (#17318)

6 years agoAdd back hosting to split builds
Bruce Forstall [Thu, 29 Mar 2018 17:20:23 +0000 (10:20 -0700)]
Add back hosting to split builds

6 years agoDict cache default comparer for object types (#17285)
Ben Adams [Thu, 29 Mar 2018 17:06:42 +0000 (18:06 +0100)]
Dict cache default comparer for object types (#17285)

* Dict cache default comparer for object types

* Improves

* Fix EventRegistrationToken Equals

6 years agoStringBuilder.Equals: value to span (#17311)
Maryam Ariyan [Thu, 29 Mar 2018 16:43:58 +0000 (09:43 -0700)]
StringBuilder.Equals: value to span (#17311)

6 years agochange arm maxIter to 20 (#17308)
Sergey Andreenko [Thu, 29 Mar 2018 05:44:32 +0000 (22:44 -0700)]
change arm maxIter to 20 (#17308)

6 years agoUpdate BuildTools, CoreClr, CoreFx to preview3-02629-02, preview3-26329-01, preview3...
dotnet-maestro-bot [Thu, 29 Mar 2018 03:55:21 +0000 (22:55 -0500)]
Update BuildTools, CoreClr, CoreFx to preview3-02629-02, preview3-26329-01, preview3-26329-01, respectively (#17309)

6 years ago[Arm64] Correct cross/arm64/tryrun.cmake (#17293)
Steve MacLean [Thu, 29 Mar 2018 00:40:11 +0000 (20:40 -0400)]
[Arm64] Correct cross/arm64/tryrun.cmake (#17293)

6 years agoUpdate BuildTools, CoreClr to preview3-02628-01, preview3-26328-08, respectively...
dotnet-maestro-bot [Thu, 29 Mar 2018 00:05:58 +0000 (19:05 -0500)]
Update BuildTools, CoreClr to preview3-02628-01, preview3-26328-08, respectively (#17299)

6 years agoMerge pull request #17280 from weshaggard/SyncInitToolsWithSourceBuild
Wes Haggard [Wed, 28 Mar 2018 23:55:49 +0000 (16:55 -0700)]
Merge pull request #17280 from weshaggard/SyncInitToolsWithSourceBuild

Sync init-tools scripts with what is in source-build

6 years agoUse ROSpan.IndexOf as the workhorse for string.IndexOf (#17284)
Ahson Khan [Wed, 28 Mar 2018 23:33:56 +0000 (16:33 -0700)]
Use ROSpan.IndexOf as the workhorse for string.IndexOf (#17284)

* Use ROSpan.IndexOf as the workhorse for string.IndexOf

* Make changes to Span.IndexOf to follow what string.IndexOf did.

* Address PR feedback.

* Use Unsafe.Read instead of Unsafe.ReadUnaligned.

* Remove special casing for count == 0

* Fix up debug assert to use vector count instead of intptr.size

* Use size of Vector<ushort> instead of Vector<byte>.Count

6 years agoFix Dictionary CopyTo regression (#17300)
Ben Adams [Wed, 28 Mar 2018 23:11:38 +0000 (00:11 +0100)]
Fix Dictionary CopyTo regression (#17300)

6 years agoThis BuildTask has been deprecated in favor of maintenance jobs.
Cesar Soares Lucas [Wed, 28 Mar 2018 21:44:57 +0000 (14:44 -0700)]
This BuildTask has been deprecated in favor of maintenance jobs.

6 years agoMerge pull request #17303 from BruceForstall/EnableUbuntuArmGCStressJobsMaster
Bruce Forstall [Wed, 28 Mar 2018 21:07:26 +0000 (14:07 -0700)]
Merge pull request #17303 from BruceForstall/EnableUbuntuArmGCStressJobsMaster

Enable Linux arm32 GCStress jobs

6 years agoRemoving 'EXPERIMENTAL' from tiered compilation env var (#17283)
Noah Falk [Wed, 28 Mar 2018 20:56:24 +0000 (13:56 -0700)]
Removing 'EXPERIMENTAL' from tiered compilation env var (#17283)

Things have progressed far enough that its time to use a friendlier name. The feature still still has performance aspects that need to be investigated and improved, but I don't want to scare people off simply because it isn't as fast as it could be.
This also updates to use a newer CoreFX version for JitBench since that appeared to be broken, and updated some comments and usage of the tieredcompilation variable.

6 years agoEnable Linux arm32 GCStress jobs
Bruce Forstall [Tue, 27 Mar 2018 19:22:38 +0000 (12:22 -0700)]
Enable Linux arm32 GCStress jobs

Non-PR jobs (cron and push) are disabled for now.

6 years agoUnique-ify name of TestList.json to avoid collisions
Russ Keldorph [Wed, 28 Mar 2018 19:34:59 +0000 (12:34 -0700)]
Unique-ify name of TestList.json to avoid collisions

Fixes #16840

6 years agoMerge pull request #17090 from debayang/corefx_tests
Bruce Forstall [Wed, 28 Mar 2018 19:50:44 +0000 (12:50 -0700)]
Merge pull request #17090 from debayang/corefx_tests

Fix run-corefx-tests.py for Arm64 Linux cross build

6 years agoFix some more unwinding in R2R ARM (#17292)
Jan Vorlicek [Wed, 28 Mar 2018 18:16:57 +0000 (20:16 +0200)]
Fix some more unwinding in R2R ARM (#17292)

There was one more change needed to make the unwinding work properly.
Pushes in some prologs were missing the unwinder annotation.
The fix is to use PROLOG_PUSH for them.
To make things in this file consistent, I've also replaced pops in
epilogs with EPILOG_POP macro and vpush / vpop with PROLOG_VPUSH /
PROLOG_VPOP, although it is not functionally necessary.

With these changes, all the EH related issues are gone.

6 years agoNit changes in API diff between .NET Core 2.0 and .NET Core 2.1 (#17288)
Maryam Ariyan [Wed, 28 Mar 2018 18:09:42 +0000 (11:09 -0700)]
Nit changes in API diff between .NET Core 2.0 and .NET Core 2.1 (#17288)

* 'value' to 'other': bool System.IEquatable<System.UIntPtr>.Equals(UIntPtr value);

* 'value' to 'other': bool System.IEquatable<System.IntPtr>.Equals(IntPtr value);

6 years agoSync init-tools scripts with what is in source-build
Wes Haggard [Tue, 27 Mar 2018 23:56:11 +0000 (16:56 -0700)]
Sync init-tools scripts with what is in source-build

6 years agoUpdate BuildTools, CoreClr, CoreFx to preview3-02627-03, preview3-26328-07, preview3...
dotnet-maestro-bot [Wed, 28 Mar 2018 18:02:57 +0000 (13:02 -0500)]
Update BuildTools, CoreClr, CoreFx to preview3-02627-03, preview3-26328-07, preview3-26328-06, respectively (#17248)

6 years agoMerge pull request #17126 from CarolEidt/Fix545500
Carol Eidt [Wed, 28 Mar 2018 18:01:03 +0000 (11:01 -0700)]
Merge pull request #17126 from CarolEidt/Fix545500

ARM: Fix reg resolution for doubles

6 years agoAdd crossbitness support to ClrJit:
Egor Chesakov [Tue, 27 Mar 2018 21:12:56 +0000 (14:12 -0700)]
Add crossbitness support to ClrJit:
  * Add FEATURE_CROSSBITNESS in crosscomponents.cmake
  * Exclude mscordaccore mscordbi sos from CLR_CROSS_COMPONENTS_LIST when FEATURE_CROSSBITNESS is defined in crosscomponents.cmake
  * Introduce target_size_t in src/jit/target.h
  * Use size_t value in genMov32RelocatableImmediate in src/jit/codegen.h src/jit/codegencommon.cpp
  * Fix definition/declaration inconsistency for emitter::emitIns_R_I in emitarm.cpp
  * Zero HiVal when GetTree::SetOper GenTreeLngCon->GetTreeIntCon in src/jit/compiler.hpp
  * Explicity specify roundUp(expr, TARGET_POINTER_SIZE)
  * Use target_size_t* target in emitOutputDataSec in src/jit/emit.cpp

6 years agoRoot methods used by debugger for IL linker (#17287)
Jan Kotas [Wed, 28 Mar 2018 14:53:49 +0000 (07:53 -0700)]
Root methods used by debugger for IL linker (#17287)

6 years agoRemove tests of unimplemented ISAs (#17286)
Fei Peng [Wed, 28 Mar 2018 14:32:28 +0000 (07:32 -0700)]
Remove tests of unimplemented ISAs (#17286)

6 years agofix for logalways eventing level (#17277)
David Mason [Wed, 28 Mar 2018 02:21:17 +0000 (19:21 -0700)]
fix for logalways eventing level (#17277)

6 years agoFix run-corefx-tests.py for Arm64
Debayan Ghosh [Wed, 21 Mar 2018 06:36:39 +0000 (12:06 +0530)]
Fix run-corefx-tests.py for Arm64

Enable cross build of corefx on x64, creates runtime for arm64
and builds corefx tests.

6 years agoFix DelayLoad_MethodCall unwinding (#17275)
Jan Vorlicek [Wed, 28 Mar 2018 00:41:47 +0000 (02:41 +0200)]
Fix DelayLoad_MethodCall unwinding (#17275)

* Fix DelayLoad_MethodCall unwinding

Unwinding through DelayLoad_MethodCall was broken due to the overwriting
of R7 which is used as a frame pointer. That caused some managed
exceptions to cause abort with unhandled PAL_SEHException.

This change fixes the problem by using a different register.

* Fix one more spot with the same issue

6 years agoMerge pull request #17161 from dotnetrt/testbuild
Wes Haggard [Wed, 28 Mar 2018 00:18:33 +0000 (17:18 -0700)]
Merge pull request #17161 from dotnetrt/testbuild

Improve Windows test build performance by building projects in groups - 4x less memory 326% faster build.

6 years ago Adding Memory.Pin() to eventually replace Memory.Retain(bool) (#17269)
Ahson Khan [Wed, 28 Mar 2018 00:05:33 +0000 (17:05 -0700)]
 Adding Memory.Pin() to eventually replace Memory.Retain(bool) (#17269)

* Adding Memory.Pin() to eventually replace Memory.Retain(bool)

* Fix copy/paste error and return default for when object is null.

* Fix XML comments.

6 years agoFix handling of FCalls in ExternalMethodFixupWorker (#17252)
Jan Vorlicek [Tue, 27 Mar 2018 23:31:20 +0000 (01:31 +0200)]
Fix handling of FCalls in ExternalMethodFixupWorker (#17252)

When running ready to run code on ARM, the ExternalMethodFixupWorker
doesn't handle the entrypoints of FCalls correctly. It tries to handle
them as compact entrypoints, but those use a different machine code
instructions and it results in an assert in debug / checked build.

This change detects the runtime supplied calls before trying to check
for the compact entrypoint.

6 years agoFix regression in StreamWriter.Write perf for small inputs (#17251)
Stephen Toub [Tue, 27 Mar 2018 22:11:15 +0000 (15:11 -0700)]
Fix regression in StreamWriter.Write perf for small inputs (#17251)

* Streamline StreamWriter/Reader.CheckAsyncTaskInProgress and make it inlineable

* Re-inline StreamWriter.WriteSpan

Prior to my span changes, the code in WriteCore was manually inlined into each of its call sites.  I'd refactored it out into a shared helper to reduce code duplication, but that introduced a regression for small inputs.  I'm keeping the factoring but making it AggressiveInlining to avoid that regression while still keeping the C# code reuse.

* Use NoInlining on WriteSpan call sites

In case methods get devirtualized and JIT attempts to inline them and WriteSpan.

6 years agoFix comment
Carol Eidt [Tue, 27 Mar 2018 22:10:59 +0000 (15:10 -0700)]
Fix comment

6 years agoFailfast windows event log (#16875)
Sung Yoon Whang [Tue, 27 Mar 2018 21:42:12 +0000 (14:42 -0700)]
Failfast windows event log (#16875)

* Add FailFast error log to Windows Event Log

* change const wchar * to lpcwstr

* Enable sending unhandled exception info to Windows Event Log

* Change log format to match console output and address PR comments

* Remove more comments

* Change the order DoReportForUnhandledException to do a safety check first before calling managed code

* Fix parameter name in header file

* Add Windows Event logging in DefaultCatchHandler and remove DoReportForUnhandledException

* Add back event reporting for ignored unhandled exception cases, fix broken UNIX builds

* Fix more broken unix builds

* Fix typo

* Address PR comments

6 years ago[Arm64] Fix forcerelocs (#17264)
Steve MacLean [Tue, 27 Mar 2018 21:32:46 +0000 (17:32 -0400)]
[Arm64] Fix forcerelocs (#17264)

6 years agoEnable reflection load ComImport assembly and Type.IsComObjectType (#16943)
Luqun Lou [Tue, 27 Mar 2018 21:20:09 +0000 (14:20 -0700)]
Enable reflection load ComImport assembly and Type.IsComObjectType (#16943)

* Enable reflection load ComImport assembly and Type.IsComObjectType

* Update Enable reflection load ComImport assembly

6 years agoFix comment in test.
Carol Eidt [Tue, 27 Mar 2018 20:54:11 +0000 (13:54 -0700)]
Fix comment in test.

6 years agoTurn off PGO unprofiled warning on Linux (#17262)
Michelle McDaniel [Tue, 27 Mar 2018 20:23:45 +0000 (13:23 -0700)]
Turn off PGO unprofiled warning on Linux (#17262)

This warning will break the build when new files are added to the build that do not have PGO data, meaning that release builds will be broken until a new PGO collection can be run. We should not break the build if there are not counts for new files.

6 years agorestrict memory limit by taking VM into consideration (#17177)
Maoni Stephens [Tue, 27 Mar 2018 20:04:26 +0000 (13:04 -0700)]
restrict memory limit by taking VM into consideration (#17177)

6 years agoMerge pull request #17233 from fiigii/portvectortests
Carol Eidt [Tue, 27 Mar 2018 19:35:19 +0000 (12:35 -0700)]
Merge pull request #17233 from fiigii/portvectortests

Port VectorReturn test to Vector128/256<T>

6 years agoMerge pull request #17255 from BruceForstall/UpdateArmWhitelist
Bruce Forstall [Tue, 27 Mar 2018 18:48:06 +0000 (11:48 -0700)]
Merge pull request #17255 from BruceForstall/UpdateArmWhitelist

Update arm64 whitelist

6 years agoMerge pull request #17258 from dotnet/dev/unix_test_workflow
Bruce Forstall [Tue, 27 Mar 2018 18:47:24 +0000 (11:47 -0700)]
Merge pull request #17258 from dotnet/dev/unix_test_workflow

Update arm Ubuntu cross build docker image

6 years agoCleanup InternalsVisibleTo (#17185)
Jan Kotas [Tue, 27 Mar 2018 17:51:22 +0000 (10:51 -0700)]
Cleanup InternalsVisibleTo (#17185)

Remove InternalsVisibleTo for mscorlib and make sure that corefx still builds with it.
Delete global constants that were left-overs from .NET Framework build system.

6 years agoMerge pull request #17246 from debayang/clr_jitstress_arm64
Carol Eidt [Tue, 27 Mar 2018 16:28:57 +0000 (09:28 -0700)]
Merge pull request #17246 from debayang/clr_jitstress_arm64

[ARM64] Fix UnspillReg instruction generation

6 years agoUpdate arm64 whitelist
Bruce Forstall [Tue, 27 Mar 2018 16:06:14 +0000 (09:06 -0700)]
Update arm64 whitelist

6 years ago[Arm64] reserve for jump stubs (#17244)
Steve MacLean [Tue, 27 Mar 2018 14:20:19 +0000 (10:20 -0400)]
[Arm64] reserve for jump stubs (#17244)

6 years agoMove String.Comparison.cs to shared CoreLib partition (#17247)
Jan Kotas [Tue, 27 Mar 2018 14:06:36 +0000 (07:06 -0700)]
Move String.Comparison.cs to shared CoreLib partition (#17247)

6 years agoFix build without libunwind installed (#17221)
Jan Vorlicek [Tue, 27 Mar 2018 13:27:01 +0000 (15:27 +0200)]
Fix build without libunwind installed (#17221)

* Fix build without libunwind installed

I have removed libunwind dependency in a recent commit, but
it turns out that the build was using incorrect include
paths and it was still depending on the libunwind installation
for the libunwind.h header.

This change fixes it.

* Fix clang warning

The libunwind headers contain two empty structs and clang
issues a warning since the size of such structs is
0 in C and 1 in C++.
This is benign for our purposes, since the affected
structs are not directly used by our code.

6 years agoUpdate BuildTools, CoreClr, CoreFx to preview3-02627-01, preview3-26327-02, preview3...
dotnet-maestro-bot [Tue, 27 Mar 2018 07:53:56 +0000 (02:53 -0500)]
Update BuildTools, CoreClr, CoreFx to preview3-02627-01, preview3-26327-02, preview3-26327-01, respectively (#17239)

6 years agoDelete MemoryExtensions.AsBytes (#17245)
Jan Kotas [Tue, 27 Mar 2018 07:31:55 +0000 (00:31 -0700)]
Delete MemoryExtensions.AsBytes (#17245)

Moved to MemoryMarshal

6 years agoVectorized SequenceCompareTo for Span<char> (#17237)
Jan Kotas [Tue, 27 Mar 2018 07:27:21 +0000 (00:27 -0700)]
Vectorized SequenceCompareTo for Span<char> (#17237)

- This change makes the compare for very short Span strings a bit slower and for longer Span strings many times faster.
- Switch several places where it was a clear benefit to use it.
`String.CompareOrdinal(string,string)` is notable exception that I have left intact for now. It is fine tuned for current string layout, and replacing with a call of vectorized SequenceCompareTo gives mixed results.

6 years agoMerge pull request #17240 from BruceForstall/RemoveTizenPRTrigger
Bruce Forstall [Tue, 27 Mar 2018 07:09:33 +0000 (00:09 -0700)]
Merge pull request #17240 from BruceForstall/RemoveTizenPRTrigger

Remove Tizen armel automatic PR triggered jobs

6 years ago[ARM64] Fix UnspillReg instruction generation
Debayan Ghosh [Tue, 27 Mar 2018 06:00:19 +0000 (11:30 +0530)]
[ARM64] Fix UnspillReg instruction generation

Fixes the runtime issues (#16359,#15389) seen with COMPlus_JitStressRegs=0x2* on ARM64.

6 years agoNew chunk should be equal/larger than the one it replaces (#17219)
Maryam Ariyan [Tue, 27 Mar 2018 04:56:35 +0000 (21:56 -0700)]
New chunk should be equal/larger than the one it replaces (#17219)

* The new chunk should be equal or larger than the one it is replacing. Fixes #17205

* Adding .exe.stackdump to .gitignore

6 years agoEnable partially implemented Intel HW intrinsics ISAs - CoreCLR part of changes
Jacek Blaszczynski [Thu, 22 Mar 2018 21:17:35 +0000 (22:17 +0100)]
Enable partially implemented Intel HW intrinsics ISAs - CoreCLR part of changes

6 years agoMerge pull request #17226 from weshaggard/MergeRestoreTargets
Wes Haggard [Tue, 27 Mar 2018 00:28:31 +0000 (17:28 -0700)]
Merge pull request #17226 from weshaggard/MergeRestoreTargets

Merge various restore tasks into one Sync target

6 years agoRemove Tizen armel automatic PR triggered jobs
Bruce Forstall [Tue, 27 Mar 2018 00:27:31 +0000 (17:27 -0700)]
Remove Tizen armel automatic PR triggered jobs

These are failing almost every job with "qeumu: Unsupported
syscall: 389". Issue: https://github.com/dotnet/coreclr/issues/12972.

6 years agoPort VectorReturn test to Vector128/256<T>
Fei Peng [Tue, 27 Mar 2018 00:09:22 +0000 (17:09 -0700)]
Port VectorReturn test to Vector128/256<T>

6 years agoRemove a few bogus reinterpret_cast(nullptr_t) (#17229)
mikedn [Mon, 26 Mar 2018 23:41:46 +0000 (02:41 +0300)]
Remove a few bogus reinterpret_cast(nullptr_t) (#17229)

reinterpret_cast cannot be used to convert nullptr_t values, so does C++ std says in a note. VC++ ignores this restriction claiming that notes are not normative. Clang enforces the restriction. Oh well...

6 years agoMerge pull request #17236 from BruceForstall/UpdateArmDockerImage
Bruce Forstall [Mon, 26 Mar 2018 23:36:58 +0000 (16:36 -0700)]
Merge pull request #17236 from BruceForstall/UpdateArmDockerImage

Update arm Ubuntu cross build docker image

6 years agoUpdate arm Ubuntu cross build docker image
Bruce Forstall [Mon, 26 Mar 2018 23:35:46 +0000 (16:35 -0700)]
Update arm Ubuntu cross build docker image

Now, use:

microsoft/dotnet-buildtools-prereqs:ubuntu-14.04-cross-e435274-20180323032140

6 years agoMerge pull request #15301 from mikedn/cast-un
Carol Eidt [Mon, 26 Mar 2018 23:25:54 +0000 (16:25 -0700)]
Merge pull request #15301 from mikedn/cast-un

Fix inconsistent handling of zero extending casts

6 years agoDisable MSBuildEventLogging for optdata alias
Wes Haggard [Mon, 26 Mar 2018 23:13:54 +0000 (16:13 -0700)]
Disable MSBuildEventLogging for optdata alias

We don't need the binclash logger for optdata so disable it
by pass a single space (note empty string means default).

The default value points at net46 which isn't what we want on
linux.

6 years agoUse movsdsse2 for HW intrinsic SSE2_ConvertToDouble (#17110)
Andy Ayers [Mon, 26 Mar 2018 22:11:39 +0000 (15:11 -0700)]
Use movsdsse2 for HW intrinsic SSE2_ConvertToDouble (#17110)

Instead of movsd, which is for GPRs. Fixes one of the stress failures
seen in #17027.

6 years agoMerge pull request #17018 from dotnet/dev/unix_test_workflow
Bruce Forstall [Mon, 26 Mar 2018 22:05:32 +0000 (15:05 -0700)]
Merge pull request #17018 from dotnet/dev/unix_test_workflow

Enable arm32 Ubuntu testing in CI

6 years agoOnly use FEATURE_PERFTRACING and FEATURE_EVENT_TRACE features when turned on (#17232)
Adam Stark [Mon, 26 Mar 2018 20:46:13 +0000 (13:46 -0700)]
Only use FEATURE_PERFTRACING and FEATURE_EVENT_TRACE features when turned on (#17232)

6 years agoFix condition
Carol Eidt [Mon, 26 Mar 2018 20:33:28 +0000 (13:33 -0700)]
Fix condition

6 years ago[local gc] Fix for BitScanForward64, it was ignoring the high byte check (#17142)
David Mason [Mon, 26 Mar 2018 20:25:32 +0000 (13:25 -0700)]
[local gc] Fix for BitScanForward64, it was ignoring the high byte check (#17142)

6 years agoUpdate CoreFx to preview3-26326-03 (#17222)
dotnet-maestro-bot [Mon, 26 Mar 2018 20:00:05 +0000 (15:00 -0500)]
Update CoreFx to preview3-26326-03 (#17222)

6 years agoWork around Jenkins problem with large env vars
Bruce Forstall [Sun, 25 Mar 2018 21:44:24 +0000 (14:44 -0700)]
Work around Jenkins problem with large env vars

Clear out `ghprbCommentBody` before msbuild is invoked, which can't
deal with large environment variables.

6 years agoLinux arm32 testing
Bruce Forstall [Fri, 2 Mar 2018 19:29:29 +0000 (11:29 -0800)]
Linux arm32 testing

Add support for arm Ubuntu testing on hardware. Most JIT stress jobs are enabled.
GC stress jobs are not enabled currently (they haven't been tried yet).
Most jobs have both PR trigger jobs as well as weekly "cron" jobs.
Job frequency will be adjusted as we gain experience with the load.
Initially, there are no automatically triggered PR jobs, but I plan to add
one or more soon.

Moved existing arm Ubuntu (on emulator) and arm Tizen (on emulator)
to use new "armem" pseudo-architecture.

The arm Ubuntu jobs have the product cross-built on Ubuntu/x64 in Docker,
use tests built in a new Windows_NT x86 BuildOnly (`_bld`) job, and are run
on hardware after copying over all the correct artifacts.

Refactored lots of code related to determining if a particular combination
of os/architecture/configuration/isPR/etc. should create a job.

Refactored test/flow job creation.

runtest.sh now creates three files based on test results that can be fed
back to runtest.sh using the `--playlist` argument: coreclrtests.pass.txt,
coreclrtests.fail.txt, coreclrtests.skip.txt.

New script `runtesttilstable.sh` runs `runtest.sh` in a loop, rerunning failing
tests until no tests fail, or a maximum iteration count is reached (default: 4).
This works around existing issues with flaky test failures on Linux/arm32 hardware.

Some extraneous unused jobs have been removed, such as unused `_bld` jobs
and non-PR triggered `innerloop` jobs.

6 years agoAdd /p:UseRazorBuildServer=false to prevent background processes (#17152)
Victor "Nate" Graf [Mon, 26 Mar 2018 19:10:37 +0000 (12:10 -0700)]
Add /p:UseRazorBuildServer=false to prevent background processes (#17152)

6 years agoOptionally support using the system-installed libunwind (#17164)
Omair Majid [Mon, 26 Mar 2018 18:18:01 +0000 (14:18 -0400)]
Optionally support using the system-installed libunwind (#17164)

This allows coreclr to link against a system-installed libunwind instead
of using the copy included with the coreclr sources.

The default is still to use the bundled version, except on macOS, where
we always use the system-installed version.

Many Linux distributions prefer to avoid bundled libraries as much as
possible. For their reasons, please see:

- https://fedoraproject.org/wiki/Bundled_Libraries
- https://wiki.debian.org/UpstreamGuide#No_inclusion_of_third_party_code
- https://wiki.gentoo.org/wiki/Why_not_bundle_dependencies

6 years agoUpdate uses of AsBytes to use MemoryMarshal.AsBytes (dotnet/corefx#28460)
Ahson Khan [Mon, 26 Mar 2018 05:19:11 +0000 (22:19 -0700)]
Update uses of AsBytes to use MemoryMarshal.AsBytes (dotnet/corefx#28460)

* Update uses of AsBytes to use MemoryMarshal.AsBytes

* Cleanup commented out code

* Remove AsBytes from MemoryExtensions Portable

Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
6 years agoMerge various restore tasks into one Sync target
Wes Haggard [Mon, 26 Mar 2018 18:02:53 +0000 (11:02 -0700)]
Merge various restore tasks into one Sync target

There were various restore targets happening independently
when they should all be combined so the sync step can be
independent from the build step. This change merges them
together under the Sync target.

In particular this moves RestoreOptData and RestoreNETCorePlatforms
to be part of the sync step instead of being individually ran.

Pass BuildType to sync commands so optdata gets restored correctly

6 years agoFix funclet unwinding on x86 Linux (#17144)
Igor Kulaychuk [Mon, 26 Mar 2018 17:58:16 +0000 (20:58 +0300)]
Fix funclet unwinding on x86 Linux (#17144)

6 years agoJitBench scenarios fix (#17154)
Adam Sitnik [Mon, 26 Mar 2018 17:49:43 +0000 (19:49 +0200)]
JitBench scenarios fix (#17154)

* each web app should use a separate directory to avoid conflicts + dead code removal

* update the framework package version to get scenarios benchmarks working

6 years agoMerge pull request #17151 from jashook/disable_armlb_windows_jobs
Jarret Shook [Mon, 26 Mar 2018 15:52:11 +0000 (08:52 -0700)]
Merge pull request #17151 from jashook/disable_armlb_windows_jobs

Disable armlb windows jobs

6 years ago[Arm64] Remove C++ stubs obscurring assembly versions (#17172)
Steve MacLean [Mon, 26 Mar 2018 13:02:19 +0000 (09:02 -0400)]
[Arm64] Remove C++ stubs obscurring assembly versions (#17172)

6 years agoDon't require all-user permissions on the temp directory for named mutexes on Unix...
Koundinya Veluri [Mon, 26 Mar 2018 11:06:55 +0000 (04:06 -0700)]
Don't require all-user permissions on the temp directory for named mutexes on Unix under docker (#17206)

Avoids the need for a workaround for one of the issues seen in https://github.com/dotnet/coreclr/issues/17098

6 years agobuild-test.sh: support Clang v4.0 to v6.0, fix always false logic condition preventin...
Jacek Blaszczynski [Mon, 26 Mar 2018 08:51:00 +0000 (10:51 +0200)]
build-test.sh: support Clang v4.0 to v6.0, fix always false logic condition preventing tests build (#17025)

6 years agoVectorize Span.IndexOf for T = char, similar to T = byte. (#28464) (#17218)
dotnet bot [Mon, 26 Mar 2018 07:58:25 +0000 (00:58 -0700)]
Vectorize Span.IndexOf for T = char, similar to T = byte. (#28464) (#17218)

Signed-off-by: dotnet-bot-corefx-mirror <dotnet-bot@microsoft.com>
6 years agoFixed a few typos (#17217)
Phil Garcia [Mon, 26 Mar 2018 06:14:00 +0000 (23:14 -0700)]
Fixed a few typos (#17217)

6 years agoUpdate CoreFx to preview3-26326-01 (#17216)
dotnet-maestro-bot [Mon, 26 Mar 2018 05:20:47 +0000 (00:20 -0500)]
Update CoreFx to preview3-26326-01 (#17216)

6 years agoFixed a few typos (#17215)
Phil Garcia [Mon, 26 Mar 2018 04:18:46 +0000 (21:18 -0700)]
Fixed a few typos (#17215)

* Fixed a few typos

* Fixed a few typos

6 years agoUpdate use of AsBytes in perf tests to use MemoryMarshal.AsBytes. (#17214)
Ahson Khan [Mon, 26 Mar 2018 00:26:12 +0000 (17:26 -0700)]
Update use of AsBytes in perf tests to use MemoryMarshal.AsBytes. (#17214)