Konstantin Baladurin [Fri, 30 Mar 2018 07:18:04 +0000 (10:18 +0300)]
PEImageLayout: clear instruction cache after relocations
It fixes crashes on arm when using AOT images.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4a2a446bce2035ea477de234fb24c37e7f134616
Eric StJohn [Sat, 31 Mar 2018 01:37:06 +0000 (18:37 -0700)]
Fix ilasm COR header (dotnet/coreclr#17357)
Ilasm was emitting the wrong metadata version in the COR header.
This created a difference when examining the metadata diff between
desktop and core.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2023be14efa54af8b339d36499018a8743b32a29
Brian Robbins [Sat, 31 Mar 2018 00:59:47 +0000 (17:59 -0700)]
Only allow the rundown thread to write events during rundown to avoid corruption of the trace file. (dotnet/coreclr#17358)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fadd4ae67860bed49d1eeb2822ee2d1a876649ab
sergey ignatov [Sat, 31 Mar 2018 00:27:26 +0000 (03:27 +0300)]
[arm32] Fixed RBM_PROFILER_* (dotnet/coreclr#17291)
* [arm32] Fixed RBM_PROFILER_*
* Changed trash registers to RBM_NONE
Commit migrated from https://github.com/dotnet/coreclr/commit/
cc76b83760b7da6f9285795e42675c547f5491b0
Jan Vorlicek [Fri, 30 Mar 2018 23:46:03 +0000 (01:46 +0200)]
Fix remote unwind (dotnet/coreclr#17351)
The change that removed dependency on the external libunwind has broken
remote unwinding. I have not realized that the unw_create_addr_space
and other remote unwinding functions are just dummies.
This change adds the remote unwind related sources to the libunwind
compilation, enables remote unwinding support in the remote-unwind.cpp
and also does some magic in the CMakeLists.txt to fix issues caused
by the fact that the local and remote unwinding code was not expected
to be compiled into the same binary. There was one general and one
arm related function whose names needed to be different for local and
remote unwind code. And there was one function that was the same for
both local and remote case and so I had to ensure that it gets compiled
in just once.
Fortunately, all of these could still be achieved without changing the
libunwind sources.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9b2659ceb6fcaf84cee751ab1ddb32999b667322
Sergey Andreenko [Fri, 30 Mar 2018 23:14:25 +0000 (16:14 -0700)]
replace unreached with assert(false) (dotnet/coreclr#17359)
Commit migrated from https://github.com/dotnet/coreclr/commit/
369bda26c29e1154ee8180b68164daec331a2a36
Sergey Andreenko [Fri, 30 Mar 2018 00:11:02 +0000 (17:11 -0700)]
add an additional assert for the future
Commit migrated from https://github.com/dotnet/coreclr/commit/
22ce24ec7f1ea042c56a6531489def81c6fd7b02
Sergey Andreenko [Thu, 29 Mar 2018 23:53:00 +0000 (16:53 -0700)]
fix the bug
Commit migrated from https://github.com/dotnet/coreclr/commit/
f6b82fea76dfaa5bda07968e3feca2ee26d42180
Sergey Andreenko [Thu, 29 Mar 2018 23:33:52 +0000 (16:33 -0700)]
add repro
Commit migrated from https://github.com/dotnet/coreclr/commit/
8e9c59de597ac0d6106739c44fa3dbebfc99e2db
Sergey Andreenko [Thu, 29 Mar 2018 22:17:06 +0000 (15:17 -0700)]
fix ifdefs comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
cf1d6e483f4d045c51f05ca8f7d8268b018d326b
Carol Eidt [Fri, 30 Mar 2018 18:36:04 +0000 (11:36 -0700)]
Merge pull request dotnet/coreclr#17314 from fiigii/fixgctests
Fix GCStress failures from hardware intrinsic tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
17de92ef10d5a56db312fd368671912e614741a6
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 (dotnet/coreclr#17344)
Commit migrated from https://github.com/dotnet/coreclr/commit/
cce06fbc204aa13ab65b77ccd878d7d851a697d1
Ahson Khan [Fri, 30 Mar 2018 15:27:25 +0000 (08:27 -0700)]
Change OwnedMemory to MemoryManager and add an IMemoryOwner. (dotnet/coreclr#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()
Commit migrated from https://github.com/dotnet/coreclr/commit/
a33de3cf5e1ba243b9188fd6a1222b880dad3924
dotnet-maestro-bot [Fri, 30 Mar 2018 07:53:45 +0000 (02:53 -0500)]
Update CoreClr to preview3-26330-01 (dotnet/coreclr#17328)
Commit migrated from https://github.com/dotnet/coreclr/commit/
59ff25b3f2438ff4dcad13876e73504b34fa2f16
Wes Haggard [Thu, 29 Mar 2018 23:33:04 +0000 (16:33 -0700)]
Merge pull request dotnet/coreclr#17327 from weshaggard/FixIdentityPackageBuild
Fix identity package filtering
Commit migrated from https://github.com/dotnet/coreclr/commit/
2c155d1f01d0a379157913989f2005eebd184c96
Fei Peng [Thu, 29 Mar 2018 22:39:04 +0000 (15:39 -0700)]
Fix GCStress failures
Commit migrated from https://github.com/dotnet/coreclr/commit/
10f51a06623fb11f1760c8b2aeea196e137deea0
Bruce Forstall [Thu, 29 Mar 2018 22:29:07 +0000 (15:29 -0700)]
Merge pull request dotnet/coreclr#17322 from BruceForstall/FixTestBuild
Add back hosting to split builds
Commit migrated from https://github.com/dotnet/coreclr/commit/
d504e3a5cc6905c4639b8df08f5638b3fed5a9e1
Carol Eidt [Thu, 29 Mar 2018 21:57:03 +0000 (14:57 -0700)]
Merge pull request dotnet/coreclr#17211 from mikedn/dyn-hwinfo
Remove HWIntrinsicFlag bitwise OR operator
Commit migrated from https://github.com/dotnet/coreclr/commit/
9b3d9ddabe7ce6a1994cd4c9ae60ba7dcf0cbcdc
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
01e6de332f7468e5a204945e0ded654a91e66d65
Luqun Lou [Thu, 29 Mar 2018 20:59:18 +0000 (13:59 -0700)]
Fix for incorrectly handle invalid UTF8 characters issue (dotnet/coreclr#17302)
There are some behavior difference between C/C++ UTF8 encoder/decoder and Encoding.UTF8 as mentioned by dotnet/coreclr#16786.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1b0e8e3f76530efb68e40c0c47d1c568b4029f65
Daniel Harvey [Thu, 29 Mar 2018 18:59:19 +0000 (11:59 -0700)]
Fix AssemblyLoadContext.Unloading and ProcessExit for Windows Docker containers (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
54c2b5bcaccefb4259aba2d0aca8cef89b6b5b6b
Divino César [Thu, 29 Mar 2018 18:01:36 +0000 (11:01 -0700)]
Merge pull request dotnet/coreclr#17304 from dotnet/RemovingObsoleteCleanupBuilds
This BuildTask has been deprecated in favor of maintenance jobs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c504be9158c321cd8c106c569ab76863e95135e0
dotnet-maestro-bot [Thu, 29 Mar 2018 17:32:32 +0000 (12:32 -0500)]
Update CoreFx to preview3-26329-05 (dotnet/coreclr#17318)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8519f427898ff98cde9cc2fa486aa598d2c3dc66
Bruce Forstall [Thu, 29 Mar 2018 17:20:23 +0000 (10:20 -0700)]
Add back hosting to split builds
Commit migrated from https://github.com/dotnet/coreclr/commit/
2902d90c0518a93f645677f870e31037c16f082a
Ben Adams [Thu, 29 Mar 2018 17:06:42 +0000 (18:06 +0100)]
Dict cache default comparer for object types (dotnet/coreclr#17285)
* Dict cache default comparer for object types
* Improves
* Fix EventRegistrationToken Equals
Commit migrated from https://github.com/dotnet/coreclr/commit/
f427718793293d8b771aa2e66c60015f85e9bde2
Maryam Ariyan [Thu, 29 Mar 2018 16:43:58 +0000 (09:43 -0700)]
StringBuilder.Equals: value to span (dotnet/coreclr#17311)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2250e2ae2d733934b3aba0a18706a546f9c5fac3
Sergey Andreenko [Thu, 29 Mar 2018 05:44:32 +0000 (22:44 -0700)]
change arm maxIter to 20 (dotnet/coreclr#17308)
Commit migrated from https://github.com/dotnet/coreclr/commit/
1265ced3ee70de32246055a3915410583d338b67
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 (dotnet/coreclr#17309)
Commit migrated from https://github.com/dotnet/coreclr/commit/
939469f54d2149424183b0d0877105da49f33053
Steve MacLean [Thu, 29 Mar 2018 00:40:11 +0000 (20:40 -0400)]
[Arm64] Correct cross/arm64/tryrun.cmake (dotnet/coreclr#17293)
Commit migrated from https://github.com/dotnet/coreclr/commit/
757cb82a5800fd043713d7ee40feba1dd2c89793
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 (dotnet/coreclr#17299)
Commit migrated from https://github.com/dotnet/coreclr/commit/
74d3824f74414a76db17c563a3c6e9e9dcf0d00d
Wes Haggard [Wed, 28 Mar 2018 23:55:49 +0000 (16:55 -0700)]
Merge pull request dotnet/coreclr#17280 from weshaggard/SyncInitToolsWithSourceBuild
Sync init-tools scripts with what is in source-build
Commit migrated from https://github.com/dotnet/coreclr/commit/
c6b7100a0758a215bdbc5b8e579801ab2faed18e
Ahson Khan [Wed, 28 Mar 2018 23:33:56 +0000 (16:33 -0700)]
Use ROSpan.IndexOf as the workhorse for string.IndexOf (dotnet/coreclr#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
Commit migrated from https://github.com/dotnet/coreclr/commit/
30a49486711b012154c045ad02b3c0338b53192b
Ben Adams [Wed, 28 Mar 2018 23:11:38 +0000 (00:11 +0100)]
Fix Dictionary CopyTo regression (dotnet/coreclr#17300)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fe867dd0a03116886e55da6b2964046cd9fae826
Cesar Soares Lucas [Wed, 28 Mar 2018 21:44:57 +0000 (14:44 -0700)]
This BuildTask has been deprecated in favor of maintenance jobs.
Commit migrated from https://github.com/dotnet/coreclr/commit/
22f9eca4365a06bd5f4b309316d6789123479a29
Bruce Forstall [Wed, 28 Mar 2018 21:07:26 +0000 (14:07 -0700)]
Merge pull request dotnet/coreclr#17303 from BruceForstall/EnableUbuntuArmGCStressJobsMaster
Enable Linux arm32 GCStress jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
41c0e4f260e238f232acc7895e7e628947cfe131
Noah Falk [Wed, 28 Mar 2018 20:56:24 +0000 (13:56 -0700)]
Removing 'EXPERIMENTAL' from tiered compilation env var (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9c32fda3feb190f60934ffc0de7a328e0506e367
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b9ecdcd30d5679056dcd1d74045d3b10c253e02d
Russ Keldorph [Wed, 28 Mar 2018 19:34:59 +0000 (12:34 -0700)]
Unique-ify name of TestList.json to avoid collisions
Fixes dotnet/coreclr#16840
Commit migrated from https://github.com/dotnet/coreclr/commit/
a79ca6566567188a408cfcf4859286fc87e5c449
Bruce Forstall [Wed, 28 Mar 2018 19:50:44 +0000 (12:50 -0700)]
Merge pull request dotnet/coreclr#17090 from debayang/corefx_tests
Fix run-corefx-tests.py for Arm64 Linux cross build
Commit migrated from https://github.com/dotnet/coreclr/commit/
c574662c3338a3bee8da11acf6c5f11565cad048
Jan Vorlicek [Wed, 28 Mar 2018 18:16:57 +0000 (20:16 +0200)]
Fix some more unwinding in R2R ARM (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e8eb5c6d22948bbf744f30f0a640dfeca3386d14
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 (dotnet/coreclr#17288)
* 'value' to 'other': bool System.IEquatable<System.UIntPtr>.Equals(UIntPtr value);
* 'value' to 'other': bool System.IEquatable<System.IntPtr>.Equals(IntPtr value);
Commit migrated from https://github.com/dotnet/coreclr/commit/
104ec5550085d682bd969e20e1df8ae2422ba7ac
Wes Haggard [Tue, 27 Mar 2018 23:56:11 +0000 (16:56 -0700)]
Sync init-tools scripts with what is in source-build
Commit migrated from https://github.com/dotnet/coreclr/commit/
e1233230a1b756babe568a58755407188e78df5e
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 (dotnet/coreclr#17248)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c8d1b6f2af245ee4e93fc99ce912ede4371412dc
Carol Eidt [Wed, 28 Mar 2018 18:01:03 +0000 (11:01 -0700)]
Merge pull request dotnet/coreclr#17126 from CarolEidt/Fix545500
ARM: Fix reg resolution for doubles
Commit migrated from https://github.com/dotnet/coreclr/commit/
393bb419bee42f000499b0e66f250f9cc42030a3
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
Commit migrated from https://github.com/dotnet/coreclr/commit/
4585d5ab0cb0cda434be6cfcb89bd1252d2703b3
Jan Kotas [Wed, 28 Mar 2018 14:53:49 +0000 (07:53 -0700)]
Root methods used by debugger for IL linker (dotnet/coreclr#17287)
Commit migrated from https://github.com/dotnet/coreclr/commit/
db3bb4314c95d4c18f234267c113d461aaa88f70
Fei Peng [Wed, 28 Mar 2018 14:32:28 +0000 (07:32 -0700)]
Remove tests of unimplemented ISAs (dotnet/coreclr#17286)
Commit migrated from https://github.com/dotnet/coreclr/commit/
281a9f2b7805dc4df321e480ed9f48141d21dfec
David Mason [Wed, 28 Mar 2018 02:21:17 +0000 (19:21 -0700)]
fix for logalways eventing level (dotnet/coreclr#17277)
Commit migrated from https://github.com/dotnet/coreclr/commit/
27a710b82880f67e8fe1bf29babee9243c7c9c2e
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f891887a9e7207e0e9ecab6255baa9393d82ebf2
Jan Vorlicek [Wed, 28 Mar 2018 00:41:47 +0000 (02:41 +0200)]
Fix DelayLoad_MethodCall unwinding (dotnet/coreclr#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
Commit migrated from https://github.com/dotnet/coreclr/commit/
04828cfa37ac56d0244411becec9e32d21b4bd68
Wes Haggard [Wed, 28 Mar 2018 00:18:33 +0000 (17:18 -0700)]
Merge pull request dotnet/coreclr#17161 from dotnetrt/testbuild
Improve Windows test build performance by building projects in groups - 4x less memory 326% faster build.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1cb37045f0b9039f41b56e69e406540063c4b2bf
Ahson Khan [Wed, 28 Mar 2018 00:05:33 +0000 (17:05 -0700)]
Adding Memory.Pin() to eventually replace Memory.Retain(bool) (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0578152ed085597fd5e7f35e63ac2b9b4a5a7f28
Jan Vorlicek [Tue, 27 Mar 2018 23:31:20 +0000 (01:31 +0200)]
Fix handling of FCalls in ExternalMethodFixupWorker (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
65bf37cbbb7290c9f52402fa380b1d3a8dae6b83
Stephen Toub [Tue, 27 Mar 2018 22:11:15 +0000 (15:11 -0700)]
Fix regression in StreamWriter.Write perf for small inputs (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
289ebe644ef88aa04b2bf509833689b2bf01485a
Carol Eidt [Tue, 27 Mar 2018 22:10:59 +0000 (15:10 -0700)]
Fix comment
Commit migrated from https://github.com/dotnet/coreclr/commit/
365a862b14bdc90355f885434fdc2f94a31c1de6
Sung Yoon Whang [Tue, 27 Mar 2018 21:42:12 +0000 (14:42 -0700)]
Failfast windows event log (dotnet/coreclr#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
Commit migrated from https://github.com/dotnet/coreclr/commit/
550f12783c9b4bbad82c86552c44d1ed29d75bfd
Steve MacLean [Tue, 27 Mar 2018 21:32:46 +0000 (17:32 -0400)]
[Arm64] Fix forcerelocs (dotnet/coreclr#17264)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ba10a4268bfe9ac06c8db1a9a82fdd5c369c5786
Luqun Lou [Tue, 27 Mar 2018 21:20:09 +0000 (14:20 -0700)]
Enable reflection load ComImport assembly and Type.IsComObjectType (dotnet/coreclr#16943)
* Enable reflection load ComImport assembly and Type.IsComObjectType
* Update Enable reflection load ComImport assembly
Commit migrated from https://github.com/dotnet/coreclr/commit/
d0833f90ed516b08871635a05c1d5657379b8053
Carol Eidt [Tue, 27 Mar 2018 20:54:11 +0000 (13:54 -0700)]
Fix comment in test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0c7e15cfed9d014617892ebe2f43d0aac4994469
Michelle McDaniel [Tue, 27 Mar 2018 20:23:45 +0000 (13:23 -0700)]
Turn off PGO unprofiled warning on Linux (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bfa1881ab5b65175f97119b74ef127e08de882e1
Maoni Stephens [Tue, 27 Mar 2018 20:04:26 +0000 (13:04 -0700)]
restrict memory limit by taking VM into consideration (dotnet/coreclr#17177)
Commit migrated from https://github.com/dotnet/coreclr/commit/
ef88a92215a8f90fe0bd8b0327c16bb889902105
Carol Eidt [Tue, 27 Mar 2018 19:35:19 +0000 (12:35 -0700)]
Merge pull request dotnet/coreclr#17233 from fiigii/portvectortests
Port VectorReturn test to Vector128/256<T>
Commit migrated from https://github.com/dotnet/coreclr/commit/
dff4f7181595e9d4a2dd76971a4465cb8db0eb58
Bruce Forstall [Tue, 27 Mar 2018 18:48:06 +0000 (11:48 -0700)]
Merge pull request dotnet/coreclr#17255 from BruceForstall/UpdateArmWhitelist
Update arm64 whitelist
Commit migrated from https://github.com/dotnet/coreclr/commit/
deae9410131a20a7a5a11d8fac4b24fd96a23824
Bruce Forstall [Tue, 27 Mar 2018 18:47:24 +0000 (11:47 -0700)]
Merge pull request dotnet/coreclr#17258 from dotnet/dev/unix_test_workflow
Update arm Ubuntu cross build docker image
Commit migrated from https://github.com/dotnet/coreclr/commit/
12224436164b94f435aa8bbe5cd6dbd919efa94f
Jan Kotas [Tue, 27 Mar 2018 17:51:22 +0000 (10:51 -0700)]
Cleanup InternalsVisibleTo (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4b95b41d93e7b267c972fe60e0fe9f2068cbeb1c
Carol Eidt [Tue, 27 Mar 2018 16:28:57 +0000 (09:28 -0700)]
Merge pull request dotnet/coreclr#17246 from debayang/clr_jitstress_arm64
[ARM64] Fix UnspillReg instruction generation
Commit migrated from https://github.com/dotnet/coreclr/commit/
f56f7a50d60dd3ca2d8687afc492566494e6df41
Bruce Forstall [Tue, 27 Mar 2018 16:06:14 +0000 (09:06 -0700)]
Update arm64 whitelist
Commit migrated from https://github.com/dotnet/coreclr/commit/
c409899894dc50da054ba2774e328f5c9bd2b20b
Steve MacLean [Tue, 27 Mar 2018 14:20:19 +0000 (10:20 -0400)]
[Arm64] reserve for jump stubs (dotnet/coreclr#17244)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4fca952dbf71f4aad878033d6a74a398ad676e78
Jan Kotas [Tue, 27 Mar 2018 14:06:36 +0000 (07:06 -0700)]
Move String.Comparison.cs to shared CoreLib partition (dotnet/coreclr#17247)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c0fbb148fbc435122f1d439658aa1b9a7ee3f333
Jan Vorlicek [Tue, 27 Mar 2018 13:27:01 +0000 (15:27 +0200)]
Fix build without libunwind installed (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6ecb1ac550ec1876094264cdbdd629c1a832ebee
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 (dotnet/coreclr#17239)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e9206ca403d3c4a86c8611b75dca57655e365ea
Jan Kotas [Tue, 27 Mar 2018 07:31:55 +0000 (00:31 -0700)]
Delete MemoryExtensions.AsBytes (dotnet/coreclr#17245)
Moved to MemoryMarshal
Commit migrated from https://github.com/dotnet/coreclr/commit/
463e296f9dd7cad2f1dc76fa4572e83af3cc0d22
Jan Kotas [Tue, 27 Mar 2018 07:27:21 +0000 (00:27 -0700)]
Vectorized SequenceCompareTo for Span<char> (dotnet/coreclr#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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9e078ffab41899650419a5928832a4302b6881e0
Bruce Forstall [Tue, 27 Mar 2018 07:09:33 +0000 (00:09 -0700)]
Merge pull request dotnet/coreclr#17240 from BruceForstall/RemoveTizenPRTrigger
Remove Tizen armel automatic PR triggered jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
6b3d2dd677f5637e89153e8277184eca93152338
Debayan Ghosh [Tue, 27 Mar 2018 06:00:19 +0000 (11:30 +0530)]
[ARM64] Fix UnspillReg instruction generation
Fixes the runtime issues (dotnet/coreclr#16359,dotnet/coreclr#15389) seen with COMPlus_JitStressRegs=0x2* on ARM64.
Commit migrated from https://github.com/dotnet/coreclr/commit/
399df33c3050f5636795007216f8bff0ee502a1c
Maryam Ariyan [Tue, 27 Mar 2018 04:56:35 +0000 (21:56 -0700)]
New chunk should be equal/larger than the one it replaces (dotnet/coreclr#17219)
* The new chunk should be equal or larger than the one it is replacing. Fixes dotnet/coreclr#17205
* Adding .exe.stackdump to .gitignore
Commit migrated from https://github.com/dotnet/coreclr/commit/
24b9b0dd4de34628a815ef5f08a6e23a5416fa27
Jacek Blaszczynski [Thu, 22 Mar 2018 21:17:35 +0000 (22:17 +0100)]
Enable partially implemented Intel HW intrinsics ISAs - CoreCLR part of changes
Commit migrated from https://github.com/dotnet/coreclr/commit/
37bd5d89ce760b412026296bd5a77495a1f80734
Wes Haggard [Tue, 27 Mar 2018 00:28:31 +0000 (17:28 -0700)]
Merge pull request dotnet/coreclr#17226 from weshaggard/MergeRestoreTargets
Merge various restore tasks into one Sync target
Commit migrated from https://github.com/dotnet/coreclr/commit/
13dfb52d269fb94fd7e0dd13b42cb3ab20ed47e9
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
462e2b59c67b0b6d25985a7284616539f348cbfc
Fei Peng [Tue, 27 Mar 2018 00:09:22 +0000 (17:09 -0700)]
Port VectorReturn test to Vector128/256<T>
Commit migrated from https://github.com/dotnet/coreclr/commit/
c3e5ff2ab9d94c90b0c2d7effbd5ed573f819a00
mikedn [Mon, 26 Mar 2018 23:41:46 +0000 (02:41 +0300)]
Remove a few bogus reinterpret_cast(nullptr_t) (dotnet/coreclr#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...
Commit migrated from https://github.com/dotnet/coreclr/commit/
b6fa213027758ae939af85b1daddf036265b660b
Bruce Forstall [Mon, 26 Mar 2018 23:36:58 +0000 (16:36 -0700)]
Merge pull request dotnet/coreclr#17236 from BruceForstall/UpdateArmDockerImage
Update arm Ubuntu cross build docker image
Commit migrated from https://github.com/dotnet/coreclr/commit/
71cfc65d6252dff6580f63def491009b4e48d800
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
Commit migrated from https://github.com/dotnet/coreclr/commit/
72b3743de6f3e32e48ffdab41a398ad267a0e6d0
Carol Eidt [Mon, 26 Mar 2018 23:25:54 +0000 (16:25 -0700)]
Merge pull request dotnet/coreclr#15301 from mikedn/cast-un
Fix inconsistent handling of zero extending casts
Commit migrated from https://github.com/dotnet/coreclr/commit/
55f162d21d396a7741a91f00568d48a2f3fab603
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee5c25a050fa0a93d38614e24281553071845a06
Andy Ayers [Mon, 26 Mar 2018 22:11:39 +0000 (15:11 -0700)]
Use movsdsse2 for HW intrinsic SSE2_ConvertToDouble (dotnet/coreclr#17110)
Instead of movsd, which is for GPRs. Fixes one of the stress failures
seen in dotnet/coreclr#17027.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c7229d684b5cc27e0f4143635322a2406b441f9d
Bruce Forstall [Mon, 26 Mar 2018 22:05:32 +0000 (15:05 -0700)]
Merge pull request dotnet/coreclr#17018 from dotnet/dev/unix_test_workflow
Enable arm32 Ubuntu testing in CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
2d8561255fc29131abd063b400e249c77771d4bb
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 (dotnet/coreclr#17232)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3c3596e1b31afd8a5231209d804c77315b3abe1d
Carol Eidt [Mon, 26 Mar 2018 20:33:28 +0000 (13:33 -0700)]
Fix condition
Commit migrated from https://github.com/dotnet/coreclr/commit/
26c5dcb837fc7b5f629c7b34be5e127d1bac1539
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 (dotnet/coreclr#17142)
Commit migrated from https://github.com/dotnet/coreclr/commit/
fa15aac7fe11d951c4b85dcb9a23285007e0c620
dotnet-maestro-bot [Mon, 26 Mar 2018 20:00:05 +0000 (15:00 -0500)]
Update CoreFx to preview3-26326-03 (dotnet/coreclr#17222)
Commit migrated from https://github.com/dotnet/coreclr/commit/
091462cf01f8da3ffdd9e3bf9935f81aa621ab77
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bc559a0dc36a1f152aa0e576ad80165585c148f1
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.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5952ead7831bf0a3c29424e927c58bfbb7d1380f
Victor "Nate" Graf [Mon, 26 Mar 2018 19:10:37 +0000 (12:10 -0700)]
Add /p:UseRazorBuildServer=false to prevent background processes (dotnet/coreclr#17152)
Commit migrated from https://github.com/dotnet/coreclr/commit/
01835496c78c66e46c0770b5321c5f814168c58f
Omair Majid [Mon, 26 Mar 2018 18:18:01 +0000 (14:18 -0400)]
Optionally support using the system-installed libunwind (dotnet/coreclr#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
Commit migrated from https://github.com/dotnet/coreclr/commit/
77dd2123262e54f42c319ad024db1842f6d537d4
Ahson Khan [Mon, 26 Mar 2018 05:19:11 +0000 (22:19 -0700)]
Update uses of AsBytes to use MemoryMarshal.AsBytes (dotnet/corefxdotnet/coreclr#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>
Commit migrated from https://github.com/dotnet/coreclr/commit/
091466a51f65d7b8df70ef49cd66f2ceba882c04
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
Commit migrated from https://github.com/dotnet/coreclr/commit/
af6715e91b241bfe09bfde3842f325429a35913a
Igor Kulaychuk [Mon, 26 Mar 2018 17:58:16 +0000 (20:58 +0300)]
Fix funclet unwinding on x86 Linux (dotnet/coreclr#17144)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3ab87c22c28378f89d9b31d1f8ff1d2ecfae8291
Adam Sitnik [Mon, 26 Mar 2018 17:49:43 +0000 (19:49 +0200)]
JitBench scenarios fix (dotnet/coreclr#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
Commit migrated from https://github.com/dotnet/coreclr/commit/
67deb5a2e8c2a985f7d0c7554384355fc120a489
Jarret Shook [Mon, 26 Mar 2018 15:52:11 +0000 (08:52 -0700)]
Merge pull request dotnet/coreclr#17151 from jashook/disable_armlb_windows_jobs
Disable armlb windows jobs
Commit migrated from https://github.com/dotnet/coreclr/commit/
b5f4d2df2e087401f2c3aab2c37021e326707915