Carol Eidt [Wed, 19 Sep 2018 23:25:15 +0000 (16:25 -0700)]
Merge pull request dotnet/coreclr#20038 from CarolEidt/Fix20031
Fix MultiReg methods on GenTree
Commit migrated from https://github.com/dotnet/coreclr/commit/
300975cd8581101aa765bb655a098d3d259ed2b8
Carol Eidt [Wed, 19 Sep 2018 21:45:16 +0000 (14:45 -0700)]
Merge pull request dotnet/coreclr#19811 from pentp/xcnt-false-dep
Improved fix for target register false dependency of lzcnt/tzcnt/popcnt
Commit migrated from https://github.com/dotnet/coreclr/commit/
5d403a15c85d19a3ad672c7a71eb711f06e72a08
Michelle McDaniel [Wed, 19 Sep 2018 21:25:15 +0000 (14:25 -0700)]
Move smoketests to use Helix queue (dotnet/coreclr#20017)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d529163b2dbc880117f436d8a824d531b1506346
Bruce Forstall [Wed, 19 Sep 2018 21:18:30 +0000 (14:18 -0700)]
Merge pull request dotnet/coreclr#19993 from dotnet/dev/unix_test_workflow
Enable arm64 Linux testing in CI
Testing is enabled on a set of Qualcomm Centriq arm64 servers running Ubuntu 16.04.
The set of jobs enabled almost matches the set run for arm32 Linux testing,
including innerloop, JIT and GC Stress, corefx, and R2R. Temporarily, the
innerloop jobs are commit jobs (invoked when a PR is merged) instead of
"default trigger" jobs (invoked when a PR is submitted), until we get more
experience with the robustness of the machines and jobs. The machines are
fast enough that they are not marked as "limited hardware" (like arm32 Linux
machines). That means that many jobs are run daily, not weekly, as periodic jobs.
Notes about the changes:
1. The Linux arm64 machines are managed by Helix, which allocates them to Jenkins.
2. The arm64 OS used has been renamed from "small_page_size" to "Ubuntu16.04". If we
add large page size machines, we'll need to add a differentiator.
3. The Jenkins "copy artifacts" plug-in runs ridiculously slowly on this hardware,
for unknown reasons, so we copy artifacts directly using "wget".
4. Tests are built using "build-test.sh" on the (cross) build machine; we don't use
Windows-built tests.
5. Added Jenkins archiving of build .log/.wrn/.err files.
6. Various tests were disabled in issues.targets, and with a new
arm64/corefx_linux_test_exclusions.txt file, to get jobs to run clean. (Several
issues have been opened to track these and other known failures.)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a35087fd0d87ce98f4e3a26902d01c8afcf7119c
Jan Kotas [Wed, 19 Sep 2018 21:12:40 +0000 (14:12 -0700)]
Cleanup registry usage within CoreLib (dotnet/coreclr#20050)
- Ensure that the registry keys are always disposed
- Use smaller subset of registry APIs
- Reduce diffs with CoreCLR/CoreFX
- Contributes to dotnet/coreclr#11009 and dotnet/coreclr#17899
Commit migrated from https://github.com/dotnet/coreclr/commit/
21078fbf9fccddc05c8156be9b42b7cafcc19448
Marek Safar [Wed, 19 Sep 2018 18:37:17 +0000 (20:37 +0200)]
Turns Math/MathF RoundLimit into a constant (dotnet/coreclr#20044)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f52dfe474bd2462599f704346c80df5fbb80dfc3
Bruce Forstall [Wed, 22 Aug 2018 20:55:53 +0000 (13:55 -0700)]
Enable arm64 Linux testing in CI
Testing is enabled on a set of Qualcomm Centriq arm64 servers running Ubuntu 16.04.
The set of jobs enabled almost matches the set run for arm32 Linux testing,
including innerloop, JIT and GC Stress, corefx, and R2R. Temporarily, the
innerloop jobs are commit jobs (invoked when a PR is merged) instead of
"default trigger" jobs (invoked when a PR is submitted), until we get more
experience with the robustness of the machines and jobs. The machines are
fast enough that they are not marked as "limited hardware" (like arm32 Linux
machines). That means that many jobs are run daily, not weekly, as periodic jobs.
Notes about the changes:
1. The Linux arm64 machines are managed by Helix, which allocates them to Jenkins.
2. The arm64 OS used has been renamed from "small_page_size" to "Ubuntu16.04". If we
add large page size machines, we'll need to add a differentiator.
3. The Jenkins "copy artifacts" plug-in runs ridiculously slowly on this hardware,
for unknown reasons, so we copy artifacts directly using "wget".
4. Tests are built using "build-test.sh" on the (cross) build machine; we don't use
Windows-built tests.
5. Added Jenkins archiving of build .log/.wrn/.err files.
6. Various tests were disabled in issues.targets, and with a new
arm64/corefx_linux_test_exclusions.txt file, to get jobs to run clean. (Several
issues have been opened to track these and other known failures.)
Commit migrated from https://github.com/dotnet/coreclr/commit/
707e84e98920546264db5af4252509a3a54f6203
Jacek Blaszczynski [Thu, 6 Sep 2018 21:15:19 +0000 (23:15 +0200)]
Remove Sse2 ConvertTo* tests from Tests.lst files for arm and arm64 Windows targets
Commit migrated from https://github.com/dotnet/coreclr/commit/
541f710095b6c10f2e650ad68e3f5961aa467d02
Jacek Blaszczynski [Thu, 6 Sep 2018 10:42:27 +0000 (12:42 +0200)]
Add generated code for Convert Sse2 ConvertTo* and ConvertToVector128* tests
Removed old tests, changed GenerateTests.csx layout
Commit migrated from https://github.com/dotnet/coreclr/commit/
09833d34724164fc0c44c83925fcf95ec14c800e
Jacek Blaszczynski [Thu, 6 Sep 2018 10:31:56 +0000 (12:31 +0200)]
Convert Sse2 ConvertTo* and ConvertToVector128* tests to template based
Changes comprise addition of new templates, new test generation logic
which supports test cases which have to be differentiated based
on both return VectorNNN baset type and source VectorNNN base type.
This commit is skipping all code which was generated or changed
due to code layout adjustment (white space changes).
Commit migrated from https://github.com/dotnet/coreclr/commit/
420b26c8c3441c182b28c12b9bd24e5e618151ac
Koundinya Veluri [Wed, 19 Sep 2018 10:30:49 +0000 (03:30 -0700)]
Fix perf scenarios in the min_opt config (dotnet/coreclr#20010)
The appropriate environment variables were not being set due to a name mismatch
Commit migrated from https://github.com/dotnet/coreclr/commit/
92a00307ca4b7378ae077cf76c97cd3d0100e86b
Koundinya Veluri [Wed, 19 Sep 2018 10:30:01 +0000 (03:30 -0700)]
Replace assert in Precode::SetTargetInterlocked (dotnet/coreclr#20007)
Fixes https://github.com/dotnet/coreclr/issues/19954
- `SetTargetInterlocked` can be soon followed by `ResetTargetInterlocked`, so the assert at the end of `SetTargetInterlocked` is invalid
- Removed the assert and instead just verified that the specified target is not the default prestub target
Commit migrated from https://github.com/dotnet/coreclr/commit/
2b698ce9bd72368f9722524573e4a77a24131700
Koundinya Veluri [Wed, 19 Sep 2018 10:29:01 +0000 (03:29 -0700)]
Add 2.2 sdk/runtime to JitBench (dotnet/coreclr#19778)
Add 2.2 sdk/runtime to JitBench
Commit migrated from https://github.com/dotnet/coreclr/commit/
291e365452da11122ccfbbdef75abd97a76c1f25
Andon Andonov [Tue, 18 Sep 2018 17:31:38 +0000 (10:31 -0700)]
Indentation
Commit migrated from https://github.com/dotnet/coreclr/commit/
a4aaf0667ddca455a86727deb34541c0493629e8
Andon Andonov [Tue, 18 Sep 2018 17:25:06 +0000 (10:25 -0700)]
Disable outdated Enumerator tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
b577c2825f2d8a20f1b29255a19fd11cb0372805
dotnet-bot [Mon, 17 Sep 2018 23:21:25 +0000 (16:21 -0700)]
* Revert the changes to TryInsert() introduced by https://github.com/dotnet/coreclr/pull/17096 completely, which only showed modest size improvement
* Removing the _version increment from Clear() entirely to bring it in line with the behavior in Remove() and to keep size gains
[tfs-changeset: 1714543]
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
a00a6eaca1d6d45235ed076b81a2169d08487e71
Sven Boemer [Wed, 19 Sep 2018 03:50:57 +0000 (20:50 -0700)]
Include in alphabetical order (dotnet/coreclr#20028)
For consistency with https://github.com/dotnet/coreclr/pull/20005
Commit migrated from https://github.com/dotnet/coreclr/commit/
ed9fb0d4cb56d0aaedf6b8e02b683d33b10a0f12
Carol Eidt [Tue, 18 Sep 2018 23:57:31 +0000 (16:57 -0700)]
Merge pull request dotnet/coreclr#19996 from dotnetrt/jit-update-headers
Update clrjit headers files included via CMakeList.txt into clrjit.vcxproj
Commit migrated from https://github.com/dotnet/coreclr/commit/
89ac6702af6c6db633c6c7d69af300a217f30d60
Carol Eidt [Tue, 18 Sep 2018 22:40:32 +0000 (15:40 -0700)]
Fix MultiReg methods on GenTree
The Copy/Reload case was not being handled for 64-bit targets with multireg ops.
Also, the methods `IsMultiRegNode`, `GetMultiRegCount`, `GetRegByIndex` and `GetRegTypeByIndex` should be in sync.
Fix dotnet/coreclr#20031
Commit migrated from https://github.com/dotnet/coreclr/commit/
8194ab91d6d535b15fe46877bbe2cc650595f334
Tarek Mahmoud Sayed [Tue, 18 Sep 2018 21:02:57 +0000 (14:02 -0700)]
Port Formatting Japanese First Year of Era (dotnet/coreclr#19976)
Commit migrated from https://github.com/dotnet/coreclr/commit/
44fd2693a85a35d2f4e532bb5a12f145224ee5bf
Jacek Blaszczynski [Tue, 18 Sep 2018 18:20:35 +0000 (20:20 +0200)]
Do not add invalid masm flags in cordbdi.vcxproj for x64 Windows (dotnet/coreclr#19995)
Fixes dotnet/coreclr#19902
Commit migrated from https://github.com/dotnet/coreclr/commit/
82682b2dc4ecb05e34bbcfe4e20324b938bd80a9
Jacek Blaszczynski [Tue, 18 Sep 2018 18:15:38 +0000 (20:15 +0200)]
Add headers to cee_wks, cee_dac vcxprojs to improve developer experience (dotnet/coreclr#20011)
Commit migrated from https://github.com/dotnet/coreclr/commit/
88faa0e942bcdcaf14d327892ea5bc029c02303f
Jan Kotas [Tue, 18 Sep 2018 15:52:12 +0000 (08:52 -0700)]
Fix Buffer.cs formatting to follow coding guidelines (dotnet/coreclr#20020)
Reduces diffs with CoreRT
Commit migrated from https://github.com/dotnet/coreclr/commit/
404cf2f9f22032f40edf3ab6223bb560d220d770
Jacek Blaszczynski [Tue, 18 Sep 2018 13:57:42 +0000 (15:57 +0200)]
Add gc header files to vcxproj file to improve user experience (dotnet/coreclr#19980)
Work toward dotnet/coreclr#14884
Commit migrated from https://github.com/dotnet/coreclr/commit/
d1bb5271192ddac3d0d31ee6168afdc3c58f55da
Tomáš Rylek [Tue, 18 Sep 2018 12:41:05 +0000 (14:41 +0200)]
Add EH info support to R2RDump (dotnet/coreclr#20000)
* Add EH info support to R2RDump
This change expands runtime function dump to include the exception
handling info looked up via the EXCEPTION_INFO R2R header table.
* Address Zach's PR feedback
1) Base EHClause.Length on sizeof(uint) instead of sizeof(int)
for consistency with the asctual data types in the class.
2) Fix my overlooking that Zach spotted - in the EHLookupTable
ctor, we need to assign rva2 and eh2 to rva1 and eh1 at the end
of the loop block as we need to traverse consecutive pairs
of CORCOMPILE_EXCEPTION_LOOKUP_TABLE_ENTRY elements.
* Addressed Bruce Forstall's PR feedback
1) I modified the EH info method ctors to accept the R2RReader
instead of the raw byte[] image as the reader can be used to
provide textual representations of metadata tokens.
2) I changed the mask test to a switch that throws an exception
if multiple of the three lowest bits are set which is illegal
according to Bruce.
* Addressed additional Bruce Forstall's PR feedback
Remove interpretation of ClassTokenOrFilterOffset as it's not applicable
in the FINALLY and FAULT cases.
Thanks
Tomas
Commit migrated from https://github.com/dotnet/coreclr/commit/
9d3e96c3afe522f6f509628a856c41fe91d9da33
Jan Kotas [Tue, 18 Sep 2018 05:42:40 +0000 (22:42 -0700)]
Use elaborated type specifiers to prevent meaning changes (dotnet/coreclr#20019)
Port https://github.com/dotnet/corert/pull/6341/ to CoreCLR
Commit migrated from https://github.com/dotnet/coreclr/commit/
d81f2635cc2f26370ea691b9d109cc8246d86472
Tanner Gooding [Mon, 17 Sep 2018 22:23:13 +0000 (15:23 -0700)]
Updating Buffer.ZeroMemory to call SpanHelpers.ClearWithoutReferences
Commit migrated from https://github.com/dotnet/coreclr/commit/
2a12f7e1295fa672d81a552d06b8fb17ec7305a8
Carol Eidt [Tue, 18 Sep 2018 00:46:46 +0000 (17:46 -0700)]
Merge pull request dotnet/coreclr#15657 from mikedn/fp-divmul-binary
Move FP DIV/MUL handling to genCodeForBinary
Commit migrated from https://github.com/dotnet/coreclr/commit/
6517a3519ef721d50b6b52995ca89d09b46189a2
Sergey Andreenko [Mon, 17 Sep 2018 21:59:07 +0000 (14:59 -0700)]
Fix spmi environment reset. (dotnet/coreclr#19943)
* Dump spmi string environment variables with -d key.
Sometimes it is not clear which environment variables are set during a replay. Add a possibility to dump all active string environment variables with "-v d" key.
It is especially useful when you debug one method and can't get output that you want (for example JitDump) because altJit was set during the collection.
* Dump int spmi environment variables with -d key.
The same change but for int variables that need an additional parsing.
* Fix environment reset in spmi.
The previous changes revealed that we have a problem with environment reset. The reset was added in dotnet/coreclr#13596 to support a correct replay of mch files with mc that had different env variables during the collection.
It was based on Environment that was later deprecated by dotnet/coreclr#13110.
That caused the environment to be reset for each mc file. The fix updates env only when it is necessary and decreases the replay time of an mch file with 200000 methods from 500s to 370s.
* Fix dumpHelp.
Fix formating and adds note that all keys and values are case sensetive.
* Delete retired packages logic.
These packages were retired a long time ago and there is no value to have a special logic for them.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1df22d9d8970215b99f96691336b9b49a223ec1b
Carol Eidt [Mon, 17 Sep 2018 20:54:41 +0000 (13:54 -0700)]
Merge pull request dotnet/coreclr#19949 from fiigii/fixhwapis
Fix inconsistent Intel hardware intrinsic APIs
Commit migrated from https://github.com/dotnet/coreclr/commit/
00292a6ff453b9f01c80292b2c045e4dcd0551cf
Andy Ayers [Mon, 17 Sep 2018 17:44:38 +0000 (10:44 -0700)]
Jit: ensure objp properly updated by SpillRetExprHelper (dotnet/coreclr#19974)
We need to arrange to actually update the call objp in the SpillRetExprHelper,
otherwise the changes don't propagate back into the tree.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e7b69d9ea4e0a7088c9d12aed573728e08af1ec0
Jacek Blaszczynski [Sun, 16 Sep 2018 13:16:19 +0000 (15:16 +0200)]
Update clrjit headers files included into clrjit.vcxproj
Commit migrated from https://github.com/dotnet/coreclr/commit/
500f9bd7ed79e986ae8e7808a14d06f9aac6ff30
Filip Navara [Sun, 16 Sep 2018 03:51:28 +0000 (05:51 +0200)]
System.Private.CoreLib: Move ResoureReader/ResourceSet to shared. (dotnet/coreclr#19994)
* Move ResoureReader/ResourceSet to shared.
* Remove unnecessary cast to RuntimeType from ResoureReader.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3743d9a7d5959383ae4c31b4d9273fb61e2fb389
Jarret Shook [Sat, 15 Sep 2018 21:37:00 +0000 (14:37 -0700)]
Correctly disable varargsupport for windows x86 (dotnet/coreclr#19981)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e8ad788ff4406006319bfba7ff90146bb71ca644
Bruce Forstall [Sat, 15 Sep 2018 18:12:38 +0000 (11:12 -0700)]
Merge pull request dotnet/coreclr#19988 from BruceForstall/Disable18989
Disable arm64 float_cs_ro.cmd
Commit migrated from https://github.com/dotnet/coreclr/commit/
215344480feae3a74f77694a411d439ecdd2011a
Bruce Forstall [Sat, 15 Sep 2018 18:11:06 +0000 (11:11 -0700)]
Disable arm64 float_cs_ro.cmd
Tracked by dotnet/coreclr#18989
Commit migrated from https://github.com/dotnet/coreclr/commit/
59de1c6dcb853a64d3d96787588da6310ae0c0ac
Jarret Shook [Sat, 15 Sep 2018 15:57:22 +0000 (08:57 -0700)]
Layout native test components correctly on unix (dotnet/coreclr#19918)
* Enable native test build and add skipmanaged
* Fix adding native components to test dir
* Clean pri1/pri0 builds with native lib copy
This change disables the build of several tests which have native
dependencies; however, would not build the native dependencies on
unix. At copy time this would result in a build-test failure. In
addition, it fixes, adding executables and dynamic/static libraries
to the test's location.
It has been tested with build-test.sh priority1.
* Fix comment wording
* Remove buildagainstpackage arg
* Fix default clang version
* Clean pri1 run OSX
* Correct test count on unix
* Address typo
* Merge runtest.proj
Commit migrated from https://github.com/dotnet/coreclr/commit/
d47162260d4e202bb06fcc7449fadbfd2955b83b
Vitek Karas [Sat, 15 Sep 2018 04:18:21 +0000 (21:18 -0700)]
Fix build break in P1 tests (dotnet/coreclr#19975)
Commit migrated from https://github.com/dotnet/coreclr/commit/
799508eb77045482d1e2bf13c6696c6b248de0b6
Koundinya Veluri [Sat, 15 Sep 2018 04:00:04 +0000 (21:00 -0700)]
Add short guide for using tiered compilation and how to provide feedback (dotnet/coreclr#19773)
* Add short guide for using tiered compilation and how to provide feedback
* Suggested changes
* Update to say that it's enabled by default
* Add info about target framework/runtime
Commit migrated from https://github.com/dotnet/coreclr/commit/
e5f1f3e69bfda1b41ea2ca3d1e76445afaac9f65
David Mason [Sat, 15 Sep 2018 03:44:58 +0000 (20:44 -0700)]
convert HandleStore::_underlyingBucket to a pointer (dotnet/coreclr#19935)
* convert HandleStore::_underlyingBucket to a pointer
* undo _underlyingBucket pointer change and delete Ref_CreateHandleTableBucket
* update comment
Commit migrated from https://github.com/dotnet/coreclr/commit/
73a0bc0d549d1c8e41261891dcc2974fb8024556
Brian Sullivan [Fri, 14 Sep 2018 23:58:03 +0000 (16:58 -0700)]
Merge pull request dotnet/coreclr#19125 from mikedn/cse-extract
[WIP] Fix CSE side effect and definition extraction
Commit migrated from https://github.com/dotnet/coreclr/commit/
31c71908203752358dc69dbdf92d707528a8c8b4
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
Fei Peng [Thu, 13 Sep 2018 23:53:15 +0000 (16:53 -0700)]
temporarily disable some hw intrinsic tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
e618d433f71075d0e00d707475ea02400cdff145
Fei Peng [Thu, 13 Sep 2018 23:52:42 +0000 (16:52 -0700)]
Fix inconsistent Intel hardware intrinsic APIs
Commit migrated from https://github.com/dotnet/coreclr/commit/
f9afa99eeb8c9b27cb3b6c1ada286057a4cbf0ef
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