platform/upstream/dotnet/runtime.git
8 years agoFix ArgumentNullException messages passed as parameter names (dotnet/coreclr#2889)
Hugh Bellamy [Tue, 10 May 2016 14:52:05 +0000 (15:52 +0100)]
Fix ArgumentNullException messages passed as parameter names (dotnet/coreclr#2889)

Fixed several ArgumentNullExceptions that throw with the message as the parameter name, leading to potential confusion for developers.

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

8 years agoAdjust relative offsets in UMThunkStub (dotnet/coreclr#4888)
Jonghyun Park [Tue, 10 May 2016 14:51:26 +0000 (23:51 +0900)]
Adjust relative offsets in UMThunkStub (dotnet/coreclr#4888)

* Adjust relative offsets in UMThunkStub

This commit updates the relative offsets inside UMThunkStub according to the recent changes in
UMThunkStub (for stack unwinding).

* Uses 'UMThunkStub_StackArgsSize' instead of 'UMThunkStub_StackArgsOffset'

This commit revises 'UM2MThunk_WrapperHelper' to use 'UMThunkStub_StackArgsSize'
instead of 'UMThunkStub_StackArgsOffset'.

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

8 years agoMerge pull request dotnet/coreclr#4713 from myungjoo/fix/4712
Jan Kotas [Tue, 10 May 2016 13:34:17 +0000 (06:34 -0700)]
Merge pull request dotnet/coreclr#4713 from myungjoo/fix/4712

Match Inconsistent CMake/MSBuild Compiler Definitions 2

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

8 years agoMerge pull request dotnet/coreclr#4870 from RussKeldorph/illicense
Jan Kotas [Tue, 10 May 2016 13:15:00 +0000 (06:15 -0700)]
Merge pull request dotnet/coreclr#4870 from RussKeldorph/illicense

Update license header in most .il files.

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

8 years agoMerge pull request dotnet/coreclr#4886 from dotnet-bot/from-tfs
Jan Kotas [Tue, 10 May 2016 13:10:55 +0000 (06:10 -0700)]
Merge pull request dotnet/coreclr#4886 from dotnet-bot/from-tfs

Merge changes from TFS

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

8 years agoFixed typo in jitinterface.cpp (dotnet/coreclr#4889)
Valery [Tue, 10 May 2016 12:57:47 +0000 (15:57 +0300)]
Fixed typo in jitinterface.cpp (dotnet/coreclr#4889)

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

8 years agoMerge pull request dotnet/coreclr#4883 from JohnChen0/r2r
John Chen [Tue, 10 May 2016 06:20:49 +0000 (23:20 -0700)]
Merge pull request dotnet/coreclr#4883 from JohnChen0/r2r

Fix CrossGen to skip some methods that require generic dictionary

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

8 years agoMerge pull request dotnet/coreclr#4829 from JohnChen0/master
John Chen [Tue, 10 May 2016 06:19:56 +0000 (23:19 -0700)]
Merge pull request dotnet/coreclr#4829 from JohnChen0/master

Increase a test timeout

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

8 years agoJIT-EE interface changes to support CoreRT
Jan Kotas [Tue, 10 May 2016 05:58:01 +0000 (22:58 -0700)]
JIT-EE interface changes to support CoreRT

- Add flags and constants for reverse PInvoke transitions (https://github.com/dotnet/corert/issues/611)
- Add new multi-dim array constructor that does not use varargs

[tfs-changeset: 1603336]

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

8 years agoFix call to GetSortHandle (dotnet/coreclr#4882)
Matt Ellis [Tue, 10 May 2016 05:33:20 +0000 (22:33 -0700)]
Fix call to GetSortHandle (dotnet/coreclr#4882)

GlobalizationNatvie_GetSortHandle takes a UTF8 encoded string for the
locale name we want to construct a handle to, which is passed to ICU to
open some locale data.

We converted the UTF-16 encoded locale name to UTF8 in managed code, but
neglected to actually ensure the resulting value was null terminated.

Fixes dotnet/coreclr#4784

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

8 years agoMerge pull request dotnet/coreclr#4865 from BruceForstall/JitDumpAssertPtrs
Bruce Forstall [Tue, 10 May 2016 04:05:35 +0000 (21:05 -0700)]
Merge pull request dotnet/coreclr#4865 from BruceForstall/JitDumpAssertPtrs

Don't print pointers to the JitDump

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

8 years agoMerge pull request dotnet/coreclr#4866 from AlexGhiondea/mscorlibUpdates
AlexGhiondea [Tue, 10 May 2016 01:33:32 +0000 (18:33 -0700)]
Merge pull request dotnet/coreclr#4866 from AlexGhiondea/mscorlibUpdates

Create facade and reference assembly for mscorlib.

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

8 years agoMerge pull request dotnet/coreclr#4867 from AndyAyersMS/FixBenchmarkNames
Andy Ayers [Tue, 10 May 2016 01:05:36 +0000 (18:05 -0700)]
Merge pull request dotnet/coreclr#4867 from AndyAyersMS/FixBenchmarkNames

Fix class names for benchmarks

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

8 years agoMerge pull request dotnet/coreclr#4864 from dotnet-bot/from-tfs
Rahul Kumar [Tue, 10 May 2016 01:04:29 +0000 (18:04 -0700)]
Merge pull request dotnet/coreclr#4864 from dotnet-bot/from-tfs

Merge changes from TFS

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

8 years agoFix CrossGen to skip some methods that require generic dictionary
John Chen (CLR) [Mon, 9 May 2016 23:38:54 +0000 (16:38 -0700)]
Fix CrossGen to skip some methods that require generic dictionary

Resolves issue dotnet/coreclr#4801.

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

8 years agoUpdate license header in most .il files.
Russ Keldorph [Mon, 9 May 2016 21:25:36 +0000 (14:25 -0700)]
Update license header in most .il files.

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

8 years agoFix class names for benchmarks
Andy Ayers [Mon, 9 May 2016 20:21:07 +0000 (13:21 -0700)]
Fix class names for benchmarks

Fix a couple of class names for benchmarks so they more accurately
describe the benchmark.

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

8 years agoMerge pull request dotnet/coreclr#4862 from RussKeldorph/pending3
Russ Keldorph [Mon, 9 May 2016 20:19:32 +0000 (13:19 -0700)]
Merge pull request dotnet/coreclr#4862 from RussKeldorph/pending3

Fix conv_ovf_i8_i test

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

8 years agoCreate the project that will generate the facade project
Alex Ghiondea [Mon, 9 May 2016 20:03:14 +0000 (13:03 -0700)]
Create the project that will generate the facade project

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

8 years agoCreate a reference assembly for mscorlib
Alex Ghiondea [Fri, 6 May 2016 20:35:15 +0000 (13:35 -0700)]
Create a reference assembly for mscorlib

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

8 years agoDon't print pointers to the JitDump; output the assertion bitvector as a string.
Bruce Forstall [Mon, 9 May 2016 20:03:50 +0000 (13:03 -0700)]
Don't print pointers to the JitDump; output the assertion bitvector as a string.

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

8 years agoMerge pull request dotnet/coreclr#4852 from mikedn/lsra-reftype
Carol Eidt [Mon, 9 May 2016 19:50:51 +0000 (12:50 -0700)]
Merge pull request dotnet/coreclr#4852 from mikedn/lsra-reftype

Define LSRA's RefType enum via macros

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

8 years agoLet all signals be unblocked on Unix (dotnet/coreclr#4863)
Jan Vorlicek [Mon, 9 May 2016 19:09:55 +0000 (21:09 +0200)]
Let all signals be unblocked on Unix (dotnet/coreclr#4863)

This change removes blocking of all of the 17 signals that we were
blocking. I have looked at the default behavior of their handlers
and we should be fine with it.

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

8 years agoFix desktop build break.
Jeremy Kuhne [Mon, 9 May 2016 18:50:47 +0000 (11:50 -0700)]
Fix desktop build break.

[tfs-changeset: 1603043]

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

8 years agoIncrease a test timeout
John Chen (CLR) [Fri, 6 May 2016 17:26:46 +0000 (10:26 -0700)]
Increase a test timeout

Test case tests/src/GC/Regressions/v2.0-beta2/462651 occasionally fails
due to time out (see issue dotnet/coreclr#3691). Mark it with IsLongRunningGCTest.

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

8 years agoMerge pull request dotnet/coreclr#4828 from AlexGhiondea/systemprivatecorelib
AlexGhiondea [Mon, 9 May 2016 17:28:44 +0000 (10:28 -0700)]
Merge pull request dotnet/coreclr#4828 from AlexGhiondea/systemprivatecorelib

Create System.Private.CoreLib assembly

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

8 years agoMerge pull request dotnet/coreclr#4837 from rahku/crossgen
Rahul Kumar [Mon, 9 May 2016 17:26:50 +0000 (10:26 -0700)]
Merge pull request dotnet/coreclr#4837 from rahku/crossgen

Helpers for ReadyToRun

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

8 years ago[Arm64] Helpers for ReadyToRun
Rahul Kumar [Thu, 5 May 2016 22:53:07 +0000 (15:53 -0700)]
[Arm64] Helpers for ReadyToRun

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

8 years agoDefine LSRA's RefType enum via macros
Mike Danes [Sun, 8 May 2016 17:41:31 +0000 (20:41 +0300)]
Define LSRA's RefType enum via macros

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

8 years agoFix conv_ovf_i8_i test
Russ Keldorph [Fri, 6 May 2016 23:27:37 +0000 (16:27 -0700)]
Fix conv_ovf_i8_i test

Test has at least four problems:
- It assumes native int = int32, so disable it for 64-bit
- It is just wrong in a couple of its assumptions about when overflow
  happens during unsigned conversions.
- On success, it returns 0xAAAA instead of the commonly accepted 100
- It has no copyright header

Also piggybacking a copyright fix for rem_r4.il that I missed earlier

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

8 years agoMerge pull request dotnet/coreclr#4834 from gkhanna79/RemoveSxSJIT
Gaurav Khanna [Mon, 9 May 2016 14:36:36 +0000 (07:36 -0700)]
Merge pull request dotnet/coreclr#4834 from gkhanna79/RemoveSxSJIT

Cleanup sxsJitStartup from codemanager

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

8 years agoFix incremental build restore: move generated test_runtime project.json to bin (dotne...
Davis Goodin [Mon, 9 May 2016 13:20:55 +0000 (08:20 -0500)]
Fix incremental build restore: move generated test_runtime project.json to bin (dotnet/coreclr#4764)

* Move generated test_runtime project.json to bin.

* Update helix tasks to point to moved test_runtime files.

* Remove unnecessary TestRuntimeDependenciesJson property.

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

8 years agoDo NOT overwrite the stack frame pointer (dotnet/coreclr#4857)
Jonghyun Park [Mon, 9 May 2016 09:46:10 +0000 (18:46 +0900)]
Do NOT overwrite the stack frame pointer (dotnet/coreclr#4857)

CallEHFunclet currently overwrite the stack frame pointer (R7) while
recovering the registers.

This commit revises CallEHFunclet not to overwrite R7 when recoverint
the registers.

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

8 years agoLinux/ARM: fix stack alignment breaks (dotnet/coreclr#4858)
MyungJoo Ham [Mon, 9 May 2016 06:55:46 +0000 (15:55 +0900)]
Linux/ARM: fix stack alignment breaks (dotnet/coreclr#4858)

ehhelper.S: the function no more requires dummy stack add.
memcpy.S: C_FUNC(memcpy) has misaligned stack.
  (memcpy.S is not directly related with the issue dotnet/coreclr#4779.
  However, this requires the same fix with ehhelper.S)

Fix dotnet/coreclr#4779

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/6acc1053342b308ab8f6e6f3c979d82a60641bdc

8 years agoMerge pull request dotnet/coreclr#4845 from RussKeldorph/pending
Russ Keldorph [Mon, 9 May 2016 04:44:05 +0000 (21:44 -0700)]
Merge pull request dotnet/coreclr#4845 from RussKeldorph/pending

Fix some tests where the only problem was incorrect retval

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

8 years agoUpdate unix-test-instructions.md
Lubomir Litchev [Mon, 9 May 2016 01:08:08 +0000 (18:08 -0700)]
Update unix-test-instructions.md

Updated run coreclr tests instructions for Linux. Included the new semicolon separated paths for the coreFxBinDir.

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

8 years agoFix some tests where the only problem was incorrect retval
Russ Keldorph [Fri, 6 May 2016 23:27:37 +0000 (16:27 -0700)]
Fix some tests where the only problem was incorrect retval

The following tests return values other than 100 on success.  Modify the
harness to expect the values that they return:
```
JIT\jit64\regress\vsw\102754\test1\test1.cmd
JIT\Regression\CLR-x86-JIT\V1-M09\b16102\b16102\b16102.cmd
```
The following test is identical to `test1` in the same directory.  Delete
it.
```
JIT\jit64\regress\vsw\102754\test2\test2.cmd
```
`rem_r4` returns a non-Unix-compatible 0xAAAA (>255).  Change it to the
standard 100.
```
JIT\IL_Conformance\Old\Conformance_Base\rem_r4\rem_r4.cmd
```
The following were using the non-functional Environment.ExitCode.
Switched to Environment.Exit(Environment.ExitCode):
```
JIT\Methodical\switch\switch1\switch1.cmd
JIT\Methodical\switch\switch10\switch10.cmd
JIT\Methodical\switch\switch11\switch11.cmd
JIT\Methodical\switch\switch2\switch2.cmd
JIT\Methodical\switch\switch3\switch3.cmd
JIT\Methodical\switch\switch4\switch4.cmd
JIT\Methodical\switch\switch5\switch5.cmd
JIT\Methodical\switch\switch6\switch6.cmd
JIT\Methodical\switch\switch7\switch7.cmd
JIT\Methodical\switch\switch8\switch8.cmd
JIT\Methodical\switch\switch9\switch9.cmd
JIT\Methodical\tailcall\_il_dbgrecurse_ep_void\_il_dbgrecurse_ep_void.cmd
JIT\Methodical\tailcall\_il_dbgtest_void\_il_dbgtest_void.cmd
JIT\Methodical\tailcall\_il_relrecurse_ep_void\_il_relrecurse_ep_void.cmd
JIT\Methodical\tailcall\_il_reltest_void\_il_reltest_void.cmd
JIT\Regression\CLR-x86-JIT\V1-M12-Beta2\b65423\b65423\b65423.cmd
JIT\Regression\CLR-x86-JIT\V1.2-M01\b08046\b08046\b08046.cmd
```
Note that `b08046.cmd` is left disabled because it is still failing.

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

8 years agoMerge pull request dotnet/coreclr#4773 from kouvel/CardTableGrowFix3
Koundinya Veluri [Sun, 8 May 2016 18:45:14 +0000 (11:45 -0700)]
Merge pull request dotnet/coreclr#4773 from kouvel/CardTableGrowFix3

Fix recently introduced timing issue when growing the card table

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

8 years agoARM: Fix SOS stack dump command failure (dotnet/coreclr#4774)
SaeHie Park [Sun, 8 May 2016 18:24:26 +0000 (03:24 +0900)]
ARM: Fix SOS stack dump command failure (dotnet/coreclr#4774)

Dumping address pointer for 32bit system needs adjusting for current implementation
while it assumes %p argument is 64bit. This patch changes (ULONG64) casting to SOS_PTR()
so that it will be safe for both 64 and 32bit.
This will fix DumpStack and EEStack segmentation fault problem.

Related issue: dotnet/coreclr#4672

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

8 years agoDisable flaky test (dotnet/coreclr#4846)
Jan Kotas [Sun, 8 May 2016 12:02:50 +0000 (05:02 -0700)]
Disable flaky test (dotnet/coreclr#4846)

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

8 years agoRyuJIT - throughput improvements, PInvoke transitions tweaks: (dotnet/coreclr#4842)
Jan Kotas [Sun, 8 May 2016 04:21:50 +0000 (21:21 -0700)]
RyuJIT - throughput improvements, PInvoke transitions tweaks: (dotnet/coreclr#4842)

* RyuJIT - throughput improvements, PInvoke transitions tweaks:

- Minor compilation throughput improvements:
     - Avoid redundant calls to getMethodAttribs in impMarkInlineCandidate by reusing the value from CALL_INFO
     - Avoid redundant calls to getFunctionEntryPoint in codegen by reusing the value computed during lower
     - Stop checking CORINFO_FLG_NATIVE flag for inliner observations. It is dead flag, not set anywhere
- Tweaks for helper-based PInvoke transitions (used CoreRT only today):
     - Stop emitting CORINFO_HELP_INIT_PINVOKE_FRAME. Just having the two simple begin/end helpers is better.
     - Stop passing size of arguments in secret register.
     - Enable direct calls for PInvoke targets

* Codereview feedback

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

8 years agoMerge pull request dotnet/coreclr#4747 from krytarowski/netbsd-support-75
Aditya Mandaleeka [Sat, 7 May 2016 20:51:11 +0000 (13:51 -0700)]
Merge pull request dotnet/coreclr#4747 from krytarowski/netbsd-support-75

NetBSD: Fix build with LLVM-3.9

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

8 years agoMerge pull request dotnet/coreclr#4843 from dotnet-bot/from-tfs
Aditya Mandaleeka [Sat, 7 May 2016 20:28:58 +0000 (13:28 -0700)]
Merge pull request dotnet/coreclr#4843 from dotnet-bot/from-tfs

Merge changes from TFS

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

8 years agoDelete left-over uses of FeatureHostedBinder
Jan Kotas [Sat, 7 May 2016 18:00:15 +0000 (11:00 -0700)]
Delete left-over uses of FeatureHostedBinder

[tfs-changeset: 1602735]

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

8 years agoMerge pull request dotnet/coreclr#4742 from lemmaa/fix-unit-test-script
Bruce Forstall [Sat, 7 May 2016 15:52:07 +0000 (08:52 -0700)]
Merge pull request dotnet/coreclr#4742 from lemmaa/fix-unit-test-script

Fix 'runtest.sh' script

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

8 years agoMerge pull request dotnet/coreclr#4836 from sivarv/simdPromotion
Sivarv [Sat, 7 May 2016 15:20:57 +0000 (08:20 -0700)]
Merge pull request dotnet/coreclr#4836 from sivarv/simdPromotion

Mark simd type vars as lvRegStruct accurately.

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

8 years agoFixes multidim array Get Accessor for enum datatype (dotnet/coreclr#4808)
Rahul Kumar [Sat, 7 May 2016 14:21:37 +0000 (07:21 -0700)]
Fixes multidim array Get Accessor for enum datatype (dotnet/coreclr#4808)

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

8 years agoUse Buffer.BlockCopy in System.Reflection.Emit (dotnet/coreclr#4812)
James Ko [Sat, 7 May 2016 14:20:18 +0000 (10:20 -0400)]
Use Buffer.BlockCopy in System.Reflection.Emit (dotnet/coreclr#4812)

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

8 years agoFix a typo in NetBSD documentation. (dotnet/coreclr#4841)
Thomas Klausner [Sat, 7 May 2016 14:14:55 +0000 (16:14 +0200)]
Fix a typo in NetBSD documentation. (dotnet/coreclr#4841)

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

8 years agoBuffer.BlockCopy: Avoid double-typechecks for arrays of same type (dotnet/coreclr...
James Ko [Sat, 7 May 2016 14:14:06 +0000 (10:14 -0400)]
Buffer.BlockCopy: Avoid double-typechecks for arrays of same type (dotnet/coreclr#4807)

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

8 years agoRemove FEATURE_HOSTED_BINDER definition (dotnet/coreclr#4838)
Jan Vorlicek [Sat, 7 May 2016 08:47:59 +0000 (10:47 +0200)]
Remove FEATURE_HOSTED_BINDER definition (dotnet/coreclr#4838)

The FEATURE_HOSTED_BINDER is always on so remove it from all the sources.

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

8 years agoMark simd type vars as lvRegStruct accurately.
sivarv [Fri, 6 May 2016 21:36:58 +0000 (14:36 -0700)]
Mark simd type vars as lvRegStruct accurately.

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

8 years agoMerge pull request dotnet/coreclr#4803 from pgavlin/RootBinDir
Pat Gavlin [Fri, 6 May 2016 23:32:18 +0000 (16:32 -0700)]
Merge pull request dotnet/coreclr#4803 from pgavlin/RootBinDir

Add a `bindir` parameter to build.sh.

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

8 years agoMerge pull request dotnet/coreclr#4831 from pgavlin/gh2300
Pat Gavlin [Fri, 6 May 2016 23:23:26 +0000 (16:23 -0700)]
Merge pull request dotnet/coreclr#4831 from pgavlin/gh2300

Move b12011 into testsUnsupportedOutsideWindows.

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

8 years agoMerge pull request dotnet/coreclr#4826 from RussKeldorph/vararg
Russ Keldorph [Fri, 6 May 2016 22:57:36 +0000 (15:57 -0700)]
Merge pull request dotnet/coreclr#4826 from RussKeldorph/vararg

Move Windows-only vararg/arglist tests to the appropriate exclusion file

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

8 years agoMerge pull request dotnet/coreclr#4815 from AndyAyersMS/LegacyPolicyInlineLimit
Andy Ayers [Fri, 6 May 2016 22:22:03 +0000 (15:22 -0700)]
Merge pull request dotnet/coreclr#4815 from AndyAyersMS/LegacyPolicyInlineLimit

Inliner: add JitInlineLimit check to LegacyPolicy under debug

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

8 years agoMerge pull request dotnet/coreclr#4770 from Maoni0/affi
Maoni Stephens [Fri, 6 May 2016 21:53:23 +0000 (14:53 -0700)]
Merge pull request dotnet/coreclr#4770 from Maoni0/affi

enable affinity for GC threads and some bug fixes

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

8 years agoFix Windows x86 exception handling issue (dotnet/coreclr#4830)
Jan Vorlicek [Fri, 6 May 2016 21:51:25 +0000 (23:51 +0200)]
Fix Windows x86 exception handling issue (dotnet/coreclr#4830)

This change fixes an exception handling issue that happens on x86 on Windows
when exception is raised in System.RuntimeType.MakeGenericType.
The problem was caused by GCPROTECT_HOLDER macro in RuntimeTypeHandle::GetTypeByName
that causes popping of GCFrame (and zeroing its m_next field) that's in the middle of the thread's frames list during
the stack unwinding.
That breaks the list and when UnwindFrames happen later and tries to walk the stack, the StackFrameIterator::NextRaw
asserts when checking the validity of the list.
The fix is to move the keepAlive to the managed caller of the RuntimeTypeHandle::GetTypeByName QCall, which removes
the need for the GCPROTECT_HOLDER.
Since it was the only usage of that holder and of the underlying FrameWithCookieHolder class, I've removed those.
In addition to that, I've modified COMModule::GetType and AssemblyNative::GetType to use the same pattern, since
they could also suffer from the problem the GCPROTECT_HOLDER was attempting to fix.

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

8 years agoCleanup sxsJitStartup from codemanager
Gaurav Khanna [Fri, 6 May 2016 21:28:38 +0000 (14:28 -0700)]
Cleanup sxsJitStartup from codemanager

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

8 years agoMerge pull request dotnet/coreclr#4690 from sejongoh/use_rax_for_ret_buf
Sejong Oh [Fri, 6 May 2016 21:25:40 +0000 (14:25 -0700)]
Merge pull request dotnet/coreclr#4690 from sejongoh/use_rax_for_ret_buf

Return RetBuf address via RAX for Windows 64

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

8 years agoMerge pull request dotnet/coreclr#4795 from sivarv/simdret
Sivarv [Fri, 6 May 2016 21:17:50 +0000 (14:17 -0700)]
Merge pull request dotnet/coreclr#4795 from sivarv/simdret

[x64 Unix] Avoid SIMD types returned in two return registers from requiring to go through memory.

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

8 years agoMerge pull request dotnet/coreclr#4791 from kyulee1/fasttailcall
Kyungwoo Lee [Fri, 6 May 2016 20:45:36 +0000 (13:45 -0700)]
Merge pull request dotnet/coreclr#4791 from kyulee1/fasttailcall

ARM64: Enable Fast Tail Call

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

8 years agoARM64: Enable Fast Tail Call
Kyungwoo Lee [Wed, 4 May 2016 20:26:33 +0000 (13:26 -0700)]
ARM64: Enable Fast Tail Call

Fixes https://github.com/dotnet/coreclr/issues/4420
Like x64, enable fast tail call but tail call opt is still off.
This means explicit tail call is converted to epilog + jmp IP0.
Tail call recursive/tail call via helper is still not enabled yet.

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

8 years agoMove b12011 into testsUnsupportedOutsideWindows.
Pat Gavlin [Fri, 6 May 2016 20:08:19 +0000 (13:08 -0700)]
Move b12011 into testsUnsupportedOutsideWindows.

This test requires COM interop.

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

8 years agoAdd a `bindir` parameter to build.sh.
Pat Gavlin [Thu, 5 May 2016 22:13:40 +0000 (15:13 -0700)]
Add a `bindir` parameter to build.sh.

This parameter can be used to redirect the usual output path from
`./bin` to a different directory.

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

8 years agoMerge pull request dotnet/coreclr#4814 from BruceForstall/FixGcRefAssert
Bruce Forstall [Fri, 6 May 2016 19:48:04 +0000 (12:48 -0700)]
Merge pull request dotnet/coreclr#4814 from BruceForstall/FixGcRefAssert

Fix GC ref frame offset range assert

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

8 years agoMerge pull request dotnet/coreclr#4811 from BruceForstall/FixFunctionTrace
Bruce Forstall [Fri, 6 May 2016 19:47:11 +0000 (12:47 -0700)]
Merge pull request dotnet/coreclr#4811 from BruceForstall/FixFunctionTrace

Fix COMPlus_JitFunctionTrace=1 to work better with NYI

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

8 years agoPackage System.Private.CoreLib in the Microsoft.NETCore.Runtime.CoreCLR package.
Alex Ghiondea [Fri, 6 May 2016 19:11:27 +0000 (12:11 -0700)]
Package System.Private.CoreLib in the Microsoft.NETCore.Runtime.CoreCLR package.

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

8 years agoCreate project that builds System.Private.CoreLib assembly.
Alex Ghiondea [Fri, 6 May 2016 19:09:50 +0000 (12:09 -0700)]
Create project that builds System.Private.CoreLib assembly.

This will contain the same sources as mscorlib but will have a different name.

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

8 years agoMerge pull request dotnet/coreclr#4822 from dotnet-bot/from-tfs
Bruce Forstall [Fri, 6 May 2016 19:09:12 +0000 (12:09 -0700)]
Merge pull request dotnet/coreclr#4822 from dotnet-bot/from-tfs

Merge changes from TFS

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

8 years agoenable affinity and numa for GC and some bug fixes
Maoni0 [Wed, 4 May 2016 01:29:46 +0000 (18:29 -0700)]
enable affinity and numa for GC and some bug fixes

double the threshold for balancing onto a remote NUMA node - this was proven to be best with the asp.net benchmark.

enable cpu group

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

8 years agoMerge pull request dotnet/coreclr#4806 from AndyAyersMS/FixInlineDump
Andy Ayers [Fri, 6 May 2016 18:45:46 +0000 (11:45 -0700)]
Merge pull request dotnet/coreclr#4806 from AndyAyersMS/FixInlineDump

Fix inline dump format issue

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

8 years agoMove Windows-only vararg/arglist tests to the appropriate exclusion file
Russ Keldorph [Fri, 6 May 2016 14:58:47 +0000 (07:58 -0700)]
Move Windows-only vararg/arglist tests to the appropriate exclusion file

Our position on vararg/arglist is that it is supported on Windows only, so
I'm repurposing dotnet/coreclr#1440 to simply express that position in the exclusion
files rather than removing the tests.

Fixes dotnet/coreclr#1440

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

8 years agoMerge pull request dotnet/coreclr#4797 from JohnChen0/master
John Chen [Fri, 6 May 2016 06:59:13 +0000 (23:59 -0700)]
Merge pull request dotnet/coreclr#4797 from JohnChen0/master

Remove an assert in AssemblySpec::EmitToken

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

8 years agoMerge pull request dotnet/coreclr#4810 from BruceForstall/Fix4666
Bruce Forstall [Fri, 6 May 2016 03:21:57 +0000 (20:21 -0700)]
Merge pull request dotnet/coreclr#4810 from BruceForstall/Fix4666

Mark EDX as trashed by the no-gc helper calls

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

8 years agoMerge pull request dotnet/coreclr#4819 from BruceForstall/FixRyujitX86CheckedTestRun
Bruce Forstall [Fri, 6 May 2016 03:07:13 +0000 (20:07 -0700)]
Merge pull request dotnet/coreclr#4819 from BruceForstall/FixRyujitX86CheckedTestRun

Disable tests which fail in a RyuJIT/x86 Checked build test run

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

8 years agoMerge pull request dotnet/coreclr#4821 from ellismg/fix-unix-builds
Matt Ellis [Fri, 6 May 2016 01:27:21 +0000 (18:27 -0700)]
Merge pull request dotnet/coreclr#4821 from ellismg/fix-unix-builds

Fix conditional in Unix build definition

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

8 years agoFix conditional in Unix build definition
Matt Ellis [Fri, 6 May 2016 01:12:44 +0000 (18:12 -0700)]
Fix conditional in Unix build definition

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

8 years agoDisable tests which fail in a RyuJIT/x86 Checked build test run
Bruce Forstall [Fri, 6 May 2016 00:57:42 +0000 (17:57 -0700)]
Disable tests which fail in a RyuJIT/x86 Checked build test run

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

8 years agoFix COMPlus_JitFunctionTrace=1 to work better with NYI
Bruce Forstall [Thu, 5 May 2016 23:44:24 +0000 (16:44 -0700)]
Fix COMPlus_JitFunctionTrace=1 to work better with NYI

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

8 years agoFix GC ref frame offset range assert
Bruce Forstall [Fri, 6 May 2016 00:21:27 +0000 (17:21 -0700)]
Fix GC ref frame offset range assert

In emitSetFrameRangeGCRs(), on x86, there is the following assert:
  assert(offsHi <  0);
This is saying that the highest offset of a stack frame gc reference
is negative w.r.t. the frame pointer. This is not quite true: the
highest offset is exclusive of the range (the lowest offset is inclusive).
I found a test case where the 'this' pointer, a gc ref, was located
immediately below the frame pointer, in range [ebp-4,ebp), so offsHi==0.

The reason we don't hit this more is because this assert is only in
the JitDump code (under #ifdef DEBUG and 'if (verbose)'). (This
also seems wrong.)

I changed the assert to (offsHi <= 0).

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

8 years agoThis change ports the support files from NetFxDev1. It doesn't change behavior yet...
Jeremy Kuhne [Fri, 6 May 2016 00:20:27 +0000 (17:20 -0700)]
This change ports the support files from NetFxDev1. It doesn't change behavior yet. Adding a feature for the app context switch for path compat as we don't intend to use it in core.

[tfs-changeset: 1602284]

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

8 years agoInliner: add JitInlineLimit check to LegacyPolicy under debug
Andy Ayers [Thu, 5 May 2016 23:48:53 +0000 (16:48 -0700)]
Inliner: add JitInlineLimit check to LegacyPolicy under debug

Adds the ability to limit the number of inlines done by the LegacyPolicy.
Useful in trying to binary search for inlines that cause correctness
issues.

This limit impacts inlining in all methods, so effective isolation may
also require use of JitNoInlineRange to hone in on the root method that
is the source of problems.

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

8 years agoMark EDX as trashed by the no-gc helper calls
Bruce Forstall [Thu, 5 May 2016 23:35:44 +0000 (16:35 -0700)]
Mark EDX as trashed by the no-gc helper calls

Fixes dotnet/coreclr#4666

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

8 years agoFix inline dump format issue
Andy Ayers [Thu, 5 May 2016 21:51:33 +0000 (14:51 -0700)]
Fix inline dump format issue

Lost some implict casts to float when I updated SIZE_SCALE to an enum
constant, so now make the casts explicit.

Just impacts dump output.

Also, add a newline to LegacyPolicy dump to keep messages distinct.

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

8 years agoReturn RetBuf address via RAX for Windows 64
Sejong Oh [Fri, 29 Apr 2016 21:05:16 +0000 (14:05 -0700)]
Return RetBuf address via RAX for Windows 64

The AMD64 native calling convention requires return buffer address to be
returned by callee in RAX. This changeset makes JIT follow this rule.
Especially, in case that a managed method returns a struct value to its
native caller, the caller reads a pointer to the return value from RAX.

Asm diffs show expected differences such as 'mov rax, reg' at the end of
functions and some different register assignments.

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

8 years agoMerge pull request dotnet/coreclr#4800 from jashook/x86_ci_fix
Jarret Shook [Thu, 5 May 2016 21:18:17 +0000 (14:18 -0700)]
Merge pull request dotnet/coreclr#4800 from jashook/x86_ci_fix

Fix x86 netci changes to build correctly.

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

8 years agoAvoid SIMD type return values from requiring to go through
sivarv [Thu, 5 May 2016 01:32:46 +0000 (18:32 -0700)]
Avoid SIMD type return values from requiring to go through
memory for returning.

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

8 years agoFixup netci changes to build correctly.
jashook [Thu, 5 May 2016 15:54:21 +0000 (08:54 -0700)]
Fixup netci changes to build correctly.

Also more verbosely show which jit and arch the job is.

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

8 years agoMerge pull request dotnet/coreclr#4782 from BruceForstall/NyiLongExTree
Bruce Forstall [Thu, 5 May 2016 16:01:57 +0000 (09:01 -0700)]
Merge pull request dotnet/coreclr#4782 from BruceForstall/NyiLongExTree

RyuJIT/x86: convert SBCG to NYI for multi-level expression trees

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

8 years agoMerge pull request dotnet/coreclr#4792 from dagood/remove-core_root-workaround
Davis Goodin [Thu, 5 May 2016 14:28:41 +0000 (09:28 -0500)]
Merge pull request dotnet/coreclr#4792 from dagood/remove-core_root-workaround

Remove CORE_ROOT workaround

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

8 years agoFollowing the review comments
Sung-Jae Lee [Thu, 5 May 2016 14:08:27 +0000 (23:08 +0900)]
Following the review comments

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

8 years agoRemove an assert in AssemblySpec::EmitToken
John Chen (CLR) [Thu, 5 May 2016 06:11:15 +0000 (23:11 -0700)]
Remove an assert in AssemblySpec::EmitToken

AssemblySpec::EmitToken has a PRECONDITION that prohibits emitting AssemblyRef
tokens to WinMD files, except inside CrossGen. However, there are scenarios,
such as XML serialization, that need to emit such tokens. Thus this PRECONDITION
is removed.

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

8 years agoMerge pull request dotnet/coreclr#4790 from jashook/x86_netci_two
Jarret Shook [Thu, 5 May 2016 05:08:39 +0000 (22:08 -0700)]
Merge pull request dotnet/coreclr#4790 from jashook/x86_netci_two

Add ryujit x86 pr trigger.

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

8 years agoMerge pull request dotnet/coreclr#4767 from ramarag/VSD_ResolveWorker_indirection
Rama krishnan Raghupathy [Thu, 5 May 2016 02:30:08 +0000 (19:30 -0700)]
Merge pull request dotnet/coreclr#4767 from ramarag/VSD_ResolveWorker_indirection

[Arm64] Initialize indirection cell for delegates

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

8 years ago[Arm64] Initialize indirection cell for delegates
Rama Krishnan Raghupathy [Wed, 4 May 2016 01:16:47 +0000 (18:16 -0700)]
[Arm64] Initialize indirection cell for delegates

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

8 years agoMerge pull request dotnet/coreclr#4765 from adityamandaleeka/array_alloc_bounds_check
Aditya Mandaleeka [Thu, 5 May 2016 01:50:00 +0000 (18:50 -0700)]
Merge pull request dotnet/coreclr#4765 from adityamandaleeka/array_alloc_bounds_check

Add fwrapv compile option

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

8 years agoMerge pull request dotnet/coreclr#4780 from mkborg/fix_windows_linuxmscorlib_arm_build
Rahul Kumar [Thu, 5 May 2016 01:25:37 +0000 (18:25 -0700)]
Merge pull request dotnet/coreclr#4780 from mkborg/fix_windows_linuxmscorlib_arm_build

Fix Windows 'linuxmscorlib arm' build

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

8 years agoRemove O_RDWR from sem_open and better error codes on failure (dotnet/coreclr#4772)
Mike McLaughlin [Thu, 5 May 2016 00:42:09 +0000 (17:42 -0700)]
Remove O_RDWR from sem_open and better error codes on failure (dotnet/coreclr#4772)

Remove O_RDWR from sem_open and better error codes on failure

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

8 years agoMerge pull request dotnet/coreclr#4763 from AndyAyersMS/InlineIntoControlExamples
Andy Ayers [Thu, 5 May 2016 00:09:12 +0000 (17:09 -0700)]
Merge pull request dotnet/coreclr#4763 from AndyAyersMS/InlineIntoControlExamples

Add some tests for optimization of booleans

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