platform/upstream/dotnet/runtime.git
7 years agoNarrow TEST instructions when possible
Mike Danes [Sat, 15 Apr 2017 07:46:23 +0000 (10:46 +0300)]
Narrow TEST instructions when possible

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

7 years agoMerge pull request dotnet/coreclr#10911 from adityamandaleeka/handle_table_local_gc_h...
Aditya Mandaleeka [Wed, 12 Apr 2017 19:05:11 +0000 (12:05 -0700)]
Merge pull request dotnet/coreclr#10911 from adityamandaleeka/handle_table_local_gc_hide_internals

[Local GC] Hide handle table internals from VM side

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

7 years agoFix closed delegate deserialization to account for extension methods (dotnet/coreclr...
Koundinya Veluri [Wed, 12 Apr 2017 17:33:52 +0000 (10:33 -0700)]
Fix closed delegate deserialization to account for extension methods (dotnet/coreclr#10901)

Functional fix for dotnet/coreclr#9597:
- The code was incorrectly assuming that the serialized target type info refers to the target object's type; it actually refers to the method's reflected type, which may not be the same type when it's an extension method

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

7 years agoMerge pull request dotnet/coreclr#10243 from sdmaclea/PR-CALLI-LOWERING-ALLOWED
Bruce Forstall [Wed, 12 Apr 2017 17:12:18 +0000 (10:12 -0700)]
Merge pull request dotnet/coreclr#10243 from sdmaclea/PR-CALLI-LOWERING-ALLOWED

Allow target of calli to be lowered to ldc.i4

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

7 years agoNS2.0 AssemblyName.ReferenceMatchesDefinition() (dotnet/coreclr#10919)
Atsushi Kanamori [Wed, 12 Apr 2017 16:50:26 +0000 (09:50 -0700)]
NS2.0 AssemblyName.ReferenceMatchesDefinition() (dotnet/coreclr#10919)

This api was broken from its debut in 2.0 (and yet somehow
scored a 2.9% on .NET api catalog)

 https://connect.microsoft.com/VisualStudio/feedback/details/752902/assemblyname-referencematchesdefinition-returns-true-even-though-the-parameters-dont-match

In 2012, the MSDN docs were changed to match its broken behavior:

   Return Value
   Type: System.Boolean
   true if the simple assembly names are the same; otherwise, false.

   Remarks

   The comparison depends only on the simple assembly name. It ignores version, culture, and public key token.

A more accurate description would be:

   This api takes the simple names of the ref and def.
   Then it parses the simple names *as if they were*
   full-blown assembly names with optional Version, Culture
   and PKT (!)

   Then it applies a RefToDef test to that name using a test
   that's quite separate from the one used by the actual
   CoreCLR loader (so any similarities between
   it and the actual binding rules is purely coincidental.)

   Oh, and that code assumes the Def name came from trusted
   sources so if it's has a null Culture property, it NULL-AV's.

We could replicate this behavior on CoreRT (relying on
its own AssemblyBinder) but the more I progressed, the
more the venture failed to pass the laugh test (though
at least we got a nice AssemblyBinder cleanup
as a side effect.)

So what we'll do is make the api behavior match the
MSDN description (and likely come close enough to the compat bar)
but in a more straightforward fashion.

(The RefMatchesDef routine is used on one case - to
match assembly refs against a list of friend-access
assembly defs. So it's not quite dead code though
it probably should be.)

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

7 years agoMerge pull request dotnet/coreclr#10904 from BruceForstall/ArmMergeCodegenFuncs
Bruce Forstall [Wed, 12 Apr 2017 16:17:17 +0000 (09:17 -0700)]
Merge pull request dotnet/coreclr#10904 from BruceForstall/ArmMergeCodegenFuncs

Merge similar arm32/arm64 codegen functions

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

7 years ago[x86/Linux] Funclet-based synchronization (dotnet/coreclr#10791)
Jonghyun Park [Wed, 12 Apr 2017 16:02:35 +0000 (01:02 +0900)]
[x86/Linux] Funclet-based synchronization (dotnet/coreclr#10791)

* [x86/Linux] Funclet-based synchronization

* Fix x86/Windows build error

* Revise per feedback

* Fix format error

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

7 years agoMerge pull request dotnet/coreclr#10852 from mskvortsov/ryujit-arm32-ldst-offset
Bruce Forstall [Wed, 12 Apr 2017 16:00:34 +0000 (09:00 -0700)]
Merge pull request dotnet/coreclr#10852 from mskvortsov/ryujit-arm32-ldst-offset

[RyuJIT/ARM32] Encodable offsets for ld/st

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

7 years agoUpdate CoreClr to preview1-25212-04 (dotnet/coreclr#10879)
dotnet bot [Wed, 12 Apr 2017 15:05:37 +0000 (08:05 -0700)]
Update CoreClr to preview1-25212-04 (dotnet/coreclr#10879)

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

7 years agoFix resource string name
Jan Kotas [Wed, 12 Apr 2017 02:33:08 +0000 (19:33 -0700)]
Fix resource string name

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

7 years agoDelete moved files
Jan Kotas [Wed, 12 Apr 2017 01:18:07 +0000 (18:18 -0700)]
Delete moved files

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/fa73128a92577d5e1baee3877f71f5c1adac2bcd

7 years agoChange default clang version to clang3.9 in cross build (dotnet/coreclr#10889)
Jiyoung Giuliana Yun [Wed, 12 Apr 2017 12:11:03 +0000 (21:11 +0900)]
Change default clang version to clang3.9 in cross build (dotnet/coreclr#10889)

If we use clang3.9 version, we will use O3 option for optimization.
Otherwise, use O1 option as before.

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

7 years agoRyuJIT/ARM32: encodable offsets for ld/st
Mikhail Skvortcov [Wed, 12 Apr 2017 06:18:08 +0000 (09:18 +0300)]
RyuJIT/ARM32: encodable offsets for ld/st

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

7 years agoRename overloaded "table" to "store" for VM side concept.
Aditya Mandaleeka [Wed, 12 Apr 2017 01:49:44 +0000 (18:49 -0700)]
Rename overloaded "table" to "store" for VM side concept.

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

7 years agoFix CI tizen build error (dotnet/coreclr#10909)
Hyeongseok Oh [Wed, 12 Apr 2017 01:54:52 +0000 (10:54 +0900)]
Fix CI tizen build error (dotnet/coreclr#10909)

Fix CI tizen build error caused by chmod

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

7 years agoHide knowledge of handle table buckets and home heaps from VM side.
Aditya Mandaleeka [Wed, 12 Apr 2017 01:28:03 +0000 (18:28 -0700)]
Hide knowledge of handle table buckets and home heaps from VM side.

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

7 years agoDelete Ref_ContainHandle and ContainsOBJECTHANDLE.
Aditya Mandaleeka [Wed, 12 Apr 2017 01:08:08 +0000 (18:08 -0700)]
Delete Ref_ContainHandle and ContainsOBJECTHANDLE.

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

7 years agoAdd GetNewHandleTable and GetGlobalHandleTable to interface.
Aditya Mandaleeka [Wed, 12 Apr 2017 01:05:05 +0000 (18:05 -0700)]
Add GetNewHandleTable and GetGlobalHandleTable to interface.

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

7 years agoRemove GetHandleTableForHandle and add CreateDuplicateHandle.
Aditya Mandaleeka [Wed, 12 Apr 2017 00:58:14 +0000 (17:58 -0700)]
Remove GetHandleTableForHandle and add CreateDuplicateHandle.

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

7 years agoReplace GetHandleTableContext with GetHandleContext.
Aditya Mandaleeka [Wed, 12 Apr 2017 00:50:13 +0000 (17:50 -0700)]
Replace GetHandleTableContext with GetHandleContext.

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

7 years agoMerge pull request dotnet/coreclr#10882 from adityamandaleeka/double_init_appdomain_c...
Aditya Mandaleeka [Wed, 12 Apr 2017 01:27:23 +0000 (18:27 -0700)]
Merge pull request dotnet/coreclr#10882 from adityamandaleeka/double_init_appdomain_creation

Remove double initialization of variables in app domain creation

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

7 years agoMerge pull request dotnet/coreclr#10877 from adityamandaleeka/handle_table_local_gc_n...
Aditya Mandaleeka [Wed, 12 Apr 2017 00:53:56 +0000 (17:53 -0700)]
Merge pull request dotnet/coreclr#10877 from adityamandaleeka/handle_table_local_gc_nullchecks

[Local GC] Move handle null checking code to VM side

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

7 years agoMove files to shared CoreLib partition (dotnet/coreclr#10885)
Jan Kotas [Wed, 12 Apr 2017 00:44:40 +0000 (17:44 -0700)]
Move files to shared CoreLib partition (dotnet/coreclr#10885)

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

7 years agoMerge pull request dotnet/coreclr#10816 from adityamandaleeka/handle_table_local_gc_init
Aditya Mandaleeka [Wed, 12 Apr 2017 00:36:38 +0000 (17:36 -0700)]
Merge pull request dotnet/coreclr#10816 from adityamandaleeka/handle_table_local_gc_init

[Local GC] Move handle destruction code to IGCHandleTable

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

7 years agoMerge pull request dotnet/coreclr#10907 from wtgodbe/BuildTypeReporting2
William Godbe [Wed, 12 Apr 2017 00:03:05 +0000 (17:03 -0700)]
Merge pull request dotnet/coreclr#10907 from wtgodbe/BuildTypeReporting2

Pass null instead of empty for PB_BuildType

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

7 years agoPass null instead of empty for PB_BuildType
wtgodbe [Wed, 12 Apr 2017 00:02:47 +0000 (17:02 -0700)]
Pass null instead of empty for PB_BuildType

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

7 years agoMerge pull request dotnet/coreclr#10906 from wtgodbe/BuildTypeReporting
William Godbe [Tue, 11 Apr 2017 23:56:15 +0000 (16:56 -0700)]
Merge pull request dotnet/coreclr#10906 from wtgodbe/BuildTypeReporting

Pass PB_BuildType as a Pipeline ReportingParameter

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

7 years agoPass PB_BuildType as a Pipeline ReportingParameter
wtgodbe [Tue, 11 Apr 2017 23:55:34 +0000 (16:55 -0700)]
Pass PB_BuildType as a Pipeline ReportingParameter

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

7 years agoMerge pull request dotnet/coreclr#10899 from wtgodbe/PipelineReporting
William Godbe [Tue, 11 Apr 2017 23:37:34 +0000 (16:37 -0700)]
Merge pull request dotnet/coreclr#10899 from wtgodbe/PipelineReporting

Add last set of reportingParameters to pipelines.json

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

7 years agoMerge similar arm32/arm64 codegen functions
Bruce Forstall [Tue, 11 Apr 2017 23:36:18 +0000 (16:36 -0700)]
Merge similar arm32/arm64 codegen functions

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

7 years agoAdd last set of reportingParameters to pipelines.json
wtgodbe [Tue, 11 Apr 2017 20:03:45 +0000 (13:03 -0700)]
Add last set of reportingParameters to pipelines.json

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

7 years agoMerge pull request dotnet/coreclr#10867 from AndyAyersMS/FixSingleDefBug
Andy Ayers [Tue, 11 Apr 2017 21:31:11 +0000 (14:31 -0700)]
Merge pull request dotnet/coreclr#10867 from AndyAyersMS/FixSingleDefBug

Jit: fix issue with single-def type propagation

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

7 years agoCoreFx dotnet/coreclr#15622 Dictionary<TKey, TValue>.Remove(TKey, out TValue) (dotnet...
Mandar Sahasrabuddhe [Tue, 11 Apr 2017 20:43:22 +0000 (02:13 +0530)]
CoreFx dotnet/coreclr#15622 Dictionary<TKey, TValue>.Remove(TKey, out TValue) (dotnet/coreclr#10203)

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

7 years agoMerge pull request dotnet/coreclr#10880 from BruceForstall/ArmCommon
Bruce Forstall [Tue, 11 Apr 2017 20:38:37 +0000 (13:38 -0700)]
Merge pull request dotnet/coreclr#10880 from BruceForstall/ArmCommon

Create common files for ARM32 and ARM64 common code

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

7 years agoMerge pull request dotnet/coreclr#10876 from pgavlin/VSO406156
Pat Gavlin [Tue, 11 Apr 2017 20:29:23 +0000 (13:29 -0700)]
Merge pull request dotnet/coreclr#10876 from pgavlin/VSO406156

Fix a few errors in cast decomposition.

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

7 years agoMove a few more types from CoreFX to CoreLib (dotnet/coreclr#10893)
Jan Kotas [Tue, 11 Apr 2017 20:22:50 +0000 (13:22 -0700)]
Move a few more types from CoreFX to CoreLib (dotnet/coreclr#10893)

Reducing shards between CoreCLR and CoreRT shards

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

7 years agoMerge pull request dotnet/coreclr#10894 from dotnet/Add_Build_Type
Matt Galbraith [Tue, 11 Apr 2017 18:39:27 +0000 (11:39 -0700)]
Merge pull request dotnet/coreclr#10894 from dotnet/Add_Build_Type

Add some BuildType and Subtype info to CoreCLR build pipeline definition

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#3288 from dotnet/nmirror
Jan Kotas [Tue, 11 Apr 2017 16:00:23 +0000 (09:00 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3288 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/fb86c0294a999b2c7bd1e13da1fdc0d3c2f701e5

7 years agoCreate common files for ARM32 and ARM64 common code
Bruce Forstall [Tue, 11 Apr 2017 02:01:34 +0000 (19:01 -0700)]
Create common files for ARM32 and ARM64 common code

Create codegenarmarch.cpp, lowerarmarch.cpp, lsraarmarch.cpp.

For codegenarmarch.cpp, I copied over a bunch of functions that
are almost identical between arm and arm64. I left the functions
intact (didn't change anything), so created one for ARM32 and
one for ARM64, unless they were truly identical. A follow-up
will be to actually merge the functions.

For lowerarmarch.cpp and lsraarmarch.cpp, I did the function
merge for nearly (or completely) identical functions, since
there were so many that were so similar.

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

7 years agoAdd some BuildType and Subtype info to CoreCLR build pipeline definition
Matt Galbraith [Tue, 11 Apr 2017 17:25:51 +0000 (10:25 -0700)]
Add some BuildType and Subtype info to CoreCLR build pipeline definition

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

7 years agoMerge pull request dotnet/coreclr#10886 from hseok-oh/ci/fix_ci_error
Pat Gavlin [Tue, 11 Apr 2017 17:18:57 +0000 (10:18 -0700)]
Merge pull request dotnet/coreclr#10886 from hseok-oh/ci/fix_ci_error

Fix CI test error: permission error

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#3285 from dotnet/nmirror
Jan Kotas [Tue, 11 Apr 2017 02:37:42 +0000 (19:37 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3285 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/2030affc40ac0842db56b4c3ae2b3e8751fa06a4

7 years agoRemove sudo in netci.groovy
Hyeongseok Oh [Tue, 11 Apr 2017 08:08:43 +0000 (17:08 +0900)]
Remove sudo in netci.groovy

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

7 years agoOverwrite permission in coreoverlay generation
Hyeongseok Oh [Tue, 11 Apr 2017 07:49:34 +0000 (16:49 +0900)]
Overwrite permission in coreoverlay generation

fix runtest.sh to overwrite corerun's permission in coreoverlay generation

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

7 years agoFix netci.groovy
Hyeongseok Oh [Tue, 11 Apr 2017 07:47:27 +0000 (16:47 +0900)]
Fix netci.groovy

Fix netci.groovy instead of test script to avoid rebase

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

7 years agoFix CI test error: permission error
Hyeongseok Oh [Tue, 11 Apr 2017 07:12:10 +0000 (16:12 +0900)]
Fix CI test error: permission error

Fix CoreCLR/CoreFX copy order: permission problem

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

7 years agoDo not spill eeStack after ldtoken opcode. (dotnet/coreclr#10215)
Sergey Andreenko [Tue, 11 Apr 2017 03:53:38 +0000 (20:53 -0700)]
Do not spill eeStack after ldtoken opcode. (dotnet/coreclr#10215)

Do not spill eeStack if the last opcode was ldtoken.

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

7 years agoRemove double initialization of variables in app domain creation.
Aditya Mandaleeka [Tue, 11 Apr 2017 03:21:07 +0000 (20:21 -0700)]
Remove double initialization of variables in app domain creation.

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

7 years agoFix some static methods on ThreadPool to wait for initialization (dotnet/coreclr...
Koundinya Veluri [Tue, 11 Apr 2017 02:48:54 +0000 (19:48 -0700)]
Fix some static methods on ThreadPool to wait for initialization (dotnet/coreclr#10869)

Fix for part of dotnet/coreclr#10521

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

7 years agoMerge pull request dotnet/coreclr#10782 from parjong/fix/x86_funclet_unwinding
Bruce Forstall [Tue, 11 Apr 2017 01:50:10 +0000 (18:50 -0700)]
Merge pull request dotnet/coreclr#10782 from parjong/fix/x86_funclet_unwinding

[x86/Linux] Use GCInfo for funclet unwinding

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

7 years agoMove handle null checks to VM side.
Aditya Mandaleeka [Fri, 7 Apr 2017 00:57:25 +0000 (17:57 -0700)]
Move handle null checks to VM side.

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

7 years agoUpdate CoreClr to preview1-25210-04 (dotnet/coreclr#10862)
dotnet bot [Tue, 11 Apr 2017 01:02:57 +0000 (18:02 -0700)]
Update CoreClr to preview1-25210-04 (dotnet/coreclr#10862)

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

7 years agoMerge pull request dotnet/coreclr#10871 from pgavlin/PipelineCompatJit
Pat Gavlin [Tue, 11 Apr 2017 00:12:40 +0000 (17:12 -0700)]
Merge pull request dotnet/coreclr#10871 from pgavlin/PipelineCompatJit

Package compatjit.dll in pipeline builds.

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

7 years agoMerge pull request dotnet/coreclr#10866 from pgavlin/VSO405852
Pat Gavlin [Mon, 10 Apr 2017 23:58:46 +0000 (16:58 -0700)]
Merge pull request dotnet/coreclr#10866 from pgavlin/VSO405852

Fix VSO bug 405852.

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

7 years agoFix a few errors in cast decomposition.
Pat Gavlin [Mon, 10 Apr 2017 23:26:17 +0000 (16:26 -0700)]
Fix a few errors in cast decomposition.

The cursor was not guaranteed to be in the correct location after cast
decomposition due to the location in which the high result was typically
placed. This mispositioning can cause re-decomposition, which can lead
to asserts e.g. when encountering a GT_LONG node that was left behind by
a previously-decomposed node. This change ensures that the high result
immediately follows the cast node so that the cursor will be in the
correct location following decomposition of the cast.

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

7 years agoempty array (dotnet/coreclr#10841)
Dan Moseley [Mon, 10 Apr 2017 23:20:05 +0000 (16:20 -0700)]
empty array (dotnet/coreclr#10841)

Make EmptyArray private in favor of Array.Empty<T>

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

7 years agoMerge pull request dotnet/coreclr#10814 from rartemev/ilasm_reference_resolver_fix
Roman Artemev [Mon, 10 Apr 2017 22:55:54 +0000 (15:55 -0700)]
Merge pull request dotnet/coreclr#10814 from rartemev/ilasm_reference_resolver_fix

Added 'netstandard' corelib name into ilasm reference resolver

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

7 years agoMerge pull request dotnet/coreclr#10808 from sdmaclea/PR-ARM64-enable-initblk-unroll
Bruce Forstall [Mon, 10 Apr 2017 22:55:14 +0000 (15:55 -0700)]
Merge pull request dotnet/coreclr#10808 from sdmaclea/PR-ARM64-enable-initblk-unroll

[Arm64] enable initblk loop unrolling

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

7 years agoExtract genInterruptible setting as a separate region
Jonghyun Park [Mon, 10 Apr 2017 22:50:56 +0000 (07:50 +0900)]
Extract genInterruptible setting as a separate region

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

7 years agoUse hasPartialArgInfo instead of isPartialArgInfo
Jonghyun Park [Mon, 10 Apr 2017 22:49:08 +0000 (07:49 +0900)]
Use hasPartialArgInfo instead of isPartialArgInfo

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

7 years agoadd test with deep execution tree without stores. (dotnet/coreclr#10835)
Sergey Andreenko [Mon, 10 Apr 2017 22:41:54 +0000 (15:41 -0700)]
add test with deep execution tree without stores. (dotnet/coreclr#10835)

Add a test that should fail with stack overflow if the compiler doesn't spill trees from time to time.

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

7 years agoPackage compatjit.dll in pipeline builds.
Pat Gavlin [Mon, 10 Apr 2017 22:27:07 +0000 (15:27 -0700)]
Package compatjit.dll in pipeline builds.

Just what it says on the tin.

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

7 years agoFormat code.
Pat Gavlin [Mon, 10 Apr 2017 22:13:58 +0000 (15:13 -0700)]
Format code.

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

7 years agoMove handle destruction code to IGCHandleTable.
Aditya Mandaleeka [Fri, 7 Apr 2017 22:58:29 +0000 (15:58 -0700)]
Move handle destruction code to IGCHandleTable.

Conflicts:
src/vm/gchandletableutilities.h

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

7 years agoFix VSO bug 405852.
Pat Gavlin [Mon, 10 Apr 2017 21:17:08 +0000 (14:17 -0700)]
Fix VSO bug 405852.

This bug was due to a mismatch between the semantics of the FP modulus
operator as specified by ECMA-335 and as implemented by value numbering.

ECMA-335 requires the following behavior for FP modulus:
- If the divisor is 0 or the dividend is not finite, the result is NaN
- If the divisor is not finite and is not NaN, the result is the
  dividend.
Value numbering, however, simply used `fmod`, which does not have these
semantics. This change implements the required semantics in VN.

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

7 years agoAdd back UnmanagedType.LPUTF8Str (dotnet/coreclr#10859)
Jan Kotas [Mon, 10 Apr 2017 20:57:03 +0000 (13:57 -0700)]
Add back UnmanagedType.LPUTF8Str (dotnet/coreclr#10859)

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

7 years agoCoreLib Build System portability updates (dotnet/coreclr#10839)
Rew [Mon, 10 Apr 2017 20:06:49 +0000 (16:06 -0400)]
CoreLib Build System portability updates (dotnet/coreclr#10839)

Updates to corelib project file for target specific includes.  Intended
to ease maintainability of existing targets and clarify necessary work
for new targets.

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

7 years agoFix contract to allow call into GarbageCollect() to throw (dotnet/coreclr#10856)
Koundinya Veluri [Mon, 10 Apr 2017 20:00:48 +0000 (13:00 -0700)]
Fix contract to allow call into GarbageCollect() to throw (dotnet/coreclr#10856)

I did not intend to mark this function as NOTHROW, and there is no reason to expect NOTHROW here. Other functions that call into GarbageCollect() allow THROWS.

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

7 years agoMerge pull request dotnet/coreclr#10823 from adityamandaleeka/move_variable_handle_cr...
Aditya Mandaleeka [Mon, 10 Apr 2017 19:53:41 +0000 (12:53 -0700)]
Merge pull request dotnet/coreclr#10823 from adityamandaleeka/move_variable_handle_creation

Refactor variable strength handle creation

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

7 years agoAdd empty System.Runtime.CompilerServices.RuntimeFeature.IsSupported() API (dotnet...
Omar Tawfik [Mon, 10 Apr 2017 19:52:22 +0000 (12:52 -0700)]
Add empty System.Runtime.CompilerServices.RuntimeFeature.IsSupported() API (dotnet/coreclr#10779)

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

7 years agoAdded netstandard corelib into ilasm reference resolver
Roman Artemev [Fri, 7 Apr 2017 23:07:14 +0000 (16:07 -0700)]
Added netstandard corelib into ilasm reference resolver

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

7 years agoFix perf penalty for creating dictionaries the easy way. (dotnet/coreclr#10855)
Atsushi Kanamori [Mon, 10 Apr 2017 19:43:24 +0000 (12:43 -0700)]
Fix perf penalty for creating dictionaries the easy way. (dotnet/coreclr#10855)

We went to the trouble of mitigating the perf hit
introduced by using randomized string hashing.

I assume that said perf benefit wasn't meant to be denied
to the 90% case where people use the nullary
constructor to create the Dictionary...

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

7 years agoJit: fix issue with single-def type propagation
Andy Ayers [Mon, 10 Apr 2017 19:05:49 +0000 (12:05 -0700)]
Jit: fix issue with single-def type propagation

To avoid overly aggressive type propagation when there are multiple
reaching definitions, only propagate types to single-IL-def locals
when the definiting value comes from the same basic block as the store.
We check this conservatively by insisting that the block's entry stack
be empty.

Added a test case where the jit will improperly devirtualize without
such a check.

Closes dotnet/coreclr#10858.

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

7 years ago[Arm64] Cleanup/fix InitBlkUnroll
Steve MacLean, Qualcomm Datacenter Technologies, Inc [Mon, 10 Apr 2017 15:15:58 +0000 (15:15 +0000)]
[Arm64] Cleanup/fix InitBlkUnroll

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

7 years agoUpdate CoreFx to preview1-25210-01 (dotnet/coreclr#10850)
dotnet bot [Mon, 10 Apr 2017 18:18:31 +0000 (11:18 -0700)]
Update CoreFx to preview1-25210-01 (dotnet/coreclr#10850)

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

7 years agoImplement slicing APIs for ArraySegment<T> (dotnet/coreclr#9926)
James Ko [Mon, 10 Apr 2017 17:26:12 +0000 (13:26 -0400)]
Implement slicing APIs for ArraySegment<T> (dotnet/coreclr#9926)

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

7 years agoIncorrect parameter order found by PVS-Studio (dotnet/coreclr#10497)
Ilya [Mon, 10 Apr 2017 17:21:41 +0000 (20:21 +0300)]
Incorrect parameter order found by PVS-Studio (dotnet/coreclr#10497)

* Incorrect parameter order found by PVS-Studio
I used PVS-Studio static analyzer to check this project. I would like to suggest a variant of the way to fix the error, detected with the help of V3066 diagnostic https://www.viva64.com/en/w/V3066/

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

7 years agoGet rid of "#if FEATURE_RANDOMIZED_STRING_HASHING" in shared partition. (dotnet/corec...
Atsushi Kanamori [Mon, 10 Apr 2017 17:14:09 +0000 (10:14 -0700)]
Get rid of "#if FEATURE_RANDOMIZED_STRING_HASHING" in shared partition. (dotnet/coreclr#10851)

Since CoreCLR defines it (for now) and CoreRT doesn't, let's not have
"#if's" on this in shared code. It just creates confusion.

The only ones are in StringComparer.cs and fortunately, they are quite
expendable as...

1. It's only purpose is serialize Hashtables and Dictionaries in
   a way that CLR 1.1 can deserialize them. We don't care about that in
   .NET Core.

2. In CoreCLR as of today, this infrastructure is not changing the serialization
   blob one iota since all the GetEqualityComparerForSerialization() methods
   return "this."

So this removes the appearance of downgrading the comparers to non-randomized
versions for serialization purposes (and yes, we could go on and remove
all the other "let's do it for Everett and RTM" stuff in Hashtable.cs, but
I want to keep this PR on topic. Hashtable.cs is not going to be imported
into CoreRT so it's low priority for me.)

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

7 years agoForbid lea without index and base. (dotnet/coreclr#10771)
Sergey Andreenko [Mon, 10 Apr 2017 16:41:49 +0000 (09:41 -0700)]
Forbid lea without index and base. (dotnet/coreclr#10771)

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

7 years agoDelete FEATURE_READYTORUN define for CoreLib build (dotnet/coreclr#10840)
Jan Kotas [Mon, 10 Apr 2017 16:28:38 +0000 (09:28 -0700)]
Delete FEATURE_READYTORUN define for CoreLib build (dotnet/coreclr#10840)

This define does not have much value for the CoreLib build, and it was missing on arm64.
Also deleted dead props and targets files left over from the legacy build

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

7 years ago[x86/Linux] Set ResumeEsp as Caller Sp when unwond to native frame (dotnet/coreclr...
Jonghyun Park [Mon, 10 Apr 2017 13:21:11 +0000 (22:21 +0900)]
[x86/Linux] Set ResumeEsp as Caller Sp when unwond to native frame (dotnet/coreclr#10838)

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

7 years ago[x86/Linux] 16-byte aligned ResolveWorkerChainLookupAsmStub (dotnet/coreclr#10754)
Jonghyun Park [Mon, 10 Apr 2017 12:51:10 +0000 (21:51 +0900)]
[x86/Linux] 16-byte aligned ResolveWorkerChainLookupAsmStub (dotnet/coreclr#10754)

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

7 years ago* Fixed issue, when structures with many fields had wrong size in dwarf (dotnet/corec...
Buyduck [Mon, 10 Apr 2017 12:48:57 +0000 (16:48 +0400)]
* Fixed issue, when structures with many fields had wrong size in dwarf (dotnet/coreclr#10797)

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

7 years agoMove files to shared CoreLib partition (dotnet/coreclr#10837)
Jan Kotas [Mon, 10 Apr 2017 05:53:50 +0000 (22:53 -0700)]
Move files to shared CoreLib partition (dotnet/coreclr#10837)

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

7 years agoMove variable handle creation.
Aditya Mandaleeka [Sat, 8 Apr 2017 01:44:23 +0000 (18:44 -0700)]
Move variable handle creation.

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

7 years ago[Local GC] Move knowledge of the free object method table outside of the GC (dotnet...
Sean Gillespie [Sun, 9 Apr 2017 20:58:29 +0000 (13:58 -0700)]
[Local GC] Move knowledge of the free object method table outside of the GC (dotnet/coreclr#10755)

* [Local GC] Move knowledge of the free object method table outside of the GC

* Revert "[Local GC] Move knowledge of the free object method table outside of the GC"

This reverts commit dotnet/coreclr@02979e5eb12dd44edb2603e16411dd7d7ffc377d.

* Address code review feedback: leave ArrayBase alone, as it should be part of the binary contract between the EE and the GC

* Correct a bad merge

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

7 years agoMove files to shared CoreLib partition (dotnet/coreclr#10830)
Jan Kotas [Sun, 9 Apr 2017 13:55:23 +0000 (06:55 -0700)]
Move files to shared CoreLib partition (dotnet/coreclr#10830)

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

7 years agoUpdate VS2017 'Individual Components' install info (dotnet/coreclr#10695)
Joseph Tremoulet [Sun, 9 Apr 2017 06:50:02 +0000 (02:50 -0400)]
Update VS2017 'Individual Components' install info (dotnet/coreclr#10695)

A few small changes to make it easier to compare selections in the
installer UI against the list in the doc:

 - Re-order the list to match the order presented in the installer UI
 - Place the individual items under groupings matching the installer
 - Change casing to match installer UI

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

7 years agoDelete reference to model.xml since it no longer exists (dotnet/coreclr#10827)
Jan Kotas [Sun, 9 Apr 2017 05:12:22 +0000 (22:12 -0700)]
Delete reference to model.xml since it no longer exists (dotnet/coreclr#10827)

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

7 years agoFix the broken link in contributing.md (dotnet/coreclr#10828)
Jim Ma [Sun, 9 Apr 2017 03:43:12 +0000 (11:43 +0800)]
Fix the broken link in contributing.md (dotnet/coreclr#10828)

The List.cs link is broken in contributing.md. This PR updates the link to List.cs accordingly.

Fix dotnet/coreclr#10822

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

7 years agoMerge pull request dotnet/coreclr#10776 from sdmaclea/PR-ARM64-CpBlkUnroll
Bruce Forstall [Sun, 9 Apr 2017 03:23:52 +0000 (20:23 -0700)]
Merge pull request dotnet/coreclr#10776 from sdmaclea/PR-ARM64-CpBlkUnroll

[Arm64] Enable cpblk loop unrolling

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

7 years agoMerge pull request dotnet/coreclr#10736 from sdmaclea/PR-ARM64-GC-genLeaInstruction
Bruce Forstall [Sun, 9 Apr 2017 03:23:34 +0000 (20:23 -0700)]
Merge pull request dotnet/coreclr#10736 from sdmaclea/PR-ARM64-GC-genLeaInstruction

[Arm64] Fix GC Hole in genLeaInstruction

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

7 years agoFix corerun issue when loaded from PATH (dotnet/coreclr#10745)
Hadi Brais [Sat, 8 Apr 2017 19:24:23 +0000 (00:54 +0530)]
Fix corerun issue when loaded from PATH (dotnet/coreclr#10745)

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

7 years agoUse a monotonic clock for test timing (dotnet/coreclr#10812)
Alex Perovich [Sat, 8 Apr 2017 19:24:01 +0000 (14:24 -0500)]
Use a monotonic clock for test timing (dotnet/coreclr#10812)

Fixes dotnet/coreclr#8348

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

7 years agoHandle SIGTERM on OSX (dotnet/coreclr#10723)
Koundinya Veluri [Sat, 8 Apr 2017 19:23:33 +0000 (12:23 -0700)]
Handle SIGTERM on OSX (dotnet/coreclr#10723)

* Handle SIGTERM on OSX

Fixes dotnet/coreclr#7394

* Address feedback

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

7 years agoExit gracefully when running ildasm -nat against unsupported ni file. (dotnet/coreclr...
Jim Ma [Sat, 8 Apr 2017 16:43:47 +0000 (00:43 +0800)]
Exit gracefully when running ildasm -nat against unsupported ni file. (dotnet/coreclr#10821)

ildasm -nat only works for fragile native images (ie CoreLib only by default).
Running ildasm -nat against unsupported native images would cause a segmentation fault. This PR checks pNativeHeader->Signature == CORCOMPILE_SIGNATURE and end the program with a meaningful error message.

fix dotnet/coreclr#10247

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

7 years agoMerge pull request dotnet/coreclr#10811 from BruceForstall/RemoveRELOC_SUPPORT
Bruce Forstall [Sat, 8 Apr 2017 15:37:44 +0000 (08:37 -0700)]
Merge pull request dotnet/coreclr#10811 from BruceForstall/RemoveRELOC_SUPPORT

Remove RELOC_SUPPORT define

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

7 years ago[Local GC] Fix some interface violations (dotnet/coreclr#10817)
Sean Gillespie [Sat, 8 Apr 2017 06:59:00 +0000 (23:59 -0700)]
[Local GC] Fix some interface violations (dotnet/coreclr#10817)

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#3262 from dotnet/nmirror
Jan Kotas [Fri, 7 Apr 2017 23:49:04 +0000 (16:49 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#3262 from dotnet/nmirror

Merge nmirror to master

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/25e16c372912cfe9685c142ecf64edd4df91d21e

7 years agoFind & replace Exception.SetErrorCode with Exception.HResult setter (dotnet/coreclr...
Jan Kotas [Fri, 7 Apr 2017 23:49:58 +0000 (16:49 -0700)]
Find & replace Exception.SetErrorCode with Exception.HResult setter (dotnet/coreclr#10810)

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