Egor Chesakov [Fri, 14 Sep 2018 22:41:30 +0000 (15:41 -0700)]
Expand CrossGen Comparison script to able to run on DotNetSdk archive (dotnet/coreclr#19929)
* Set platform_assemblies_paths_sep based on OS
* Add crossgen_dotnet_sdk command in tests/scripts/crossgen_comparison.py
* Add example for running crossgen_dotnet_sdk command
* Add OutputFileSizeInBytes property
* Improve crossgen_comparison "compare" command reporting
Commit migrated from https://github.com/dotnet/coreclr/commit/
7dcf572e8ae8de4a96a57d0cda62a173012d94eb
Brian Sullivan [Fri, 14 Sep 2018 20:01:37 +0000 (13:01 -0700)]
Merge pull request dotnet/coreclr#19845 from briansull/vn-enhancements
Value Number Enhancements:
Commit migrated from https://github.com/dotnet/coreclr/commit/
e2ef2edb1a774727a56fb7b3d8983b122b53228a
Clinton Ingram [Fri, 14 Sep 2018 17:47:06 +0000 (10:47 -0700)]
don't force float->double->int cast for x86 (dotnet/coreclr#19833)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b3bb78aaa846bb641a5c4728e9d89ffa21335199
Vitek Karas [Fri, 14 Sep 2018 14:40:40 +0000 (07:40 -0700)]
Merge pull request dotnet/coreclr#19951 from vitek-karas/MoveAssertionsToCommon
Move Assert class from Interop into the CoreCLRTestLibrary
Commit migrated from https://github.com/dotnet/coreclr/commit/
2aa9fb5d60c13dfc3b69089351a5362dbe13f8d6
Joseph Musser [Fri, 14 Sep 2018 11:36:07 +0000 (07:36 -0400)]
Fixed TimeoutHelper typos (dotnet/coreclr#19956)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e67e9843af5522ac6c5f98dc1f0354bb21da40e4
Joseph Musser [Fri, 14 Sep 2018 11:35:26 +0000 (07:35 -0400)]
Fixed typo ‘defualt’ (dotnet/coreclr#19955)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2742d900bff9c706b02787792c119b88d1774530
Carol Eidt [Fri, 14 Sep 2018 00:17:14 +0000 (17:17 -0700)]
Merge pull request dotnet/coreclr#19745 from CarolEidt/Fix19448
Arm: Correctly handle multi-reg COPY
Commit migrated from https://github.com/dotnet/coreclr/commit/
429d1c86b6cbdab1bd220276d6baee6e47cfd64f
Egor Chesakov [Thu, 13 Sep 2018 23:44:48 +0000 (16:44 -0700)]
Merge pull request dotnet/coreclr#19945 from echesakovMSFT/EnableCrossBitnessCrossGenTesting
Run both Hostx86/arm and Hostx64/arm CrossGens in CI
Commit migrated from https://github.com/dotnet/coreclr/commit/
53e27d05b0d91d3ec00e7c1baa8e5c513a3879fa
Aaron Robinson [Thu, 13 Sep 2018 23:23:12 +0000 (16:23 -0700)]
Dev16 removed the static_cast<> in a std::basic_string constructor so need to explicit convert string to wstring to avoid warning. (dotnet/coreclr#19947)
Commit migrated from https://github.com/dotnet/coreclr/commit/
30e66e40b712fb11fcbbc60ecc041e2f02484796
mikedn [Thu, 13 Sep 2018 23:00:10 +0000 (02:00 +0300)]
Replace fgMarkAddressExposedLocals (dotnet/coreclr#19621)
* Add test for 16472
* Replace fgMarkAddressExposedLocals
* CR: Move fgAddFieldSeqForZeroOffset to improve diff
* CR: Improve comments and various other small issues
* CR: Delete gtCheckQuirkAddrExposedLclVar
* Revert "disable tests\src\JIT\Methodical\fp\exgen\10w5d_cs_do (dotnet/coreclr#19465)"
This reverts commit dotnet/coreclr@
b0686a29be2eff059f080a66b7aa4febe55a01bc.
Commit migrated from https://github.com/dotnet/coreclr/commit/
091f8cfcdad7dd1df5c8e1d930ba1f4c6541a2fa
Egor Chesakov [Thu, 13 Sep 2018 19:02:38 +0000 (12:02 -0700)]
Run both Hostx86/arm32 and Hostx64/arm32 crossgens in crossgen_comparison scenario
Commit migrated from https://github.com/dotnet/coreclr/commit/
8c33b6452b0db082970ee36014fb34748d2ef2ff
Brian Sullivan [Thu, 13 Sep 2018 22:37:03 +0000 (15:37 -0700)]
whitespace fixes
Commit migrated from https://github.com/dotnet/coreclr/commit/
660242208a3520f785d42dfa76e009933204ddd9
Brian Sullivan [Wed, 5 Sep 2018 22:58:10 +0000 (15:58 -0700)]
Value Number Enhancements:
Revise the exeception gernerating value number functions:
VNF_OverflowEXc, VNF_CastOvf, VNF_ARithmeticExc, VNF_DivideByZeroExc and ConvertOverflowExc
added support methods for VNNormalValue
Extended GetVNGuncForOper to support overflow operations and additional unsigned operations:
And added value number functions for
- unsigned comparisons, unsigned add, sub and mul
- overflow add, sub, mul
New method: VMCheckAscending to validate that exception sets maintain the ascending ordfer property.
New method: VMExcSetIntersection and VMExcIsSubset
Changed the constant folding logic in VNForFunc to avoid folding when the operation will unconditionally throw when folded.
Explicitly specialize some EvalOp<> calls
Added several new method headers comments in ValueNum.cpp
Clear the unsigned flag when bashing nodes into GT_COMMA or GT_NOP nodes
Removed GT_NOP and GT_COMMA cases from GetVNFuncForOper
Added enum VNOperKind
Added support for the unsigned multiply VNFunc used on 32-bit target
Commit migrated from https://github.com/dotnet/coreclr/commit/
a63d721496f4035fc52e54c24d02288a30c04051
Mike McLaughlin [Thu, 13 Sep 2018 22:05:37 +0000 (15:05 -0700)]
Fix xplat debugging perf problem. (dotnet/coreclr#19911)
Issue dotnet/coreclr#18705
Add threadId to DebuggerIPCEvent so we don't need to use the
slow DAC functions (because of extra memory reads) to get it.
Fixed CorDBIPC_BUFFER_SIZE on arm builds.
Commit migrated from https://github.com/dotnet/coreclr/commit/
27decac74572ef7158bceba0b67e343aabc6c8d7
Egor Chesakov [Thu, 13 Sep 2018 22:03:43 +0000 (15:03 -0700)]
Merge pull request dotnet/coreclr#19933 from echesakovMSFT/PublishCrossBitnessCrossGenAsWell
Publish both Hostx86 and Hostx64 arm32 CrossGens on Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
a1900b4efdeec33b381fc8e31df169a4359e0ead
elyoh [Thu, 13 Sep 2018 21:58:27 +0000 (22:58 +0100)]
Update ChineseLunisolarCalendar.cs (dotnet/coreclr#19946)
Corrects an issue with the conversion table for Gregorian to Chinese lunisolar dates.
See: dotnet/coreclr#19480.
Issue: data discrepancy in year 2057, 2089, and 2097.
Table entry for these years have incorrect days per month for some months. See dotnet/coreclr#19480 for full details.
Notes
The DaysPerMonth flag uses the binary literal for ease of readability.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b9d34f6368f9347dbae03f884ea6ba79689a49a1
vitek-karas [Thu, 13 Sep 2018 20:32:32 +0000 (13:32 -0700)]
Move Assert class from Interop into the CoreCLRTestLibrary
Moving the Assert class to the common library so that it can be used
by tests outside of the Interop tree.
Commit migrated from https://github.com/dotnet/coreclr/commit/
109af65c23873c607b1746c3eede5f203eba3dd3
Aditya Mandaleeka [Thu, 13 Sep 2018 19:12:03 +0000 (12:12 -0700)]
Merge pull request dotnet/coreclr#19927 from adityamandaleeka/fix_arm64_emitIns
Fix emitIns_S_S_R_R not to encode SP to ZR before an add may be emitted
Commit migrated from https://github.com/dotnet/coreclr/commit/
41487a9b3b908dd510879b266d72f0d5456d7843
Andrew Au [Thu, 13 Sep 2018 15:19:58 +0000 (08:19 -0700)]
Adding the ARM floating point registers to the cordebug.idl file (dotnet/coreclr#19934)
Commit migrated from https://github.com/dotnet/coreclr/commit/
380d347310c3ccbea12839186fec95c7da48df89
Egor Chesakov [Thu, 13 Sep 2018 03:39:39 +0000 (20:39 -0700)]
Publish Hostx64/arm32 crossgen and libclrjit.so on Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
dd8bb4595b4847ec4a4df37cbf37101032ae80eb
Aaron Robinson [Thu, 13 Sep 2018 02:34:46 +0000 (19:34 -0700)]
Address msbuild issues with cross compiled tests in helix (dotnet/coreclr#19901)
* Address msbuild issues with cross compiled tests in helix
* Fix test warning about duplicate types
Commit migrated from https://github.com/dotnet/coreclr/commit/
5699a504640a322935f7f57f3ea627cee494c804
Aditya Mandaleeka [Wed, 12 Sep 2018 22:20:09 +0000 (15:20 -0700)]
Fix emitIns_S_S_R_R not to encode SP to ZR before an add may be emitted.
Commit migrated from https://github.com/dotnet/coreclr/commit/
5cd89ad6b7051c03babb5892e4a67288ec684a21
Jan Kotas [Wed, 12 Sep 2018 18:17:41 +0000 (11:17 -0700)]
Implement Thread.GetApartmentState/TrySetApartmentState (dotnet/coreclr#6323)
Fixes dotnet/coreclr#5776
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
7b18dcc33400b3e2f314a10228f2520e031ee01b
Jan Kotas [Wed, 12 Sep 2018 15:12:53 +0000 (08:12 -0700)]
Revert changes that are causing buildbreaks of OOB packages
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
72ee1dacaa5ce68546da9fb9365936ab5a8899b6
Carol Eidt [Wed, 29 Aug 2018 21:58:10 +0000 (14:58 -0700)]
Arm: Correctly handle multi-reg COPY
Fix dotnet/coreclr#19448
Commit migrated from https://github.com/dotnet/coreclr/commit/
6d58642cd13e639501fcb3c1289af3ac9cc40c34
Nick Kotov [Wed, 12 Sep 2018 14:14:14 +0000 (17:14 +0300)]
Update AsyncMethodBuilder.cs (dotnet/coreclr#19909)
Changed commentary for range of AsyncCache Tasks with Int32 type.
Commit migrated from https://github.com/dotnet/coreclr/commit/
598fca6348cbedc9cadb92aabf00b0f6f181bf83
Jan Vorlicek [Wed, 12 Sep 2018 11:32:31 +0000 (13:32 +0200)]
Fix GC for collectible classes (dotnet/coreclr#19892)
There is a subtle bug in the GC that causes access violation when a
LoaderAllocator of a collectible class is pushed to the mark stack and
that class also has partial sub-objects. One example is an array of byte
arrays. In that case, the mark stack is supposed to have the reference
to the instance of the class stored right before the related partial
sub-objects references. But due to the bug, the slot where the instance
of the class was expected to be located was not set to anything.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cd1f0d9ad32cacd9d2ac2998f368bc196c40754a
Grant [Wed, 12 Sep 2018 10:19:37 +0000 (03:19 -0700)]
CallSites for MemoryExtensions.Contains (CoreCLR) (dotnet/coreclr#19874)
* Update additional callsites for MemoryExtensions.Contains
* One more callsite
* More callsites
* CR fixes
Commit migrated from https://github.com/dotnet/coreclr/commit/
9d8d00c61a65a413768f47267e119fa2d31beb2e
Sergey Andreenko [Wed, 12 Sep 2018 03:32:35 +0000 (20:32 -0700)]
Fix optimization of CAST(int)(LSH(long)<<CNS_INT 32+ with side effects). (dotnet/coreclr#19899)
* add a repro test
* Fix
Commit migrated from https://github.com/dotnet/coreclr/commit/
a3443a53b4f6f2f50d666116b0281b65b961197a
Jan Kotas [Tue, 11 Sep 2018 06:33:05 +0000 (23:33 -0700)]
Move more registry files to shared partition
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
9de98ef09a8998ba8c1f369c0d8067d5ffe1e0e7
Adam Sitnik [Tue, 11 Sep 2018 14:34:42 +0000 (16:34 +0200)]
Merge pull request dotnet/coreclr#19885 from brianrob/runtimeeventsource_tests
Fix Intermittent RuntimeEventSource Test
Commit migrated from https://github.com/dotnet/coreclr/commit/
b575d73008412ca30bd8099f473d6c6a6cc16dc4
Andy Ayers [Tue, 11 Sep 2018 07:09:48 +0000 (00:09 -0700)]
JIT: use bit vector for identifying jump targets (dotnet/coreclr#19884)
When doing the initial IL scan to locate block boundaries the jit really
only needs to track one bit per offset.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dfdf275ff7fd6cd701c26e8c50838abcaae024ae
Egor Chesakov [Tue, 11 Sep 2018 05:44:29 +0000 (22:44 -0700)]
Merge pull request dotnet/coreclr#19867 from echesakovMSFT/BuildCrossBitnessCrossGenAsWell
Build both Hostx86 and Hostx64 arm32 CrossGens on Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
1938350dbf017b9de5b887e2efd8d3fd1795e3eb
Jan Kotas [Tue, 11 Sep 2018 05:39:45 +0000 (22:39 -0700)]
Move registry interop to shared CoreLib partition (dotnet/coreclr#19886)
Commit migrated from https://github.com/dotnet/coreclr/commit/
745185fd8c8994984e987bf0aa3829f61722d300
Aaron Robinson [Tue, 11 Sep 2018 00:24:49 +0000 (17:24 -0700)]
Basic implementation for testing of COM activation of a .NET class (dotnet/coreclr#19760)
* Rough outline of managed implementation for COM activation in SPCL
* Add property for finding interop common
Add property to exclude default assertion file
Display exe ExeLaunchProgram class is going to launch
* Add a native client for the NETServer
Consume the ExeLauncherProgram.cs file as a wrapper for the native test
* Update COM Server contracts to use 'int' instead of 'long'
* Complete symmetric testing coverage for .NET server and native client.
* Block EXE launch from running on non-Windows machines
* Disable COM testing in helix since it has issues on Windows Nano and there
is no way to determine that is the platform.
* Update tests based on CLSID mapping manifest approach.
Commit migrated from https://github.com/dotnet/coreclr/commit/
fc3378095f04946815e627a5ab70b528a898abe6
Carol Eidt [Mon, 10 Sep 2018 23:44:26 +0000 (16:44 -0700)]
Merge pull request dotnet/coreclr#19276 from CarolEidt/FixUxArgSize
Fix Unix preallocatedArgCount
Commit migrated from https://github.com/dotnet/coreclr/commit/
efd7220234aacef4af25a747797984d43ba5b961
Brian Robbins [Mon, 10 Sep 2018 22:50:27 +0000 (15:50 -0700)]
Fix intermitted RuntimeEventSource test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
bb2d7a396fddb0c1e1e2bd6e6a7e0bf70ba96f4f
Egor Chesakov [Fri, 7 Sep 2018 19:07:17 +0000 (12:07 -0700)]
Build both Hostx86 and Hostx64 arm32 crossgens. Continue to use Hostx86 crossgen to crossgen System.Private.CoreLib.dll
Commit migrated from https://github.com/dotnet/coreclr/commit/
596ad8f494deb14392d7be9bfbc1e3815f422740
Egor Chesakov [Tue, 21 Aug 2018 18:55:58 +0000 (11:55 -0700)]
Build Hostx86/arm32 coreclrpal when CROSSCOMPILE is "1" and Hostx64/arm32 coreclrpal otherwise in configurecompiler.cmake
Commit migrated from https://github.com/dotnet/coreclr/commit/
2347acb8731a6884de33d938542722098d1da08f
Egor Chesakov [Fri, 17 Aug 2018 20:52:14 +0000 (13:52 -0700)]
Build Hostx86/arm32 crossgen when CROSSCOMPILE is "1" and Hostx64/arm32 crossgen otherwise in configurecompiler.cmake
Commit migrated from https://github.com/dotnet/coreclr/commit/
1e7a3d97ffba7d5721112fd451a6f4cd41a9b5d2
Egor Chesakov [Fri, 17 Aug 2018 20:47:07 +0000 (13:47 -0700)]
Allow Hostx64/arm32 combination in configurecompiler.cmake
Commit migrated from https://github.com/dotnet/coreclr/commit/
ccf1c10ad9812c9fc99237997f491c4036f6a5a4
Andrew Au [Fri, 7 Sep 2018 23:52:42 +0000 (16:52 -0700)]
ToPointerFix - VS debugger needs the ToPointer() methods to inspect a pointer, marking it as DependencyReductionRoot to make sure it is not optimized away.
[tfs-changeset: 1713493]
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
4a5e35b67eeb6da3dad699269fb18d91780b8623
Fei Peng [Wed, 5 Sep 2018 22:40:51 +0000 (15:40 -0700)]
Add test cases for Pclmulqdq intrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
6d02d3a09588b062984e1e32f281318394b91c9a
Fei Peng [Wed, 5 Sep 2018 22:37:59 +0000 (15:37 -0700)]
Implement PCLMULQDQ intrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
e75a1a7d9c79ecbe49390014044240cb3904049c
David Mason [Mon, 10 Sep 2018 19:33:34 +0000 (12:33 -0700)]
Add GetCacheSizePerLogicalCpu and GetCurrentProcessCpuCount to gcenv for windows (dotnet/coreclr#19879)
* Add GetCacheSizePerLogicalCpu and GetCurrentProcessCpuCount to gcenv for windows
* Remove dead code, switch to __cpuid instaed of asm helper
* code review feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
35d424404f9930620204f3cc351992c0d9bd3b8a
Carol Eidt [Mon, 10 Sep 2018 18:22:20 +0000 (11:22 -0700)]
Fix Unix preallocatedArgCount
This has been an existing ToDo for some time.
This results in 19 bytes reduction in code size for pmi diffs of tests and frameworks.
Commit migrated from https://github.com/dotnet/coreclr/commit/
4e26024ad4fd0aa233ce9b62c4836c68d22156eb
Vance Morrison [Mon, 10 Sep 2018 17:08:15 +0000 (10:08 -0700)]
Merge pull request dotnet/coreclr#19881 from vitek-karas/EventSouceCommentTypos
Fix multiple typos in the EventSource.cs design comment.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c179f27661d5633168067f9f706dc44938086a1e
Carol Eidt [Mon, 10 Sep 2018 16:57:21 +0000 (09:57 -0700)]
Merge pull request dotnet/coreclr#19844 from CarolEidt/Enable19397Arm64
Re-enable GitHub_19397 test
Commit migrated from https://github.com/dotnet/coreclr/commit/
3d1789b1aac79102cba17d0534fb76d06a5eb161
vitek-karas [Mon, 10 Sep 2018 12:23:07 +0000 (05:23 -0700)]
Fix multiple typos in the EventSource.cs design comment.
Commit migrated from https://github.com/dotnet/coreclr/commit/
28ce3c1de28b368211b1b4d587d204d73468511a
Simon Nattress [Sat, 8 Sep 2018 21:38:42 +0000 (14:38 -0700)]
Merge pull request dotnet/coreclr#19870 from nattress/debuginfo
Add DebugInfo dumping support to r2rdump
Commit migrated from https://github.com/dotnet/coreclr/commit/
d1ce100bde935bf0b704339d9b94d51c20566b78
dotnet-maestro-bot [Fri, 7 Sep 2018 20:25:20 +0000 (13:25 -0700)]
Update BuildTools, CoreClr, CoreFx, CoreSetup, PgoData to preview1-03207-02, preview1-26907-04, preview1-26907-04, preview1-26907-05, master-
20180907-0057, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
3264cec0b60e6ace89a94c77b22152b79d0afc08
Simon Nattress [Fri, 7 Sep 2018 20:41:30 +0000 (13:41 -0700)]
Add DebugInfo dumping support to r2rdump
Display formatted debug info for each runtime function
Commit migrated from https://github.com/dotnet/coreclr/commit/
b5cbf4dd84bcf22950d4f6d665723c7d23981272
Fei Peng [Fri, 7 Sep 2018 21:45:37 +0000 (14:45 -0700)]
Fix AVX2 Gather Intrinsic failture with JITStress
Commit migrated from https://github.com/dotnet/coreclr/commit/
51c3dc3bbd5e7515cbc03249c5e34b239a87b281
Sergey Andreenko [Fri, 7 Sep 2018 23:59:10 +0000 (16:59 -0700)]
delete superpmi-shared/compileresult.cpp assert on x86. (dotnet/coreclr#19841)
* fix emitOutputAM for x86.
* Revert "fix emitOutputAM for x86."
This reverts commit dotnet/coreclr@
fe5ade83e7c8e1ac1cb4442defdfee1d3a3be3f0.
* delete an assert
* add an assert about slotNum
Commit migrated from https://github.com/dotnet/coreclr/commit/
f9c2e89f31f3816c921abb7c84e1951ce37d3127
Grant [Fri, 7 Sep 2018 22:25:42 +0000 (15:25 -0700)]
MemoryExtensions.Contains (dotnet/coreclr#19863)
Commit migrated from https://github.com/dotnet/coreclr/commit/
91820bdd42711266faae1c15d2176b9f47e48efe
Jan Kotas [Fri, 7 Sep 2018 22:22:40 +0000 (15:22 -0700)]
Fixes towards making the runtime compiled without FEATURE_PREJIT defined (dotnet/coreclr#19864)
Commit migrated from https://github.com/dotnet/coreclr/commit/
41db7d9af54a0a7d9fc365849e7c0fc1dad3a4b9
Carol Eidt [Fri, 7 Sep 2018 22:11:58 +0000 (15:11 -0700)]
Merge pull request dotnet/coreclr#19866 from dotnetrt/fix-generatetests-script
Remove all Sse2 Pack* and Unpack* tests from GneerateTests.csx script
Commit migrated from https://github.com/dotnet/coreclr/commit/
8f6db6188d8ab4f05709a4e8c8de54b18f639ec7
Tomáš Rylek [Fri, 7 Sep 2018 20:56:05 +0000 (22:56 +0200)]
Import signature parsing and general improvements in R2RDump (dotnet/coreclr#19813)
* Import signature parsing and general improvements in R2RDump
GcInfo - fixed a bug where the machine architecture was stored in
the instance field later than it was used in the calculation of
SlotTable which subsequently ended up with the wrong register set
(ARM64 instead of AMD64).
GcTransition - changed register set selector to a switch as the
previous implementation was incorrect for AMD64.
UnwindInfo - bug fix: the 4-alignment padding should come before
the personality routine, not after it. I have also slightly
simplified the calculation of the padding size.
CoreDisTools - added support for annotating indirect calls with
symbol information for the import cells; fixed formatting of
short relative jumps and added some code comments.
DisassemblingTypeProvider - bumped up some visibilities and made
a few generalizations letting me use this helper in the general
signature parser.
R2RImportSection - replaced binary signature samples with the
actual parsed representation.
R2RReader - I removed special-casing for eager import signatures
that seems wrong - I don't see any equivalent code in the
CoreCLR runtime. Please let me know if anyone is aware of a reason
why this was put here in the first place.
TextDumper and elsewhere - I have removed all tabs from the
R2RDump tool output.
R2RConstants - I have merged the various CoreCLR and R2R constants
in this file - previously they were interspersed in multiple
classes - and I added a bunch of new stuff needed by the signature
parser.
R2RSignature - comprises the newly added R2R signature parser.
Thanks
Tomas
* Slight modification in signature formatting to make it easier to read
I have swapped the ordering of the signature content with the
signature name - based on analyzing actual disassembly produced
by the code I came to the conclusion that the parsed signature
is generally more important than the cell fixup type which is
often obvious just based on the code context.
Thanks
Tomas
* Add dump of unwind info and RVA translation for near jumps / calls
* Add code comment on GetInstruction return value per PR feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
1d00a61b95ce280886c252360851945937b273b7
Carol Eidt [Fri, 7 Sep 2018 20:49:17 +0000 (13:49 -0700)]
Merge pull request dotnet/coreclr#19857 from CarolEidt/Fix19674
Morph ByRef args of SIMD field assign
Commit migrated from https://github.com/dotnet/coreclr/commit/
6cabe95f9dec3162a7407deee3863809511e57be
Brian Robbins [Fri, 7 Sep 2018 20:48:21 +0000 (13:48 -0700)]
Add Basic Out-of-Process EventPipe Control and Heap Snapshot Capture (dotnet/coreclr#19720)
Commit migrated from https://github.com/dotnet/coreclr/commit/
7a231d1cecb9c2dad09e7d6c179af4b587d95687
Michelle McDaniel [Fri, 7 Sep 2018 20:08:25 +0000 (13:08 -0700)]
Fix the slashes when setting the ZapBBInstrDir (dotnet/coreclr#19858)
In OpenMethodProfileDataLogFile, we try to set the directory and path for the .ibc files using windows slashes (\). This causes this code to fail on Linux, which uses forward slashes. This is particularly a problem when setting COMPlus_ZapBBInstrDir, which takes that environment variable and attempts to find the name of the file using wcsrchr(assemblyPath, '\'). This causes a crash on linux when collecting IBC counts. The fix is to ifdef it for linux to use the correct path separator.
This change also includes a fix to change the code for checking if IbcTuning is set to use == instead of -eq which was causing a failure in the build that was ignored.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d81a3685df482e8962bf696e44b9071f19bfac2f
Jacek Blaszczynski [Fri, 7 Sep 2018 17:57:16 +0000 (19:57 +0200)]
Remove all Sse2 Pack* and Unpack* tests from GneerateTests.csx script
Due te earlier error data for initiating generation of Sse2 Pack*
and Unpack* HW intrinsics tests were left in the file. Code generated
from this script will not compile as several required changes are missing.
Removal of this tests data restores full functionality of script.
Commit migrated from https://github.com/dotnet/coreclr/commit/
483adfefe3d069575774922b44cfcdc306fd6518
Eugene Rozenfeld [Fri, 7 Sep 2018 17:48:06 +0000 (10:48 -0700)]
Fix for bug 12398: Lowering is inconsistent in checking safety of RegOptional. (dotnet/coreclr#19740)
This fixes an inconsistency in lowering where it fails to make an
operand contained because IsSafeToContainMem() returns false yet
it marks it regOptional, which may cause a problem if the operand
will be loaded at the point of use.
I also fixed a case where an operand was marked RegOptional even though
there is a type size mismatch.
There are 7 places that are affected, I added repro cases for 4 of them.
I wasn't able to construct repros for the 3 places that deal with
floating point operands but decided to fix those places anyway.
Fixes dotnet/coreclr#12398.
Commit migrated from https://github.com/dotnet/coreclr/commit/
36449cf94237e7cddb7e43a9fe6f873e7f5ebf77
Brian Sullivan [Fri, 7 Sep 2018 17:40:48 +0000 (10:40 -0700)]
Merge pull request dotnet/coreclr#19748 from briansull/evalop-specialized
Rework the EvalOp generic-template methods
Commit migrated from https://github.com/dotnet/coreclr/commit/
c96aff7670f7d70fe87d2ea60bba9534c5e56088
Egor Chesakov [Fri, 7 Sep 2018 16:16:21 +0000 (09:16 -0700)]
Merge pull request dotnet/coreclr#19823 from echesakovMSFT/CrossBitnessValueNumbering
Commit migrated from https://github.com/dotnet/coreclr/commit/
2ba7230f547141f7f7bad37cb428f54b554d933f
Egor Chesakov [Fri, 7 Sep 2018 16:15:13 +0000 (09:15 -0700)]
Merge pull request dotnet/coreclr#19830 from echesakovMSFT/CrossGenAllocateMethodDescChunkPerMethodDesc
During CrossGen allocate MethodDescChunk per MethodDesc
Commit migrated from https://github.com/dotnet/coreclr/commit/
dddf586a9e0247159a5a84a1341fd1ba5b4337cd
Carol Eidt [Fri, 7 Sep 2018 14:49:25 +0000 (07:49 -0700)]
Merge pull request dotnet/coreclr#19855 from dotnetrt/fix-arm-tstlst
Remove deleted Sse2 tests from Test.lst files for arm and arm64 Windows targets
Commit migrated from https://github.com/dotnet/coreclr/commit/
192492d054a27f08643cf9ee39145735c9a45eda
Jan Vorlicek [Fri, 7 Sep 2018 08:44:47 +0000 (10:44 +0200)]
Fix ICU load on OpenSUSE Tumbleweed (dotnet/coreclr#19812)
For some reason, OpenSUSE Tumbleweed has decided to prefix the
version number in the SO name of the ICU libraries by "suse".
That prevents our ICU version detection code from working.
This change adds scanning for SO names that contain that prefix too.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3df1959f00c34a80988e075b48b869e6b9d8102b
Morgan Brown [Fri, 7 Sep 2018 02:37:30 +0000 (19:37 -0700)]
Enable IJW Native calling managed (dotnet/coreclr#19750)
* Adds back code required to make IJW native->managed calls (if the runtime is already started) and includes a simple test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9e976d515099c7708cf26cef7520b628564f5acf
Carol Eidt [Thu, 6 Sep 2018 21:26:58 +0000 (14:26 -0700)]
Morph ByRef args of SIMD field assign
Fix dotnet/coreclr#19674
Commit migrated from https://github.com/dotnet/coreclr/commit/
9c8eae93b8406ce7ffc6792f76f35850a745ee44
Carol Eidt [Fri, 7 Sep 2018 00:39:16 +0000 (17:39 -0700)]
Merge pull request dotnet/coreclr#19296 from mikedn/cast-cg
Refactor integer cast codegen
Commit migrated from https://github.com/dotnet/coreclr/commit/
748b5a0a5a701b7f9803021313c620413e353fdc
Egor Chesakov [Fri, 7 Sep 2018 00:11:44 +0000 (17:11 -0700)]
Add logging to file when CrossGen System.Private.CoreLib.dll on Unix (dotnet/coreclr#19848)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e72b0628e2ab19a417bcb4e34686dfd40d0fb592
Tanner Gooding [Thu, 6 Sep 2018 18:28:45 +0000 (11:28 -0700)]
Disabling the failing CoreFX tests related to ToString for negative zero
Commit migrated from https://github.com/dotnet/coreclr/commit/
98fa2d6982db284d53e202fb2b07683a1df2cd44
Tanner Gooding [Thu, 6 Sep 2018 04:24:59 +0000 (21:24 -0700)]
Removing i386/fptext.asm in favor of using the shared implementation in number.cpp
Commit migrated from https://github.com/dotnet/coreclr/commit/
36a90028f00e7a9e5b6f2aeaadcade3e123d4033
Tanner Gooding [Thu, 30 Aug 2018 17:09:59 +0000 (10:09 -0700)]
Updating Number.Formatting to properly print -0
Commit migrated from https://github.com/dotnet/coreclr/commit/
ad3c8cc8934ec89631c221713b86238f6c86e1b6
Sergey Andreenko [Thu, 6 Sep 2018 23:03:09 +0000 (16:03 -0700)]
Clean CodeGen::genEmitCall (dotnet/coreclr#19804)
* delete isProfLeaveCB from arm signature
The previous implementation was done many years ago and I do not why it was done that way.
* extract GetSavedSet
* add isNoGCHelper
* delete isNoGC arg
* move declarations closer to their uses
* delete isGc from genEmitCall
* delete unused method declaration.
* add emitNoGChelper that accepts CORINFO_METHOD_HANDLE
* fix missed switch cases
* add function headers
* Fix feedback
* Fix feedback2
Commit migrated from https://github.com/dotnet/coreclr/commit/
e80e55a1ace4b4de10072b0f6f71f79aca868906
Jarret Shook [Thu, 6 Sep 2018 22:55:52 +0000 (15:55 -0700)]
Add native vararg test (dotnet/coreclr#17707)
* Add native vararg testing
This is a desktop test. It will be excluded for coreclr; however, decided it is worth adding
to the test tree in case we ever need the coverage.
* Fix several errors, and address feedback
* Split long lines
* Update vararg test
* Fix excludes
* Refernce private_corelib
* Correctly build vararg test
* Fix incorrect addition
* Fix build break unix
* Fix native build on unix
* Fix entry point
* Correctly pass doubles instead of floats
* Correct vararg test, pass double to pinvoke methods
* Remove printf tests
* Fix cmake for varargnative.c
* Fix cdel calling convention
* Correctly pass success back to the main method
* Explicitely undef cdecl
* Fix some excludes and exclude the new test on x86
* Add unix exclude
* Disable echo_short and correct header
Commit migrated from https://github.com/dotnet/coreclr/commit/
269deff2221f3c2acbc6b67f5e51a744a8f2f581
Jacek Blaszczynski [Thu, 6 Sep 2018 20:49:27 +0000 (22:49 +0200)]
Remove deleted Sse2 tests from Test.lst files for arm and arm64 Windows targets
Fixes dotnet/coreclr#19853
Commit migrated from https://github.com/dotnet/coreclr/commit/
c5d22c3e9976a81cab1ec8a5b6a7e9e5cb8d2f7d
mikedn [Thu, 6 Sep 2018 20:28:15 +0000 (23:28 +0300)]
Remove unused GenTree flags (dotnet/coreclr#19840)
GTF_IND_ARR_LEN was set by the importer in minopts/debug mode and used only by value numbering, which does not run in minopts/debug mode.
GTF_FLD_NULLCHECK was also set by the importer and not used anywhere. fgMorphField has its own opinion about when an explicit null check is needed.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1d885d32db50e8ee931d0d9fbd1081bfbb7ce271
Sergey Andreenko [Thu, 6 Sep 2018 20:25:52 +0000 (13:25 -0700)]
add a regression test for Linux GC segfault. (dotnet/coreclr#19820)
* add test
* move the test to pri1 and reduce number of iterations
Commit migrated from https://github.com/dotnet/coreclr/commit/
de7ea8c4307b8d0b9be7c3427e1ccfeb926e38a8
Mike Danes [Tue, 7 Aug 2018 19:16:51 +0000 (22:16 +0300)]
Make cast classification arch independent
Commit migrated from https://github.com/dotnet/coreclr/commit/
38a5f91a3e11ecf4d7441a5ce05bb94b6edaf9c3
Mike Danes [Sun, 5 Aug 2018 16:53:50 +0000 (19:53 +0300)]
Get rid of Lowering::getCastDescription
Commit migrated from https://github.com/dotnet/coreclr/commit/
43c5f23bf1b3d697ebe7178c612717a194cffdfe
Mike Danes [Sun, 5 Aug 2018 07:33:27 +0000 (10:33 +0300)]
Cleanup LinearScan::BuildCast
Commit migrated from https://github.com/dotnet/coreclr/commit/
0959db249a11d5eda4f4f4166707e8e1a925169e
Mike Danes [Sun, 5 Aug 2018 13:36:03 +0000 (16:36 +0300)]
Improve ARM genIntCastOverflowCheck
Commit migrated from https://github.com/dotnet/coreclr/commit/
763477bcae7b2de2264bba1b43cb1c11eb4877fd
Mike Danes [Sun, 5 Aug 2018 09:44:27 +0000 (12:44 +0300)]
Refactor genIntToIntCast on ARM
Commit migrated from https://github.com/dotnet/coreclr/commit/
c41a0e34a5ea9d850b09f5d5ac3a1a27d1485df5
Mike Danes [Sun, 5 Aug 2018 09:27:48 +0000 (12:27 +0300)]
Extract cast overflow check ARM codegen to genIntCastOverflowCheck
Commit migrated from https://github.com/dotnet/coreclr/commit/
35e51c884f511a49f1bad6c5706e4fdf8e963ab3
Mike Danes [Sun, 5 Aug 2018 09:16:00 +0000 (12:16 +0300)]
Refactor genIntToIntCast on XARCH
Commit migrated from https://github.com/dotnet/coreclr/commit/
a2ba07ab7ebbd47fc673a1f4a7521a400badb298
Jan Vorlicek [Thu, 6 Sep 2018 08:15:21 +0000 (10:15 +0200)]
Add support for collectible types to SOS (dotnet/coreclr#19842)
* Add support for collectible types to SOS
Collectible types indirectly reference managed LoaderAllocator via
pointer to native AssemblyLoaderAllocator stored in their MethodTable.
GC uses this relation when scanning object graph to determine which
objects are rooted and which ones are not.
The gcroot command in SOS doesn't understand this relation and so it
is unable to find all roots for LoaderAllocator.
This change fixes it.
* PR feedback
Make the failure to get the collectible info non-fatal to make it
compatible with older runtimes.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a236b31a65614f5318cad794a5f38f4e566674e
Jarret Shook [Thu, 6 Sep 2018 03:50:28 +0000 (20:50 -0700)]
[Unix|Arm64] Correct transition block for unix arm64 (dotnet/coreclr#19822)
* Correct unix transition block macro
Commit migrated from https://github.com/dotnet/coreclr/commit/
045915424f7c4a3e6647cf35d6fca8a7fe48ea16
Egor Chesakov [Wed, 5 Sep 2018 22:08:58 +0000 (15:08 -0700)]
Don't build and publish libcoreclr libeventprovider libeventpipe as crosscomponents on ARM (dotnet/coreclr#19782)
* Use _install to stop copying sosdocsunix.txt to crosscomponents directory in src/ToolBox/SOS/Strike/CMakeLists.txt
* Use _install for coreclrpal in src/pal/src/CMakeLists.txt
* Use _install for eventprovider in src/scripts/genLttngProvider.py
* Unconditionally use add_library_clr and _install for eventpipe in src/scripts/genEventPipe.py
Commit migrated from https://github.com/dotnet/coreclr/commit/
14802fcc27eefbc29fbcb204cd0f3ae626da2042
Carol Eidt [Wed, 5 Sep 2018 21:49:26 +0000 (14:49 -0700)]
Re-enable GitHub_19397 test
Commit migrated from https://github.com/dotnet/coreclr/commit/
fc105dad0a796468173ad24b22769a42f80e01f9
Tanner Gooding [Wed, 5 Sep 2018 17:15:35 +0000 (10:15 -0700)]
Updating the ilproj-sdk to support the `-RESOURCES` switch
Commit migrated from https://github.com/dotnet/coreclr/commit/
6c6d86eb7efd2f63e8db90aba5aca2b91696afc4
Bruce Forstall [Wed, 5 Sep 2018 20:52:31 +0000 (13:52 -0700)]
Merge pull request dotnet/coreclr#19719 from dotnet/MattGal-patch-1
Fix typos
Commit migrated from https://github.com/dotnet/coreclr/commit/
805024ecddd23fbe9565b28fcaffbf5a1618e4fa
Jacek Blaszczynski [Sat, 25 Aug 2018 14:54:03 +0000 (16:54 +0200)]
Convert all Sse2.Compare*** tests to template based
Commit migrated from https://github.com/dotnet/coreclr/commit/
f28cdb352da285cc2a4248d8008e62e5aa7b081a
Fei Peng [Fri, 31 Aug 2018 21:15:45 +0000 (14:15 -0700)]
Implement AVX2 Gather intrinsic in JIT
Commit migrated from https://github.com/dotnet/coreclr/commit/
0f6597f60f580f64b29b00bec7f71d2fb0d57d9d
Fei Peng [Thu, 9 Aug 2018 21:57:39 +0000 (14:57 -0700)]
Add test for AVX2 gather intrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
2055d5610242da81cbc4c767465fddb7dbd78e33
Fei Peng [Thu, 9 Aug 2018 21:57:22 +0000 (14:57 -0700)]
Add managed non-const fall-back for AVX2 gather intrinsic
Commit migrated from https://github.com/dotnet/coreclr/commit/
d59b1af3429809e8c2af86f818ebb387948e313e
Fei Peng [Tue, 4 Sep 2018 22:50:16 +0000 (15:50 -0700)]
Rename CarryLessMultiply to CarrylessMultiply
Commit migrated from https://github.com/dotnet/coreclr/commit/
e6ae9d6460fb8366134d4026b46bb1611045d416
Dan Moseley [Tue, 4 Sep 2018 22:21:28 +0000 (15:21 -0700)]
Fix ServiceController name population perf (dotnet/corefxdotnet/coreclr#32072)
* Fix ServiceController name population perf
* Split tests
* Remove dead field
* Remove new use of DangerousGetHandle
* SafeHandle all the things!
* VSB dotnet/coreclr#1
* VSB dotnet/coreclr#2
* Fix GLE
* Initialize machineName in ctor
* Test for empty name ex
* Null names
* Inadvertent edit
* Unix build
* Move interop into class
* Reverse SafeHandle for HAllocGlobal
* Fix tests
* Disable test for NETFX
* CR feedback
* Pattern matching on VSB
* Direct call
* typo
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
20ee9b884cdc04826826b95e0952f9c5b5e650dc
Michal Strehovský [Tue, 4 Sep 2018 14:26:36 +0000 (16:26 +0200)]
Fix UAP build break (dotnet/corertdotnet/coreclr#6287)
Kick registry related files out of UAP builds.
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
aee79af9a233c397bc3140af2e0ef2d83cf436bf