platform/upstream/dotnet/runtime.git
8 years agoSkipped letter in a word (dotnet/coreclr#6991)
Evgeniy Devyatkin [Tue, 30 Aug 2016 22:47:21 +0000 (02:47 +0400)]
Skipped letter in a word (dotnet/coreclr#6991)

Commit migrated from https://github.com/dotnet/coreclr/commit/76b982208f61b0691a48d3903ac7afcb10a1cce3

8 years agoMerge pull request dotnet/coreclr#6990 from smile21prc/coreclr-perf
smile21prc [Tue, 30 Aug 2016 21:28:38 +0000 (14:28 -0700)]
Merge pull request dotnet/coreclr#6990 from smile21prc/coreclr-perf

Create coreclr perf jobs for Linux.

Commit migrated from https://github.com/dotnet/coreclr/commit/cda9b0fc9a5f206b391b1bd104e43bd6c29aad7f

8 years agoCreate coreclr perf jobs for Linux.
Smile Wei [Tue, 30 Aug 2016 19:31:25 +0000 (12:31 -0700)]
Create coreclr perf jobs for Linux.

Commit migrated from https://github.com/dotnet/coreclr/commit/cb24fe3c2ac3670f3367fe4e934a35bbf6d2cca2

8 years agoMerge pull request dotnet/coreclr#6986 from dotnet-bot/from-tfs
Jan Kotas [Tue, 30 Aug 2016 21:18:05 +0000 (14:18 -0700)]
Merge pull request dotnet/coreclr#6986 from dotnet-bot/from-tfs

Merge changes from TFS

Commit migrated from https://github.com/dotnet/coreclr/commit/981ebfbb75ae51c040a88e637250cee079102f6d

8 years agoDelete non-existing method
Jan Kotas [Tue, 30 Aug 2016 18:21:59 +0000 (11:21 -0700)]
Delete non-existing method

[tfs-changeset: 1624957]

Commit migrated from https://github.com/dotnet/coreclr/commit/987559e7c8802201b71b441da6fc7e4165eea700

8 years agoMerge pull request dotnet/coreclr#6973 from BruceForstall/MoveTailcallTestExclusion
Bruce Forstall [Tue, 30 Aug 2016 18:17:41 +0000 (11:17 -0700)]
Merge pull request dotnet/coreclr#6973 from BruceForstall/MoveTailcallTestExclusion

Move TailcallVerifyWithPrefix test to "baseline x86" exclusion section

Commit migrated from https://github.com/dotnet/coreclr/commit/776e55d17a871e9d11878ede35b50d60d257142a

8 years agoMerge pull request dotnet/coreclr#6867 from rahku/returnHijack
Rahul Kumar [Tue, 30 Aug 2016 18:11:43 +0000 (11:11 -0700)]
Merge pull request dotnet/coreclr#6867 from rahku/returnHijack

Enable return address hijacking for arm64

Commit migrated from https://github.com/dotnet/coreclr/commit/b008e0aa17dd79ce874346bb30d84b8a9e42dae5

8 years agoMerge pull request dotnet/coreclr#6980 from smile21prc/coreclr-perf
smile21prc [Tue, 30 Aug 2016 17:59:12 +0000 (10:59 -0700)]
Merge pull request dotnet/coreclr#6980 from smile21prc/coreclr-perf

More fixes.

Commit migrated from https://github.com/dotnet/coreclr/commit/933c857ed6091d55a32fe5f09463ce8b4d058f06

8 years agoMore fixes.
Smile Wei [Tue, 30 Aug 2016 17:58:34 +0000 (10:58 -0700)]
More fixes.

Commit migrated from https://github.com/dotnet/coreclr/commit/5e9582f33b66222d3262e96df3423c0449e13cc9

8 years agoMerge pull request dotnet/coreclr#6979 from smile21prc/coreclr-perf
smile21prc [Tue, 30 Aug 2016 17:58:02 +0000 (10:58 -0700)]
Merge pull request dotnet/coreclr#6979 from smile21prc/coreclr-perf

Fixed wrong env vars.

Commit migrated from https://github.com/dotnet/coreclr/commit/3ced297aec8b509cd88d31cf48c45b1d6ac5d8b5

8 years agoFixed wrong env vars.
Smile Wei [Tue, 30 Aug 2016 17:57:13 +0000 (10:57 -0700)]
Fixed wrong env vars.

Commit migrated from https://github.com/dotnet/coreclr/commit/d7c2f438af9867f8f6316a9c7b1181b5afabbba3

8 years agoMove TailcallVerifyWithPrefix test to "baseline x86" exclusion section
Bruce Forstall [Tue, 30 Aug 2016 00:03:51 +0000 (17:03 -0700)]
Move TailcallVerifyWithPrefix test to "baseline x86" exclusion section

This test fails for both legacy x86 JIT as well as RyuJIT. Make that more
clear by moving the exclusion to the "x86 baseline failures" section.

Commit migrated from https://github.com/dotnet/coreclr/commit/85e31570adaf7c40ae30972b4ed0d0b81e29ada4

8 years agoMerge pull request dotnet/coreclr#6970 from BruceForstall/EnableStringArrTest
Bruce Forstall [Tue, 30 Aug 2016 15:42:10 +0000 (08:42 -0700)]
Merge pull request dotnet/coreclr#6970 from BruceForstall/EnableStringArrTest

Re-enable stringarr test

Commit migrated from https://github.com/dotnet/coreclr/commit/62f28d6d7801ce4c691194950798130502a4b13b

8 years agoMerge pull request dotnet/coreclr#6953 from Maoni0/alloc_bytes
Maoni Stephens [Tue, 30 Aug 2016 05:17:54 +0000 (22:17 -0700)]
Merge pull request dotnet/coreclr#6953 from Maoni0/alloc_bytes

added GC.GetAllocatedBytesForCurrentThread API

Commit migrated from https://github.com/dotnet/coreclr/commit/a0468f118017140aa1d47a321e7dfb1870619295

8 years agoRevises UMThunkStub unwindable in ARM/Linux (dotnet/coreclr#6788)
Jonghyun Park [Tue, 30 Aug 2016 02:36:51 +0000 (11:36 +0900)]
Revises UMThunkStub unwindable in ARM/Linux (dotnet/coreclr#6788)

In ARM/Linux, UMThunkStub currently pushes r0-r3 and r12 without .pad,
which results in dotnet/coreclr#6787.

This commit revises the prolog and epilog of UMThunkStub to fix 6787.
(In addition, personality routine is addes as ARM64/AMD64 already does.)

Commit migrated from https://github.com/dotnet/coreclr/commit/f4952b4da7e87f825e49907f36f78ceb5cc46e28

8 years agoMonitor.TryEnter asm timeout != 0 before spin (dotnet/coreclr#6951)
Ben Adams [Tue, 30 Aug 2016 02:23:53 +0000 (03:23 +0100)]
Monitor.TryEnter asm timeout != 0 before spin (dotnet/coreclr#6951)

* JIT_MonTryEnter_Slow timeout != 0 before spin
* JIT_MonTryEnter_InlineGetThread timeout != 0 before spin

Commit migrated from https://github.com/dotnet/coreclr/commit/4f60a817e3ea408a176c74ec0f0ea5e9f151dd61

8 years agoadded GC.GetAllocatedBytesForCurrentThread API
Maoni Stephens [Tue, 30 Aug 2016 01:19:05 +0000 (18:19 -0700)]
added GC.GetAllocatedBytesForCurrentThread API

Commit migrated from https://github.com/dotnet/coreclr/commit/97dd6d2cbb50901cc3651f41a53a4ff9a1052391

8 years agoMerge pull request dotnet/coreclr#6972 from smile21prc/coreclr-perf
smile21prc [Mon, 29 Aug 2016 23:50:36 +0000 (16:50 -0700)]
Merge pull request dotnet/coreclr#6972 from smile21prc/coreclr-perf

Change dir to make sure the right project.json is used.

Commit migrated from https://github.com/dotnet/coreclr/commit/c9df33dbec4f9054237ea84368e52f8d1e8cde7b

8 years agoChange dir to make sure the right project.json is used.
Smile Wei [Mon, 29 Aug 2016 23:50:05 +0000 (16:50 -0700)]
Change dir to make sure the right project.json is used.

Commit migrated from https://github.com/dotnet/coreclr/commit/5f92d1a1e77309fb63a84a589c750bc48e522d51

8 years agoMerge pull request dotnet/coreclr#6971 from smile21prc/coreclr-perf
smile21prc [Mon, 29 Aug 2016 23:35:39 +0000 (16:35 -0700)]
Merge pull request dotnet/coreclr#6971 from smile21prc/coreclr-perf

Add debugging code to find where Microsoft.DotNet.xunit.performance.r…

Commit migrated from https://github.com/dotnet/coreclr/commit/3b59d8db7ea638045eed9523229e0bd33d47a8ac

8 years agoAdd debugging code to find where Microsoft.DotNet.xunit.performance.runner.cli.dll...
Smile Wei [Mon, 29 Aug 2016 23:34:59 +0000 (16:34 -0700)]
Add debugging code to find where Microsoft.DotNet.xunit.performance.runner.cli.dll is deployed.

Commit migrated from https://github.com/dotnet/coreclr/commit/e3ed1aa01488186436765d5719823b3566bc6130

8 years agoRe-enable stringarr test
Bruce Forstall [Mon, 29 Aug 2016 23:22:57 +0000 (16:22 -0700)]
Re-enable stringarr test

I can't get this to fail locally despite thousands of runs.

I fixed the test to detect failure when checking all indices, not
just when checking the last index of the first rank.

Fixes dotnet/coreclr#4844.

Commit migrated from https://github.com/dotnet/coreclr/commit/5aa92e84bd53bbe33be1a0ef3767ea4078bc8fd9

8 years agoMerge pull request dotnet/coreclr#6969 from smile21prc/coreclr-perf
smile21prc [Mon, 29 Aug 2016 23:05:46 +0000 (16:05 -0700)]
Merge pull request dotnet/coreclr#6969 from smile21prc/coreclr-perf

Add steps to install xunit performance packages

Commit migrated from https://github.com/dotnet/coreclr/commit/6f7e802ddda4abcb0380c58b45b1e0f1519725f3

8 years agoAdd steps to install xunit performance packages
Smile Wei [Mon, 29 Aug 2016 23:04:58 +0000 (16:04 -0700)]
Add steps to install xunit performance packages

Commit migrated from https://github.com/dotnet/coreclr/commit/0ed1e5143d298f2e568c974b0b49d5e6990084b2

8 years agoMerge pull request dotnet/coreclr#6968 from smile21prc/coreclr-perf
smile21prc [Mon, 29 Aug 2016 22:41:29 +0000 (15:41 -0700)]
Merge pull request dotnet/coreclr#6968 from smile21prc/coreclr-perf

Add debugging code.

Commit migrated from https://github.com/dotnet/coreclr/commit/3c9a6422c3184654f656826374b9a47710ee4966

8 years agoAdd debugging code.
Smile Wei [Mon, 29 Aug 2016 22:40:52 +0000 (15:40 -0700)]
Add debugging code.

Commit migrated from https://github.com/dotnet/coreclr/commit/5f0cd69815793d1baaf491573b37d170bed2a0a3

8 years agoMerge pull request dotnet/coreclr#6967 from smile21prc/coreclr-perf
smile21prc [Mon, 29 Aug 2016 22:25:53 +0000 (15:25 -0700)]
Merge pull request dotnet/coreclr#6967 from smile21prc/coreclr-perf

Fix wrong dir, and add debugging code.

Commit migrated from https://github.com/dotnet/coreclr/commit/306de8e1cda4c09b9384cb85f254f515c4d071f5

8 years agoFix wrong dir, and add debugging code.
Smile Wei [Mon, 29 Aug 2016 22:24:18 +0000 (15:24 -0700)]
Fix wrong dir, and add debugging code.

Commit migrated from https://github.com/dotnet/coreclr/commit/c040356d9eccba25295f82fc6e66c3d1aecfb30e

8 years agoMerge pull request dotnet/coreclr#6966 from smile21prc/coreclr-perf
smile21prc [Mon, 29 Aug 2016 22:10:18 +0000 (15:10 -0700)]
Merge pull request dotnet/coreclr#6966 from smile21prc/coreclr-perf

Fixed wrong dir.

Commit migrated from https://github.com/dotnet/coreclr/commit/d85c5314de9ae9a27e00d45d32433bbc373df08c

8 years agoFixed wrong dir.
Smile Wei [Mon, 29 Aug 2016 22:09:25 +0000 (15:09 -0700)]
Fixed wrong dir.

Commit migrated from https://github.com/dotnet/coreclr/commit/a52e4fdca49b81072893d45982b314116abd7b50

8 years agoMerge pull request dotnet/coreclr#6964 from BruceForstall/Finish6940
Bruce Forstall [Mon, 29 Aug 2016 21:54:08 +0000 (14:54 -0700)]
Merge pull request dotnet/coreclr#6964 from BruceForstall/Finish6940

Re-enable test DevDiv_255263

Commit migrated from https://github.com/dotnet/coreclr/commit/155db20e5eb6d158e3a60fd795e314fd72b11325

8 years agoEnable return address hijacking for arm64.
Rahul Kumar [Tue, 23 Aug 2016 18:26:50 +0000 (11:26 -0700)]
Enable return address hijacking for arm64.
And also fixes a bug in HijackFrame::GCScanRoots

Commit migrated from https://github.com/dotnet/coreclr/commit/cd43ac9480985c6a08a127ad3ae43fd0e62d6d9c

8 years agoMerge pull request dotnet/coreclr#6963 from smile21prc/coreclr-perf
smile21prc [Mon, 29 Aug 2016 20:44:41 +0000 (13:44 -0700)]
Merge pull request dotnet/coreclr#6963 from smile21prc/coreclr-perf

Rename the script and add debugging steps.

Commit migrated from https://github.com/dotnet/coreclr/commit/ebab1e7a7ed9e1e88b348bc949438733bee60f2c

8 years agoMerge pull request dotnet/coreclr#6961 from dotnet-bot/from-tfs
Bruce Forstall [Mon, 29 Aug 2016 20:34:51 +0000 (13:34 -0700)]
Merge pull request dotnet/coreclr#6961 from dotnet-bot/from-tfs

Merge changes from TFS

Commit migrated from https://github.com/dotnet/coreclr/commit/b063fe04b7147af7854b6e14cb1cf4dd0b062728

8 years agoMerge pull request dotnet/coreclr#6913 from adiaaida/formattingJob
Michelle McDaniel [Mon, 29 Aug 2016 20:17:21 +0000 (13:17 -0700)]
Merge pull request dotnet/coreclr#6913 from adiaaida/formattingJob

Add Formatting job

Commit migrated from https://github.com/dotnet/coreclr/commit/83f75bf4949b3615cf5e2dffb9795972ff83d753

8 years agoRe-enable test DevDiv_255263
Bruce Forstall [Mon, 29 Aug 2016 19:29:47 +0000 (12:29 -0700)]
Re-enable test DevDiv_255263

I forgot to re-enable this test when fixing dotnet/coreclr#6940.

Commit migrated from https://github.com/dotnet/coreclr/commit/01b20f7bd09a4350340ece8ed2a35bc6e8bcded2

8 years ago1. Rename the script to the shell type.
Smile Wei [Mon, 29 Aug 2016 19:07:44 +0000 (12:07 -0700)]
1. Rename the script to the shell type.
2. Added a few lines for debugging.

Commit migrated from https://github.com/dotnet/coreclr/commit/9c7329e875dcb3e563594bb8a6bee04f3be7e466

8 years agoFix file descriptor leak on PAL_IsDebuggerPresent (dotnet/coreclr#6958)
Oguz Bastemur [Mon, 29 Aug 2016 17:53:00 +0000 (19:53 +0200)]
Fix file descriptor leak on PAL_IsDebuggerPresent (dotnet/coreclr#6958)

Commit migrated from https://github.com/dotnet/coreclr/commit/ab61a947efbd3ba8a801330539ff5199bb603b15

8 years agoMerge pull request dotnet/coreclr#6946 from BruceForstall/Fix3597
Bruce Forstall [Mon, 29 Aug 2016 17:39:59 +0000 (10:39 -0700)]
Merge pull request dotnet/coreclr#6946 from BruceForstall/Fix3597

Change RyuJIT/x86 GC encoder to handle LSRA flexibility

Commit migrated from https://github.com/dotnet/coreclr/commit/644796585ea684ee6625e004b52238f492d217bb

8 years agoCleanup/optimize some String.Compare overloads, part 2 (dotnet/coreclr#6891)
James Ko [Mon, 29 Aug 2016 14:32:43 +0000 (10:32 -0400)]
Cleanup/optimize some String.Compare overloads, part 2 (dotnet/coreclr#6891)

* Change signature of CompareOrdinalEx and move arg validation to the call sites
* Change thrown param name from count -> length
* Rename nativeCompareOrdinalEx -> CompareOrdinalHelper

Commit migrated from https://github.com/dotnet/coreclr/commit/255cb7355da9cbfda84bdd09e388ef660eddffe3

8 years agoMerge pull request dotnet/coreclr#6949 from BruceForstall/Fix6940
Bruce Forstall [Sat, 27 Aug 2016 17:50:24 +0000 (10:50 -0700)]
Merge pull request dotnet/coreclr#6949 from BruceForstall/Fix6940

RyuJIT x86: Fix initblk with unrolled loop and constant fill

Commit migrated from https://github.com/dotnet/coreclr/commit/633a65e6e671afdb1379e705cf0ac333bfbcf8b0

8 years agoMerge pull request dotnet/coreclr#6947 from BruceForstall/Fix6097
Bruce Forstall [Sat, 27 Aug 2016 16:15:48 +0000 (09:15 -0700)]
Merge pull request dotnet/coreclr#6947 from BruceForstall/Fix6097

Fix dotnet/coreclr#6097

Commit migrated from https://github.com/dotnet/coreclr/commit/c9068cbaa317111a93e2f4d91770d655dbfddca3

8 years agoMerge pull request dotnet/coreclr#6948 from BruceForstall/Fix4992
Bruce Forstall [Sat, 27 Aug 2016 16:15:28 +0000 (09:15 -0700)]
Merge pull request dotnet/coreclr#6948 from BruceForstall/Fix4992

Fix dotnet/coreclr#4992

Commit migrated from https://github.com/dotnet/coreclr/commit/1e10c6cb6ef2ee5e2629c08166bbdafa7fdf3bbb

8 years agoRyuJIT x86: Fix initblk with unrolled loop and constant fill
Bruce Forstall [Sat, 27 Aug 2016 01:25:42 +0000 (18:25 -0700)]
RyuJIT x86: Fix initblk with unrolled loop and constant fill

The computed fill value was only using the low 8 bytes of the
xmm register; we need it to fill the entire 16 byte register.

Fixes dotnet/coreclr#6940

Commit migrated from https://github.com/dotnet/coreclr/commit/5127eef602e0c0ed5ab7f63a9bc28b81558b2084

8 years agoFix dotnet/coreclr#4992
Bruce Forstall [Sat, 27 Aug 2016 00:12:28 +0000 (17:12 -0700)]
Fix dotnet/coreclr#4992

These tests no longer fail, so re-enable them.

Commit migrated from https://github.com/dotnet/coreclr/commit/264160b2b3d373e9914e1710ce3dc1399193a00b

8 years agoFix dotnet/coreclr#6097
Bruce Forstall [Sat, 27 Aug 2016 00:04:30 +0000 (17:04 -0700)]
Fix dotnet/coreclr#6097

The tests no longer fail (were previously fixed, possibly by LIR work).
Re-enable the related tests.

Commit migrated from https://github.com/dotnet/coreclr/commit/e371f87a5838a96be0bbeb1a23620ccb25fce775

8 years agoAdd missing link to crossgen doc in glossary
Aditya Mandaleeka [Fri, 26 Aug 2016 23:43:01 +0000 (16:43 -0700)]
Add missing link to crossgen doc in glossary

Commit migrated from https://github.com/dotnet/coreclr/commit/baa357de15cefb2763c5f7e851d7d3fe878b2465

8 years agoChange RyuJIT/x86 GC encoder to handle LSRA flexibility
Bruce Forstall [Fri, 26 Aug 2016 23:11:21 +0000 (16:11 -0700)]
Change RyuJIT/x86 GC encoder to handle LSRA flexibility

LSRA allows a variable to have multiple registers over its lifetimes.
The x86 GC encoder did not understand this. It turns out the non-x86
encoder already had fixed this logic in its own copy of the logic.
This change simply checks the lvRegister and lvOnFrame variables
correctly for LSRA.

Fixes dotnet/coreclr#3597

Commit migrated from https://github.com/dotnet/coreclr/commit/8ea7bc7d4908713c509b089a51ae95e469b7bdc2

8 years agoMerge pull request dotnet/coreclr#6938 from CarolEidt/Fix255263
Carol Eidt [Fri, 26 Aug 2016 22:48:49 +0000 (15:48 -0700)]
Merge pull request dotnet/coreclr#6938 from CarolEidt/Fix255263

Fix DevDiv bug 255263

Commit migrated from https://github.com/dotnet/coreclr/commit/160e8572a2847d02d09cdd7dfc7516880b7f2ee8

8 years agoScript to enable coreclr perf run on Linux.
Smile Wei [Fri, 26 Aug 2016 21:54:47 +0000 (14:54 -0700)]
Script to enable coreclr perf run on Linux.

Commit migrated from https://github.com/dotnet/coreclr/commit/e200846060cb29eabf346764313fd3894a630068

8 years agoMerge pull request dotnet/coreclr#6937 from adiaaida/x86Jobs
Michelle McDaniel [Fri, 26 Aug 2016 21:43:15 +0000 (14:43 -0700)]
Merge pull request dotnet/coreclr#6937 from adiaaida/x86Jobs

Enable stress jobs on x86 ryujit

Commit migrated from https://github.com/dotnet/coreclr/commit/62f8f9071035e91a1a485dee81b3ce5b927bf66b

8 years agoMerge pull request dotnet/coreclr#6919 from mellinoe/new-distro-pkgprojs
Eric Mellino [Fri, 26 Aug 2016 21:26:33 +0000 (14:26 -0700)]
Merge pull request dotnet/coreclr#6919 from mellinoe/new-distro-pkgprojs

Add pkgproj's for openSUSE 42.1 and Ubuntu 16.10

Commit migrated from https://github.com/dotnet/coreclr/commit/66caba84fc2319f9741598a4e36034323f33f4a4

8 years agoEnable stress jobs on x86 ryujit
Michelle McDaniel [Wed, 24 Aug 2016 22:13:51 +0000 (15:13 -0700)]
Enable stress jobs on x86 ryujit

We want to be able to run jitstress, gcstress, etc. jobs on ryujit to
monitor our progress. This change adds additional vars to be written to
the TestEnv script for jitstress jobs.

Commit migrated from https://github.com/dotnet/coreclr/commit/eeeae1d8b56c9e7761571748b4c21cd7424ce297

8 years agoMerge pull request dotnet/coreclr#6908 from swaroop-sridhar/retKind
Swaroop Sridhar [Fri, 26 Aug 2016 20:30:07 +0000 (13:30 -0700)]
Merge pull request dotnet/coreclr#6908 from swaroop-sridhar/retKind

GcInfo: Don't use slim header for methods with struct-returns

Commit migrated from https://github.com/dotnet/coreclr/commit/dc52f8b0dcc47beda786d9bfce5b1caafeca5823

8 years agoFix DevDiv bug 255263
Carol Eidt [Thu, 25 Aug 2016 23:55:22 +0000 (16:55 -0700)]
Fix DevDiv bug 255263

This issue arose because we were not considering punpckldq as
one of the 3-operand AVX instructions (which require us to duplicate
the source register when encoding an SSE 2-operand form).
This bug showed up in managed C++, so the test is in IL.
The test is failing in RyuJIT/x86, so issue dotnet/coreclr#6940 has been opened,
and it is disabled for x86.

Commit migrated from https://github.com/dotnet/coreclr/commit/e9d954bf1c6510c0831efbee7711c84e758fa567

8 years agoMerge pull request dotnet/coreclr#6914 from echesakov/ValueNumberingAssertFix
Egor Chesakov [Fri, 26 Aug 2016 19:48:32 +0000 (12:48 -0700)]
Merge pull request dotnet/coreclr#6914 from echesakov/ValueNumberingAssertFix

Bug fix: fgOptimizeBranch loses bbFlags while duplicating the conditional block

Commit migrated from https://github.com/dotnet/coreclr/commit/2476368ac219b27bccdd71809f51688ca65ea25f

8 years agofgOptimizeBranch loses bbFlags while duplicating the block dotnet/coreclr#6886
Egor Chesakov [Wed, 24 Aug 2016 00:35:10 +0000 (17:35 -0700)]
fgOptimizeBranch loses bbFlags while duplicating the block dotnet/coreclr#6886

1. When `fgOptimizeBranch` procedure duplicates the conditional basic block it does
not copy flags of the `bDest` block to the `bJump` block. For example, if a flag
`BBF_HAS_NEWOBJ` was set in `bDest`, but not in `bJump` when the branch optimization
is done the `bbFlags` of `bJump` will not reflect the fact that we have new object
construction in this block.

2. In `DEBUG` always check if `bbFlags` has `BBF_HAS_NEWOBJ` flag set if at least one
`GT_ALLOCOBJ` canonical node found. This helps to identify situations when compiler loses `BBF_HAS_NEWOBJ` flag.

Commit migrated from https://github.com/dotnet/coreclr/commit/12f327477b6c1e18b6db7d0b2ec3445ef3997c17

8 years agoImplement the IEquatable interfaces on IntPtr and UIntPtr (dotnet/coreclr#6921)
James Ko [Fri, 26 Aug 2016 05:33:49 +0000 (01:33 -0400)]
Implement the IEquatable interfaces on IntPtr and UIntPtr (dotnet/coreclr#6921)

Commit migrated from https://github.com/dotnet/coreclr/commit/74ac12bf9966c5f0f6c58b72bbb99b08727c3d4e

8 years agoMake GetHRForException to return e.HResult on non-Windows platforms (dotnet/coreclr...
Jan Kotas [Fri, 26 Aug 2016 01:14:28 +0000 (18:14 -0700)]
Make GetHRForException to return e.HResult on non-Windows platforms (dotnet/coreclr#6929)

Fixes https://github.com/dotnet/corefx/issues/11144

Commit migrated from https://github.com/dotnet/coreclr/commit/9caa82a7b334836b474a89188f2ffb0def582785

8 years agoMerge pull request dotnet/coreclr#6926 from jashook/arm32_ci_update
Jarret Shook [Thu, 25 Aug 2016 23:22:11 +0000 (16:22 -0700)]
Merge pull request dotnet/coreclr#6926 from jashook/arm32_ci_update

Incremental progress addressing dotnet/coreclr#6676

Commit migrated from https://github.com/dotnet/coreclr/commit/7234a53b0e50c330c8e438c36acced507a83e5e0

8 years agoIncremental progress addressing dotnet/coreclr#6676
jashoo [Thu, 25 Aug 2016 21:54:29 +0000 (14:54 -0700)]
Incremental progress addressing dotnet/coreclr#6676

This change is based upon dotnet/coreclr#6910 by sjsinju to fix the arm emulator
running out of space. It changes uses the /opt folder on the main
system drive to /mnt which has a larger local disk.

Commit migrated from https://github.com/dotnet/coreclr/commit/aab8db1993a975866661c21f74dedef9154789a6

8 years agoMove groovy logic to python script
Michelle McDaniel [Thu, 25 Aug 2016 18:27:17 +0000 (11:27 -0700)]
Move groovy logic to python script

Commit migrated from https://github.com/dotnet/coreclr/commit/c7868f2b57bedf2e24475cd30ebea5535b69e12d

8 years agoAvoid unnecessary indirection in char.ToString (dotnet/coreclr#6903)
James Ko [Thu, 25 Aug 2016 22:01:02 +0000 (18:01 -0400)]
Avoid unnecessary indirection in char.ToString (dotnet/coreclr#6903)

Avoid unnecessary indirection in char.ToString

Commit migrated from https://github.com/dotnet/coreclr/commit/76048c739addb3da99ce12e886ded090753b5579

8 years agoAdd pkgproj's for Ubuntu 16.10
Eric Mellino [Thu, 25 Aug 2016 18:38:35 +0000 (11:38 -0700)]
Add pkgproj's for Ubuntu 16.10

Commit migrated from https://github.com/dotnet/coreclr/commit/140a7daa162b4bacdce53de5ae9593fdcb032981

8 years agoAdd pkgproj's for openSUSE 42.1
Eric Mellino [Thu, 25 Aug 2016 18:34:11 +0000 (11:34 -0700)]
Add pkgproj's for openSUSE 42.1

Commit migrated from https://github.com/dotnet/coreclr/commit/ab0da4ca8353eae536b98aaccdf3b6ff34ccff84

8 years agoFix build break. checkin done by tarekms
dotnet-bot [Thu, 25 Aug 2016 21:22:44 +0000 (14:22 -0700)]
Fix build break. checkin done by tarekms

[tfs-changeset: 1624179]

Commit migrated from https://github.com/dotnet/coreclr/commit/36881c795ff582c46fc130b861d5c8c8067fd6dd

8 years agoMerge pull request dotnet/coreclr#6923 from dotnet/revert-6910-sjsinju_devel
Matt Mitchell [Thu, 25 Aug 2016 21:11:37 +0000 (14:11 -0700)]
Merge pull request dotnet/coreclr#6923 from dotnet/revert-6910-sjsinju_devel

Revert "ARM-CI : Fix ARM Emulator vm runs out of space"

Commit migrated from https://github.com/dotnet/coreclr/commit/18983192247694d52f65036ac3448db692ae09a7

8 years agoRevert "ARM-CI : Fix ARM Emulator vm runs out of space"
Matt Mitchell [Thu, 25 Aug 2016 21:08:59 +0000 (14:08 -0700)]
Revert "ARM-CI : Fix ARM Emulator vm runs out of space"

Commit migrated from https://github.com/dotnet/coreclr/commit/ba2deb3900ea854ec2b9d0c3fe89ad4f2a19a118

8 years agoARM-CI : Fix ARM Emulator vm runs out of space (dotnet/coreclr#6910)
Sujin Kim [Thu, 25 Aug 2016 21:01:27 +0000 (06:01 +0900)]
ARM-CI : Fix ARM Emulator vm runs out of space (dotnet/coreclr#6910)

Now, ARM Emulator failed by out of space on tests (6676)
To resolve, a temp folder in the job's workspace is binded to /tmp. and then 'runtest.sh' would be run by some directories binded from /tmp.

Commit migrated from https://github.com/dotnet/coreclr/commit/a0caf5715c05ee75c694303cf08168e95bc19151

8 years agoImprove perf of Encoding.GetEncoding(int) (dotnet/coreclr#6907)
Justin Van Patten [Thu, 25 Aug 2016 18:54:11 +0000 (11:54 -0700)]
Improve perf of Encoding.GetEncoding(int) (dotnet/coreclr#6907)

`Encoding.GetEncoding(int)` caches encoding instances in a `Hashtable`.
This involves locking and boxing the codepage (potentially multiple
times). For the encodings that are already cached in static fields
(e.g. UTF8, Unicode, ASCII, etc.), this is unnecessary overhead --
these instances do not need to be stored in the `Hashtable` because
they are already stored in static fields.

It turns out the only instance that would be stored in the
`Hashtable` in CoreCLR is UTF32BE. Thus, on CoreCLR, we can remove the
use of the `Hashtable` altogether, and instead store the UTF32BE
instance in a static field. This means the `Hashtable` static field,
lock object, and box allocations go away entirely on CoreCLR.

We now check for the encodings that can be cached in static fields in a
switch statement up-front. On Desktop, it then falls back to doing the
`Hashtable`-based lookup/storage, and only boxes codepage once.

Commit migrated from https://github.com/dotnet/coreclr/commit/24918bf5e4bd94547b994a3a3f8d565e972eeac6

8 years agoFix build break. this checkin done by tarekms
dotnet-bot [Thu, 25 Aug 2016 18:41:40 +0000 (11:41 -0700)]
Fix build break. this checkin done by tarekms

[tfs-changeset: 1624145]

Commit migrated from https://github.com/dotnet/coreclr/commit/292f9a3e47cb7c63607fd6a4502dd7ebe18980a8

8 years agoPut back Open key signing on the SOS.NETCore assembly. (dotnet/coreclr#6905)
Mike McLaughlin [Thu, 25 Aug 2016 16:47:52 +0000 (09:47 -0700)]
Put back Open key signing on the SOS.NETCore assembly. (dotnet/coreclr#6905)

Fix failure in SOS if System.Reflection.Metadata is missing.

Commit migrated from https://github.com/dotnet/coreclr/commit/4f0fbd0cbb8606055b222300d68ecd2f44ee2ca4

8 years agoAdd Formatting job
Michelle McDaniel [Mon, 22 Aug 2016 22:13:40 +0000 (15:13 -0700)]
Add Formatting job

This change adds the Windows and Ubuntu formatting jobs to the lab, and
makes them requestable. This also enables them to be run on push. The
jobs do the following:

On Windows:

- Build the Checked/Debug/Release builds as usenmakemakefiles, which
  is a configureonly option (so won't do a full build)
- Download the bootstrap script for jitutils
- Download the correct version of dotnet cli
- Run the bootstrap script
- Run jit-format for Windows_NT Checked/Debug/Release
  dll/standalone/crossgen configurations

On Ubuntu:

- Build release, checked, debug builds of coreclr in configureonly mode.
  This will only run cmake and generate the compile_commands.json
- Install the correct version of dotnet cli
- Install the bootstrap script for jitutils
- Run the bootstrap script
- Run jit format over all configurations for Ubuntu (release, checked,
  debug x dll, standalone, crossgen)

Commit migrated from https://github.com/dotnet/coreclr/commit/cace8ca2ab09601c06ba382552c5a772536d7908

8 years agoMerge pull request dotnet/coreclr#6909 from kouvel/Api
Stephen Toub [Thu, 25 Aug 2016 11:32:21 +0000 (07:32 -0400)]
Merge pull request dotnet/coreclr#6909 from kouvel/Api

Expose constructor with argument for safe handle types instead of con…

Commit migrated from https://github.com/dotnet/coreclr/commit/cba9a2338a8904c12ac4e2e7de8f61001f31b1b5

8 years agoMerge pull request dotnet/coreclr#6898 from benaadams/semaphore-timeout-0
Stephen Toub [Thu, 25 Aug 2016 11:29:39 +0000 (07:29 -0400)]
Merge pull request dotnet/coreclr#6898 from benaadams/semaphore-timeout-0

Semaphoreslim, fail faster for timeout 0

Commit migrated from https://github.com/dotnet/coreclr/commit/8e794b59c0f2823d7668946fc8e683b461f3d795

8 years agoSemaphoreSlim, fail faster for timeout 0
Ben Adams [Wed, 24 Aug 2016 19:02:29 +0000 (20:02 +0100)]
SemaphoreSlim, fail faster for timeout 0

Commit migrated from https://github.com/dotnet/coreclr/commit/21c89ff541d210d4bef04e074c1be962d3104fbc

8 years agoExpose constructor with argument for safe handle types instead of constructor without...
Koundinya Veluri [Thu, 25 Aug 2016 06:37:42 +0000 (23:37 -0700)]
Expose constructor with argument for safe handle types instead of constructor without argument

Commit migrated from https://github.com/dotnet/coreclr/commit/503f879f3093b96372f1b6a9eff0d420cba413c3

8 years agoFix security annotation
Jan Kotas [Thu, 25 Aug 2016 05:38:28 +0000 (22:38 -0700)]
Fix security annotation

[tfs-changeset: 1624088]

Commit migrated from https://github.com/dotnet/coreclr/commit/d76df4f0a056586e2e7ec3b1a9b24173f50813ca

8 years agoCleanup/optimize many string.Compare overloads, part 1 (dotnet/coreclr#6603)
James Ko [Thu, 25 Aug 2016 05:10:46 +0000 (01:10 -0400)]
Cleanup/optimize many string.Compare overloads, part 1 (dotnet/coreclr#6603)

Cleanup, optimize some String.Compare overloads

Commit migrated from https://github.com/dotnet/coreclr/commit/d67f034cf37717b94a97b59b86bde49ae4fbb6af

8 years agoRemove idiv from ThreadPoolWorkQueue:Dequeue loop (dotnet/coreclr#6781)
Ben Adams [Thu, 25 Aug 2016 05:08:53 +0000 (06:08 +0100)]
Remove idiv from ThreadPoolWorkQueue:Dequeue loop (dotnet/coreclr#6781)

Commit migrated from https://github.com/dotnet/coreclr/commit/ff315182efd0754428e6b9be2d4031b8e899f82a

8 years agoGcInfo: Don't use slim header for struct-returns
Swaroop Sridhar [Thu, 25 Aug 2016 01:53:42 +0000 (18:53 -0700)]
GcInfo: Don't use slim header for struct-returns

This checkin has two changes:
1) Add a check to ensure that methods with struct-returns are
use the fat header which encodes ReturnKind in 4 bits.
2) Fix a bug in GetReturnKind().

Commit migrated from https://github.com/dotnet/coreclr/commit/a12ba4633d0fea6792fcb73ed363f49e336f3f62

8 years agoMerge pull request dotnet/coreclr#6883 from gkhanna79/WinArm32
Gaurav Khanna [Thu, 25 Aug 2016 00:58:42 +0000 (17:58 -0700)]
Merge pull request dotnet/coreclr#6883 from gkhanna79/WinArm32

Enable Windows Arm32 build

Commit migrated from https://github.com/dotnet/coreclr/commit/9426f7ed702e5b8cbc4ffb0ad89a2ad7a448c56c

8 years agoBetter lazy initialization for Encoding static properties (dotnet/coreclr#6890)
James Ko [Wed, 24 Aug 2016 23:18:39 +0000 (19:18 -0400)]
Better lazy initialization for Encoding static properties (dotnet/coreclr#6890)

Better lazy initialization for Encoding static properties

Commit migrated from https://github.com/dotnet/coreclr/commit/df50db75953d87485563c7542048f4c1aa402ede

8 years agoRemove extra TypeForward from facade to fix ConfiguredTaskAwaiter (dotnet/coreclr...
Jose Perez Rodriguez [Wed, 24 Aug 2016 23:10:23 +0000 (16:10 -0700)]
Remove extra TypeForward from facade to fix ConfiguredTaskAwaiter (dotnet/coreclr#6899)

Commit migrated from https://github.com/dotnet/coreclr/commit/0da00521a99ae13522697d5fd58f9200c753b9a5

8 years agoFix dotnet/coreclr#3554. (dotnet/coreclr#6880)
Pat Gavlin [Wed, 24 Aug 2016 22:50:04 +0000 (15:50 -0700)]
Fix dotnet/coreclr#3554. (dotnet/coreclr#6880)

On x86, `emitter::emitInsBinary` was calling `genProduceReg` on the
`dst` tree if the source was a contained class field load and the
destination was a register. As per the comment on the offending
function, it is the caller's responsibility to call `genProduceReg`
for the destination register, if any. This was causing errors in
GC ref reporting on x86. This issue did not appear on x64 because
AFAICT we very nearly always morph class field loads into loads of
a `CNS_INT` handle (see morph.cpp:6344 in `fgMorphField` for
details).

Commit migrated from https://github.com/dotnet/coreclr/commit/2c38643f91d98a278d8084c2d776d927a4405e16

8 years agoAdd single separator String.Split overloads (dotnet/coreclr#895)
Justin Van Patten [Wed, 24 Aug 2016 22:34:20 +0000 (15:34 -0700)]
Add single separator String.Split overloads (dotnet/coreclr#895)

Commit migrated from https://github.com/dotnet/coreclr/commit/a352d949e5342e13b1ac1f545711d7f5d12bd8ce

8 years agoMerge pull request dotnet/coreclr#6859 from adiaaida/addNMakeOption
Michelle McDaniel [Wed, 24 Aug 2016 22:12:17 +0000 (15:12 -0700)]
Merge pull request dotnet/coreclr#6859 from adiaaida/addNMakeOption

Update build to optionally configure with nmake

Commit migrated from https://github.com/dotnet/coreclr/commit/7784afd1e33855d8672c4e5075783d7817cb6b39

8 years agoUpdate build to optionally configure with nmake
Michelle McDaniel [Fri, 19 Aug 2016 22:35:25 +0000 (15:35 -0700)]
Update build to optionally configure with nmake

For formatting, we want to be able to obtain the compile_commands.json
file so that we do not have to 1) do a full build of coreclr and 2)
generate it ourselves from the build log. This change modifies build.cmd
to take an option "usenmakemakefiles." This option will set
__NMakeMakefiles to 1, which is used by the gen-buildsys-win.bat script.
This option also sets all the same options as configureonly, as we cannot
do a full build using NMake Makefiles, and we only want to use this to
force CMake to generate a compile_commands.json file for the jit
directory, which it can do using NMake Makefiles, but not Visual Studio.
The update to gen-buildsys-win.bat checks the value of __NMakeMakefiles,
and if it is set to 1, it sets the CMake Generator to NMake Makefiles.

Commit migrated from https://github.com/dotnet/coreclr/commit/7d53e9b49c3cb0802f2cd8542c1f54ec6cd38612

8 years agoMerge pull request dotnet/coreclr#6896 from dotnet-bot/from-tfs
Jan Kotas [Wed, 24 Aug 2016 20:15:05 +0000 (13:15 -0700)]
Merge pull request dotnet/coreclr#6896 from dotnet-bot/from-tfs

Merge changes from TFS

Commit migrated from https://github.com/dotnet/coreclr/commit/03ff9b0b6b7fc7a037f4d03a904ed5da8a208dbb

8 years agoDisabling test against issue 6553 (dotnet/coreclr#6895)
Jan Kotas [Wed, 24 Aug 2016 20:14:05 +0000 (13:14 -0700)]
Disabling test against issue 6553 (dotnet/coreclr#6895)

Commit migrated from https://github.com/dotnet/coreclr/commit/36cf34141d5266b3bca99b9d3cf683725376e2a8

8 years agoAllow Ubuntu 16.10 to use MSBuild (dotnet/coreclr#6897)
Eric Mellino [Wed, 24 Aug 2016 20:13:06 +0000 (13:13 -0700)]
Allow Ubuntu 16.10 to use MSBuild (dotnet/coreclr#6897)

Commit migrated from https://github.com/dotnet/coreclr/commit/7c6f1b70015d7138bfc5ab3731fb894485e521db

8 years agoHandle multi-reg PUTARG_STK nodes. (dotnet/coreclr#6870)
Pat Gavlin [Wed, 24 Aug 2016 19:58:25 +0000 (12:58 -0700)]
Handle multi-reg PUTARG_STK nodes. (dotnet/coreclr#6870)

* Handle multi-reg PUTARG_STK nodes.

When FEATURE_MULTIREG_ARGS is true, a GT_PUTARG_STK node may have a
GT_LIST as a child if the child was originally a multi-reg argument.
Handle this case in `GenTreeUseEdgeIterator`.

Fixes dotnet/coreclr#6583.

* Update the bug number for some ARM64 failures.

These tests are now failing due to a differnt bug.

Commit migrated from https://github.com/dotnet/coreclr/commit/4071333a89d6c9bf240b8291535fdf7acf708642

8 years agoMerge pull request dotnet/coreclr#6894 from adiaaida/morphingLongCall
Michelle McDaniel [Wed, 24 Aug 2016 19:54:59 +0000 (12:54 -0700)]
Merge pull request dotnet/coreclr#6894 from adiaaida/morphingLongCall

Remove NYI for helper calls with long return types

Commit migrated from https://github.com/dotnet/coreclr/commit/6a119e8e4d6c0aba7897069c1a594c02a881102f

8 years agoSome minor changes.
Gaurav Khanna [Wed, 24 Aug 2016 19:33:27 +0000 (12:33 -0700)]
Some minor changes.

Commit migrated from https://github.com/dotnet/coreclr/commit/6b5695013d972fd1239241a6613865749123e0fa

8 years agoMerge pull request dotnet/coreclr#6887 from BruceForstall/Fix6588a
Bruce Forstall [Wed, 24 Aug 2016 18:01:19 +0000 (11:01 -0700)]
Merge pull request dotnet/coreclr#6887 from BruceForstall/Fix6588a

Fix local var ref counts in IND/STOREIND decomposition

Commit migrated from https://github.com/dotnet/coreclr/commit/de35406913bf2fd02dd692c031194017da5dee92

8 years agoMerge pull request dotnet/coreclr#6866 from tarekgh/GlobalizationPorting1
Tarek Mahmoud Sayed [Wed, 24 Aug 2016 17:54:28 +0000 (10:54 -0700)]
Merge pull request dotnet/coreclr#6866 from tarekgh/GlobalizationPorting1

Enable more code under globalization for netcore

Commit migrated from https://github.com/dotnet/coreclr/commit/37f4a5a473ff0ee43536b8aa12eb25238a85aed4

8 years agoFix full framework build
Jan Kotas [Wed, 24 Aug 2016 17:44:37 +0000 (10:44 -0700)]
Fix full framework build

[tfs-changeset: 1623920]

Commit migrated from https://github.com/dotnet/coreclr/commit/afcff256a27d5f04ce899fb8bbd749137fe23417

8 years agoRemove NYI for helper calls with long return types
Michelle McDaniel [Wed, 24 Aug 2016 15:38:48 +0000 (08:38 -0700)]
Remove NYI for helper calls with long return types

The LIR changes fixed the bug in the decomp and the dumper for morphing
nodes into helper calls with long return types, so this NYI can be
removed.

Commit migrated from https://github.com/dotnet/coreclr/commit/53ad9e12cc0cdd94c54d5ef59edb071d6c4ae3b7

8 years agoMerge pull request dotnet/coreclr#6882 from rahku/arm64tests
Rahul Kumar [Wed, 24 Aug 2016 06:32:05 +0000 (23:32 -0700)]
Merge pull request dotnet/coreclr#6882 from rahku/arm64tests

ARM64: update tests.lst

Commit migrated from https://github.com/dotnet/coreclr/commit/809524536f47fc76b2c1864f13a38166bac9db07

8 years agoInitial commit to build Win32 Arm CoreCLR
Gaurav Khanna [Mon, 22 Aug 2016 16:45:43 +0000 (09:45 -0700)]
Initial commit to build Win32 Arm CoreCLR

Commit migrated from https://github.com/dotnet/coreclr/commit/ad7c799eb9a2ae1e7371c75655d4b244e196b239