platform/upstream/dotnet/runtime.git
7 years agoMerge pull request dotnet/coreclr#10327 from mikedn/assertion-info
Joseph Tremoulet [Tue, 21 Mar 2017 15:06:24 +0000 (11:06 -0400)]
Merge pull request dotnet/coreclr#10327 from mikedn/assertion-info

Refactor GenTree assertion information storage

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

7 years ago[x86/Linux] Log UpdateRegDisplay calls (dotnet/coreclr#10335)
Jonghyun Park [Tue, 21 Mar 2017 09:31:04 +0000 (18:31 +0900)]
[x86/Linux] Log UpdateRegDisplay calls (dotnet/coreclr#10335)

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

7 years ago[x86/Linux] Use 4-byte align for double in struct (dotnet/coreclr#10340)
Jonghyun Park [Tue, 21 Mar 2017 04:36:27 +0000 (13:36 +0900)]
[x86/Linux] Use 4-byte align for double in struct (dotnet/coreclr#10340)

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

7 years ago[x86/Linux] Correct update on ResumableFrame (dotnet/coreclr#10339)
Jonghyun Park [Tue, 21 Mar 2017 04:26:19 +0000 (13:26 +0900)]
[x86/Linux] Correct update on ResumableFrame (dotnet/coreclr#10339)

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

7 years agoMerge pull request dotnet/coreclr#10341 from dotnet/mirror-merge-9056283
Jan Kotas [Tue, 21 Mar 2017 04:13:04 +0000 (21:13 -0700)]
Merge pull request dotnet/coreclr#10341 from dotnet/mirror-merge-9056283

Mirror changes from dotnet/corert

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

7 years agoDelete moved file
Jan Kotas [Tue, 21 Mar 2017 02:30:56 +0000 (19:30 -0700)]
Delete moved file

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

7 years agoNS2.0 - Complete System.Security namespace.
Atsushi Kanamori [Mon, 20 Mar 2017 21:01:10 +0000 (14:01 -0700)]
NS2.0 - Complete System.Security namespace.

- Add GetObjectData() implementation to System.SecurityExcepton

- Clean up a bit and move to shared partition.

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

7 years ago'root' as a special case in UTIL_IsExecuteBitsSet (dotnet/coreclr#10246)
Jonghyun Park [Tue, 21 Mar 2017 00:14:02 +0000 (09:14 +0900)]
'root' as a special case in UTIL_IsExecuteBitsSet (dotnet/coreclr#10246)

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

7 years agoFix MAC build (dotnet/coreclr#10328)
Tarek Mahmoud Sayed [Mon, 20 Mar 2017 23:19:48 +0000 (16:19 -0700)]
Fix MAC build (dotnet/coreclr#10328)

This is temporary fix  to unblock the CI and coreclr building for MAC. this change should be reverted after having the proper fix for how we load ICU on MAC

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

7 years agoMerge pull request dotnet/coreclr#10325 from dotnet/mirror-merge-9055987
Jan Kotas [Mon, 20 Mar 2017 23:17:55 +0000 (16:17 -0700)]
Merge pull request dotnet/coreclr#10325 from dotnet/mirror-merge-9055987

Mirror changes from dotnet/corert

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

7 years agoMerge pull request dotnet/coreclr#10330 from omajid/fix-markdown-atx-headers
Aditya Mandaleeka [Mon, 20 Mar 2017 23:01:13 +0000 (16:01 -0700)]
Merge pull request dotnet/coreclr#10330 from omajid/fix-markdown-atx-headers

Fix markdown headings

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

7 years agoFix markdown headings
Omair Majid [Mon, 20 Mar 2017 22:12:33 +0000 (18:12 -0400)]
Fix markdown headings

GitHub recently changed how atx headings (beginning with `#`) are
rendered. A space is now required between `#` and the following text
for the heading to be recognized.

Update headings in the docs to match the expected format.

See https://github.github.com/gfm/#atx-headings

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

7 years agoDelete moved files
Jan Kotas [Mon, 20 Mar 2017 21:28:18 +0000 (14:28 -0700)]
Delete moved files

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

7 years agoRefactor GenTree assertion information storage
Mike Danes [Sat, 11 Mar 2017 09:04:04 +0000 (11:04 +0200)]
Refactor GenTree assertion information storage

Stealing a bit from gtAssertionNum is ugly  and error prone (e.g. bool HasAssertion() { return gtAssertionNum != 0; } is incorrect if the edge bit is set).

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

7 years agoMerge pull request dotnet/coreclr#10319 from JosephTremoulet/NullField
Joseph Tremoulet [Mon, 20 Mar 2017 21:13:14 +0000 (17:13 -0400)]
Merge pull request dotnet/coreclr#10319 from JosephTremoulet/NullField

Permit null object in `GenTreeUseEdgeIterator`

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

7 years agoMove Type.cs and Module.cs to Shared Partition.
Atsushi Kanamori [Mon, 20 Mar 2017 17:42:17 +0000 (10:42 -0700)]
Move Type.cs and Module.cs to Shared Partition.

Types.cs is split into the main file, Type.Helpers.cs and Type.Enum.cs.
All three will be shared.

- GenericTypeArguments - reconcile with CoreClr
  (the code is identical provided that the underlying
  Type provider implemented IsConstructedGenericType
  correctly. But we can't assume that for third party types.)

- IsInterface and IsSerializable has some CoreClr
  specific logic for RuntimeTypes - moving this out
  to the unshared space for now.

- IsContextFulImpl()/IsMarshalByRefImpl() - corrected
  implemention to match CoreClr.

- IsIntegerType - no CommonRuntimeTypes in CoreClr
  so going back to typeof() checks - the runtime implemented
  types override all this enum code anyway on both runtimes.

- GetRootElementType() - upgraded visibility to "internal"
  as a concession to CoreClr.

- CoreCLR's IsVisible has a fast path - we'll keep that.

- Moved IsRuntimeImplemented() out of Internal.Reflection.Core.NonPortable
  namespace so calls to it can be more easily shared.

- Module.MethodHandle was not implemented correctly for
  non-runtime modules (it's supposed to return default(ModuleHandle)).
  This makes it behave correctly and reconciles Module.cs
  with the CoreCLR version.

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

7 years agoMerge pull request dotnet/coreclr#10317 from dotnet/mirror-merge-9055826
Jan Kotas [Mon, 20 Mar 2017 21:03:14 +0000 (14:03 -0700)]
Merge pull request dotnet/coreclr#10317 from dotnet/mirror-merge-9055826

Mirror changes from dotnet/corert

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

7 years agoPermit null object in `GenTreeUseEdgeIterator`
Joseph Tremoulet [Mon, 20 Mar 2017 19:39:46 +0000 (15:39 -0400)]
Permit null object in `GenTreeUseEdgeIterator`

We use `GT_FIELD` for static field loads, which have no instance pointer.
Update the iterator constructor to recognize this as a valid state rather
than fail an assertion.

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

7 years agoMerge pull request dotnet/coreclr#10315 from dotnet-bot/from-tfs
Bruce Forstall [Mon, 20 Mar 2017 19:09:36 +0000 (12:09 -0700)]
Merge pull request dotnet/coreclr#10315 from dotnet-bot/from-tfs

Merge changes from TFS

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

7 years agoFix FileStream for ProjectN
Jan Kotas [Sun, 19 Mar 2017 02:41:39 +0000 (19:41 -0700)]
Fix FileStream for ProjectN

[tfs-changeset: 1651325]

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

7 years agoRemove message about falling to default for MethodContext::repGetEEInfo()
Bruce Forstall [Mon, 20 Mar 2017 18:45:47 +0000 (11:45 -0700)]
Remove message about falling to default for MethodContext::repGetEEInfo()

[tfs-changeset: 1651465]

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

7 years agoMerge pull request dotnet/coreclr#10301 from dotnet-bot/from-tfs
Brian Sullivan [Mon, 20 Mar 2017 17:34:10 +0000 (10:34 -0700)]
Merge pull request dotnet/coreclr#10301 from dotnet-bot/from-tfs

Merge changes from TFS

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

7 years agoInitial document on AssemblyLoadContext Design (dotnet/coreclr#10271)
Gaurav Khanna [Mon, 20 Mar 2017 17:32:34 +0000 (10:32 -0700)]
Initial document on AssemblyLoadContext Design (dotnet/coreclr#10271)

* Initial document on AssemblyLoadContext Design

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

7 years agoMerge pull request dotnet/coreclr#10262 from briansull/refactor2
Brian Sullivan [Mon, 20 Mar 2017 17:24:17 +0000 (10:24 -0700)]
Merge pull request dotnet/coreclr#10262 from briansull/refactor2

Updates for the handling of Profile data in the JIT

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

7 years agoMake GetModuleHandle() sharable. (dotnet/coreclr#10309)
Atsushi Kanamori [Mon, 20 Mar 2017 17:03:26 +0000 (10:03 -0700)]
Make GetModuleHandle() sharable. (dotnet/coreclr#10309)

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

7 years agoMerge pull request dotnet/coreclr#9445 from hqueue/arm/ci
Gaurav Khanna [Mon, 20 Mar 2017 15:55:56 +0000 (08:55 -0700)]
Merge pull request dotnet/coreclr#9445 from hqueue/arm/ci

[ARM/CI] ARM CI script for arm and armel

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

7 years agoReconciles Type.cs with CoreRT version for move to shared partition. (dotnet/coreclr...
Atsushi Kanamori [Mon, 20 Mar 2017 15:18:45 +0000 (08:18 -0700)]
Reconciles Type.cs with CoreRT version for move to shared partition. (dotnet/coreclr#10306)

* Clone files and add resource strings.

* Subset each partial class.

* String=>string and Environment.GetResourceString => SR.cs

Doing this upfront with reduce the upcoming diffs - hopefully.

* Add IsRuntimeImplemented() emulator.

* One method was put in the wrong file. Correcting.

* Converted Type.Enum.cs to CoreRT style member by member.

* Converted Type.Helpers.cs to CoreRT style member by member.

* Internalize __Filter.cs into Type.Helpers.cs

* Pretransform to reduce diffs.

Removed contracts and comments,
"abstract public" -> "public abstract"

* Converted Type.cs to CoreRT style member by member.

* Eh.. rather not share IsInterface and IsSerializable than have that #if CORECLR.

* Transplant the CoreRt files (now just a reordering.)

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

7 years ago[Arm64/Unix] Set PROCFS_* available in tryrun (dotnet/coreclr#10255)
Steve MacLean [Mon, 20 Mar 2017 15:17:05 +0000 (11:17 -0400)]
[Arm64/Unix] Set PROCFS_* available in tryrun (dotnet/coreclr#10255)

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

7 years agoDesktop side of the change to remove COR_JIT_EE_VERSION
Bruce Forstall [Mon, 20 Mar 2017 02:46:08 +0000 (19:46 -0700)]
Desktop side of the change to remove COR_JIT_EE_VERSION

1. Bring over the JIT-EE interface file changes,
2. Stop building ctpjit.dll, and delete its build rules,
3. Stop building skipjit.dll.

[tfs-changeset: 1651372]

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

7 years agoInvariant globalization (dotnet/coreclr#10264)
Tarek Mahmoud Sayed [Sun, 19 Mar 2017 23:19:56 +0000 (16:19 -0700)]
Invariant globalization (dotnet/coreclr#10264)

* Invariant Globalization Work

* Convert the testing Exceptions to asserts

* Remove un-needed comment

* Fix typos

* Fix unrelated typo

* Address the PR feedback

* More feedback addressing

* More feedback addressing

* Fix Linux break

* More feedback addressing

* cleanup

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

7 years agoMerge pull request dotnet/coreclr#10291 from dotnet-bot/master-UpdateDependencies
Stephen Toub [Sun, 19 Mar 2017 12:06:20 +0000 (08:06 -0400)]
Merge pull request dotnet/coreclr#10291 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-25119-02 (master)

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

7 years agoUpdate CoreClr to beta-25119-02
dotnet-bot [Sun, 19 Mar 2017 08:08:34 +0000 (08:08 +0000)]
Update CoreClr to beta-25119-02

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

7 years agoFix code to build with older VC++ compiler (dotnet/coreclr#10281)
Bruce Forstall [Sun, 19 Mar 2017 06:35:05 +0000 (23:35 -0700)]
Fix code to build with older VC++ compiler (dotnet/coreclr#10281)

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

7 years agoRemove potential overflow in SafeBSTRHandle (dotnet/coreclr#10182)
John Bottenberg [Sun, 19 Mar 2017 04:33:58 +0000 (21:33 -0700)]
Remove potential overflow in SafeBSTRHandle (dotnet/coreclr#10182)

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

7 years agoFix a typo in exceptoinhandling.cpp (dotnet/coreclr#10237)
Jonghyun Park [Sun, 19 Mar 2017 04:32:57 +0000 (13:32 +0900)]
Fix a typo in exceptoinhandling.cpp (dotnet/coreclr#10237)

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

7 years agoI hoisted the accounting for LOH into allocate_large_objects to avoid missing countin...
Maoni Stephens [Sun, 19 Mar 2017 04:30:55 +0000 (21:30 -0700)]
I hoisted the accounting for LOH into allocate_large_objects to avoid missing counting in certain stages during bgc when we go through bgc_loh_alloc_clr instead of adjust_limit_clr (dotnet/coreclr#10284)

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

7 years agoFix for Module.GetMethod(string) (dotnet/coreclr#10283)
Atsushi Kanamori [Sat, 18 Mar 2017 22:15:43 +0000 (15:15 -0700)]
Fix for Module.GetMethod(string) (dotnet/coreclr#10283)

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

7 years agoMerge pull request dotnet/coreclr#10280 from dotnet-bot/master-UpdateDependencies
Stephen Toub [Sat, 18 Mar 2017 21:40:09 +0000 (17:40 -0400)]
Merge pull request dotnet/coreclr#10280 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-25118-03 (master)

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

7 years agoMerge pull request dotnet/coreclr#10272 from dotnet/mirror-merge-9051754
Jan Kotas [Sat, 18 Mar 2017 20:57:24 +0000 (13:57 -0700)]
Merge pull request dotnet/coreclr#10272 from dotnet/mirror-merge-9051754

Mirror changes from dotnet/corert

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

7 years agoMerge pull request dotnet/coreclr#10216 from JosephTremoulet/SpanBench
Joseph Tremoulet [Sat, 18 Mar 2017 18:06:54 +0000 (14:06 -0400)]
Merge pull request dotnet/coreclr#10216 from JosephTremoulet/SpanBench

Update SpanBench test

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

7 years agoUpdate CoreClr to beta-25118-03
dotnet-bot [Sat, 18 Mar 2017 16:37:23 +0000 (16:37 +0000)]
Update CoreClr to beta-25118-03

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

7 years agoUpdate SpanBench test
Joseph Tremoulet [Thu, 16 Mar 2017 00:43:01 +0000 (20:43 -0400)]
Update SpanBench test

 - Re-enable the tests that were disabled in e859c309.
 - Re-work how tests are invoked from the command line to require less
   boilerplate
     - Now each test has a single [Benchmark] entrypoint
     - That entrypoint invokes its test's single inner-loop by wrapping it
       in a lambda that it passes to a new helper Invoke method (shared
       across all tests) which handles the xunit vs. command-line
       differences..
     - Main finds the entrypoints by using reflection to search for the
       [Benchmark] attributes, so the explicit list of stringified test
       names is no longer needed and the command line will run the same
       set of tests that xunit-perf does.
 - The new SpanAPI tests now get invoked when this tests is run from the
   command line as well.
 - Add [NoInlining] to the SpanAPI tests' kernels.
 - Add some heap writes and conditional writes to prevent deadcode
   optimization from eliminating tests' kernels (assuming we don't do
   interprocedural constant propagation or deadcode, or store sinking and
   final value calculation, or PRE...).
 - Split the Index SpanAPI tests into one version that uses a
   loop-invariant index and thus should get hoisted out of the loop, and
   another version that uses variant indices.

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

7 years agoMerge pull request dotnet/coreclr#10054 from pgavlin/GenTreeUseEdgeIterator
Pat Gavlin [Sat, 18 Mar 2017 15:41:40 +0000 (08:41 -0700)]
Merge pull request dotnet/coreclr#10054 from pgavlin/GenTreeUseEdgeIterator

Improve GenTreeUseEdgeIterator.

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

7 years agoDelete moved files
Jan Kotas [Sat, 18 Mar 2017 15:22:40 +0000 (08:22 -0700)]
Delete moved files

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

7 years agoRemove JIT-EE version ifdefs (dotnet/coreclr#10273)
Bruce Forstall [Sat, 18 Mar 2017 15:12:52 +0000 (08:12 -0700)]
Remove JIT-EE version ifdefs (dotnet/coreclr#10273)

* Remove COR_JIT_EE_VERSION define

Currently, we maintain two versions of the JIT-EE interface in the
source tree: the current version, and .NET 4.6 version. This is
managed by the `COR_JIT_EE_VERSION` define. Any new changes to the JIT-EE
interface must be put under `#if COR_JIT_EE_VERSION > 460`. As of now,
there are quite a few of these `#if` statements in the tree.

We started doing this so we could build and ship a CTP (Community
Technology Preview) version of the JIT from the current source tree that
runs against earlier versions of the runtime that are widely available
to customers, so those customers can try out the new JIT and give us
early feedback. This was done during the RyuJIT/x64 bring-up before
shipping .NET 4.6, to get as much feedback as possible before replacing
JIT64. After 4.6 shipped, we re-based the old version of the JIT-EE
interface to the 4.6 version, and started adding the above `#if`
conditions, with the thought that if we ever shipped another CTP, it
would be expected to run on top of 4.6. We have not shipped such a
thing, and we currently have no plans to build another CTP in the same
way we did before. (Early adopters can try out the "live" JIT in the
.NET Core open source project, although that JIT can't be used on the
desktop.)

So, to simplify the code, and reduce the cost of adding to or changing
the JIT-EE interface, we are removing the `COR_JIT_EE_VERSION` define.

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

7 years agoMerge pull request dotnet/coreclr#10278 from dotnet-bot/master-UpdateDependencies
Stephen Toub [Sat, 18 Mar 2017 12:32:46 +0000 (08:32 -0400)]
Merge pull request dotnet/coreclr#10278 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-25118-02 (master)

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

7 years agoMove ParameterInfo.cs and Assembly.cs to shared partition. (dotnet/coreclr#10270)
Atsushi Kanamori [Sat, 18 Mar 2017 11:37:06 +0000 (04:37 -0700)]
Move ParameterInfo.cs and Assembly.cs to shared partition. (dotnet/coreclr#10270)

* Clone the files.

* Split the members between shared and nonshared files.

* Replaced ParameterInfo with CoreRt text member by member.

* Replaced Module.cs with CoreRt text member by member.

* Remove dead filter code.

* Replaced Assembly.cs with CoreRt text member by member.

* Transplanted CoreRt files.

This is a reordering without any other changes.
Verified by sorting the old and new files and
diffing.

* Migrated ParameterInfo.cs and Assembly.cs to shared directory.

Leaving Module.cs in place for now as one line is going to
have to change over in CoreRt land.

 ModuleHandle ModuleHandle => new ModuleHandle(this);

* Cleanup.

* Move the final internal methods to RuntimeParameterInfo.

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

7 years agoUpdate CoreClr to beta-25118-02
dotnet-bot [Sat, 18 Mar 2017 08:56:56 +0000 (08:56 +0000)]
Update CoreClr to beta-25118-02

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

7 years agoMerge pull request dotnet/coreclr#10269 from BruceForstall/FixBuildAll
Bruce Forstall [Sat, 18 Mar 2017 07:18:26 +0000 (00:18 -0700)]
Merge pull request dotnet/coreclr#10269 from BruceForstall/FixBuildAll

Fix build.cmd "all" to work with pass-through args again

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

7 years agoUpdate CoreClr, CoreFx to beta-25117-08, beta-25118-01, respectively (dotnet/coreclr...
dotnet bot [Sat, 18 Mar 2017 06:27:38 +0000 (23:27 -0700)]
Update CoreClr, CoreFx to beta-25117-08, beta-25118-01, respectively (dotnet/coreclr#10267)

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

7 years agoImprove GenTreeUseEdgeIterator.
Pat Gavlin [Thu, 9 Mar 2017 02:45:17 +0000 (18:45 -0800)]
Improve GenTreeUseEdgeIterator.

Instead of executing a rather long set of conditionals on each call
to `GenTreeUseEdge::operator++`, decide on the function that will be
used to advance the iterator's state in the constructor.

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

7 years agoMerge pull request dotnet/coreclr#10220 from dotnet/revert-10206-MultiQueue
Gaurav Khanna [Sat, 18 Mar 2017 04:35:47 +0000 (21:35 -0700)]
Merge pull request dotnet/coreclr#10220 from dotnet/revert-10206-MultiQueue

Revert "Add support for Multiqueing jobs in Helix"

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

7 years agoMerge pull request dotnet/coreclr#10274 from AndyAyersMS/FixMoreCasing
Andy Ayers [Sat, 18 Mar 2017 04:04:56 +0000 (21:04 -0700)]
Merge pull request dotnet/coreclr#10274 from AndyAyersMS/FixMoreCasing

Fix yet another casing issue.

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

7 years agoFix overflow when computing dwWeight in CPUGroupInfo::InitCPUGroupInfoArray (dotnet...
Han Lee [Sat, 18 Mar 2017 03:26:06 +0000 (20:26 -0700)]
Fix overflow when computing dwWeight in CPUGroupInfo::InitCPUGroupInfoArray (dotnet/coreclr#10104)

Fix overflow in dwWeight when there are large number of CPU groups

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

7 years agoUpdates for the handling of Profile data in the JIT
Brian Sullivan [Sat, 18 Mar 2017 01:42:50 +0000 (18:42 -0700)]
Updates for the handling of Profile data in the JIT

Use the type weight_t instead of unsigned when dealing with BasicBlock weights.
Added new method getCalledCount to return the number of times that the method was called.
Added new method fgProfileRunsCount to return the number of scenario runs for the profile data.
Made the method fgIsUsingProfileWeight public instead of protected
Renamed fgCalledWeight to fgCalledCount
Updated the logic in getBBWeight and added comments explaining how it works.

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

7 years agoMerge pull request dotnet/coreclr#10241 from briansull/refactor1
Brian Sullivan [Sat, 18 Mar 2017 01:01:26 +0000 (18:01 -0700)]
Merge pull request dotnet/coreclr#10241 from briansull/refactor1

Refactor the flag test of BBF_PROF_WEIGHT

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

7 years agoFix triggers for ILLINK job (dotnet/coreclr#10244)
Swaroop Sridhar [Sat, 18 Mar 2017 00:13:34 +0000 (17:13 -0700)]
Fix triggers for ILLINK job (dotnet/coreclr#10244)

This change has the following fixes:
1) Fix the trigger phrase for ILLink jobs so that PRs can request ILLink runs per architecture.

2) Pass the linker location explicitly on the runtest.cmd command line
instead of using the %ILLink% variable, since the build/run steps
are different command shells.

3) Don't run the x86compatijit configuration daily in the lab

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

7 years agoFix yet another casing issue.
Andy Ayers [Fri, 17 Mar 2017 23:58:23 +0000 (16:58 -0700)]
Fix yet another casing issue.

This might be what is causing the TFS mirror to have hiccups.

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

7 years agoFileStream.Unix: open with CLOEXEC unless FileShare.Inheritable set (dotnet/coreclr...
Tom Deseyn [Fri, 17 Mar 2017 23:54:45 +0000 (00:54 +0100)]
FileStream.Unix: open with CLOEXEC unless FileShare.Inheritable set (dotnet/coreclr#10251)

* FileStream.Unix: open with CLOEXEC unless FileShare.Inheritable set

* PR feedback

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

7 years agoMove EventInfo.cs to shared partition.
Atsushi Kanamori [Fri, 17 Mar 2017 17:32:49 +0000 (10:32 -0700)]
Move EventInfo.cs to shared partition.

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

7 years agoFix build.cmd "all" to work with pass-through args again
Bruce Forstall [Fri, 17 Mar 2017 21:45:47 +0000 (14:45 -0700)]
Fix build.cmd "all" to work with pass-through args again

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

7 years agoMerge pull request dotnet/coreclr#10238 from pgavlin/SeekUnrollLimit
Pat Gavlin [Fri, 17 Mar 2017 21:39:09 +0000 (14:39 -0700)]
Merge pull request dotnet/coreclr#10238 from pgavlin/SeekUnrollLimit

Reduce case iteration counts in SeekUnroll.

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

7 years agoRefactor the flag test of BBF_PROF_WEIGHT
Brian Sullivan [Thu, 16 Mar 2017 23:45:17 +0000 (16:45 -0700)]
Refactor the flag test of BBF_PROF_WEIGHT
to always call the new method hasProfileWeight()

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

7 years agoMerge pull request dotnet/coreclr#10259 from AndyAyersMS/FixNoway
Andy Ayers [Fri, 17 Mar 2017 21:01:28 +0000 (14:01 -0700)]
Merge pull request dotnet/coreclr#10259 from AndyAyersMS/FixNoway

JIT: Fix noway_assert when inlining

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

7 years agoMerge pull request dotnet/coreclr#10263 from dotnet-bot/from-tfs
Andy Ayers [Fri, 17 Mar 2017 21:01:18 +0000 (14:01 -0700)]
Merge pull request dotnet/coreclr#10263 from dotnet-bot/from-tfs

Merge changes from TFS

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

7 years agoMerge pull request dotnet/coreclr#10260 from sdmaclea/PR-ARM64-REMOVE-X19-WORKAROUND
Rahul Kumar [Fri, 17 Mar 2017 20:26:00 +0000 (13:26 -0700)]
Merge pull request dotnet/coreclr#10260 from sdmaclea/PR-ARM64-REMOVE-X19-WORKAROUND

[Arm64/Unix] Remove x19 corruption workaround

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

7 years agoClean up GenTreePutArgStk (dotnet/coreclr#10239)
Bruce Forstall [Fri, 17 Mar 2017 20:01:47 +0000 (13:01 -0700)]
Clean up GenTreePutArgStk (dotnet/coreclr#10239)

Consolidate constructors; go from 4 to 2.

Reduce `#ifdef` in callers.

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

7 years agoMerge pull request dotnet/coreclr#10245 from rahku/fix10048
Rahul Kumar [Fri, 17 Mar 2017 19:49:57 +0000 (12:49 -0700)]
Merge pull request dotnet/coreclr#10245 from rahku/fix10048

LoadFromStream should throw badimageformat early on

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

7 years agoLoadFromStream should throw badimageformat early on
Rahul Kumar [Fri, 17 Mar 2017 03:27:58 +0000 (20:27 -0700)]
LoadFromStream should throw badimageformat early on

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

7 years agoMerge pull request dotnet/coreclr#10253 from dotnet/mirror-merge-9051394
Jan Kotas [Fri, 17 Mar 2017 19:43:40 +0000 (12:43 -0700)]
Merge pull request dotnet/coreclr#10253 from dotnet/mirror-merge-9051394

Mirror changes from dotnet/corert

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

7 years agofix syntax error in build.sh (dotnet/coreclr#10256)
Buyduck [Fri, 17 Mar 2017 19:38:35 +0000 (22:38 +0300)]
fix syntax error in build.sh (dotnet/coreclr#10256)

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

7 years agoDelete unused ReferenceLocalMscorlib property from test proj files (dotnet/coreclr...
Jan Kotas [Fri, 17 Mar 2017 18:44:10 +0000 (11:44 -0700)]
Delete unused ReferenceLocalMscorlib property from test proj files (dotnet/coreclr#10250)

Deleted a few other irrelevant properties as well while I was on it.

Fixes dotnet/coreclr#7711

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

7 years agoAdd reflection roots for tests calling CreateInstance() (dotnet/coreclr#10242)
Swaroop Sridhar [Fri, 17 Mar 2017 18:22:18 +0000 (11:22 -0700)]
Add reflection roots for tests calling CreateInstance() (dotnet/coreclr#10242)

Add the XML files identifying the reflection roots to keep the
type (and constructors threof) which are used by tests as
Activator.CreateInstance(typeof(T))

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

7 years agofix formatting
Andy Ayers [Fri, 17 Mar 2017 18:09:55 +0000 (11:09 -0700)]
fix formatting

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

7 years agoMerge pull request dotnet/coreclr#10192 from AndyAyersMS/InterfaceDevirt
Andy Ayers [Fri, 17 Mar 2017 18:04:35 +0000 (11:04 -0700)]
Merge pull request dotnet/coreclr#10192 from AndyAyersMS/InterfaceDevirt

Interface devirt

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

7 years agoAddress feedback.
Pat Gavlin [Fri, 17 Mar 2017 18:02:24 +0000 (11:02 -0700)]
Address feedback.

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

7 years ago[Arm64/Unix] Remove x19 corruption workaround
Steve MacLean, Qualcomm Datacenter Technologies, Inc [Thu, 16 Mar 2017 16:20:39 +0000 (16:20 +0000)]
[Arm64/Unix] Remove x19 corruption workaround

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

7 years agoJIT: Fix noway_assert when inlining
Andy Ayers [Fri, 17 Mar 2017 07:21:50 +0000 (00:21 -0700)]
JIT: Fix noway_assert when inlining

The jit keeps track of which inline arguments can be modified via starg
during the inlinee IL prescan to ensure that a temp is used to represent
such arguments in the inlined body. There is a noway_assert the a starg
is procecssed during importation that double-checks that a temp is really
being used, and this assert was firing.

The prescan guraded the starg tracking with a check to avoid an out-of-bounds
write into the argument table when scanning bad IL with bogus argument numbers.
The predicate was checking the argument number against lvaTableCount.
Unfortunately for inlinees this value is not related to the number of arguments.
In particular it some rare cases it may be an underestimate so the prescan might
end up failing to note a starg. If the the jit then tries to inline and the
caller passes a constant, the assert will then fire.

Fix is to update the guard to use the number of callee arguments. This is
known to be less than the table size by earlier checks.

Added a test case.

Closes dotnet/coreclr#9891.

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

7 years agoDelete moved files
Jan Kotas [Fri, 17 Mar 2017 17:19:33 +0000 (10:19 -0700)]
Delete moved files

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

7 years agoAttribute the other types used by FileStream. Adds the internal methods the old CoreF...
Jeremy Kuhne [Fri, 17 Mar 2017 00:21:10 +0000 (17:21 -0700)]
Attribute the other types used by FileStream. Adds the internal methods the old CoreFX uses.

https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_workitems?id=396302&_a=edit

[tfs-changeset: 1651151]

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

7 years agoCompilerServices APIs
Fadi Hanna [Thu, 16 Mar 2017 23:10:28 +0000 (16:10 -0700)]
CompilerServices APIs

[tfs-changeset: 1651141]

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

7 years agoMerge pull request dotnet/coreclr#10248 from mikedn/fix-vnarrbound
Joseph Tremoulet [Fri, 17 Mar 2017 14:05:23 +0000 (10:05 -0400)]
Merge pull request dotnet/coreclr#10248 from mikedn/fix-vnarrbound

Fix ValueNumStore::IsVNArrLenUnsignedBound checks

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

7 years agoMerge pull request dotnet/coreclr#10201 from cod7alex/add_csharp_editorconfig_codesty...
Tanner Gooding [Fri, 17 Mar 2017 13:50:00 +0000 (06:50 -0700)]
Merge pull request dotnet/coreclr#10201 from cod7alex/add_csharp_editorconfig_codestyle_settings

Added to .editorconfig csharp code style settings supported by VS 2017

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

7 years ago[x86/Linux] Pass return buffer on reverse P/Invoke (dotnet/coreclr#10226)
Jonghyun Park [Fri, 17 Mar 2017 02:41:24 +0000 (11:41 +0900)]
[x86/Linux] Pass return buffer on reverse P/Invoke (dotnet/coreclr#10226)

* Pass return buffer on reverse P/Invoke

* Use PLATFORM_UNIX and track m_cbRetPop locally

* Declare cbRetPop UINT16 instead of int

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

7 years agoSupport devirtulization of Encoders (dotnet/coreclr#10229)
Ben Adams [Fri, 17 Mar 2017 01:36:22 +0000 (01:36 +0000)]
Support devirtulization of Encoders (dotnet/coreclr#10229)

* Seal more final inherited internal types

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

7 years agoneed to account for the allocated bytes correctly for the following: (dotnet/coreclr...
Maoni Stephens [Fri, 17 Mar 2017 00:57:49 +0000 (17:57 -0700)]
need to account for the allocated bytes correctly for the following: (dotnet/coreclr#10162)

need to account for the allocated bytes accurately for the following cases

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

7 years agoMerge pull request dotnet/coreclr#10235 from dotnet/mirror-merge-9050192
Alex Perovich [Fri, 17 Mar 2017 00:44:20 +0000 (19:44 -0500)]
Merge pull request dotnet/coreclr#10235 from dotnet/mirror-merge-9050192

Mirror changes from dotnet/corert

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

7 years agoMove the MemberInfo-derived Info classes to the shared partition. (dotnet/coreclr...
Atsushi Kanamori [Fri, 17 Mar 2017 00:23:51 +0000 (17:23 -0700)]
Move the MemberInfo-derived Info classes to the shared partition. (dotnet/coreclr#10236)

* Copy over CoreRt prose member by member.

* Transplant the CoreRt version of the files.

This is now just a reordering. Verified
by sorting the old and new versions of the
file and diffin.

* Move to shared partition.

* Looks like the #if FEATURE_COMINTEROP wasn't just for show...

Take EventInfo.cs back to unshared status for now...

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

7 years ago[Local GC] Break EE dependency on GC's generation table and alloc lock in single...
Sean Gillespie [Fri, 17 Mar 2017 00:18:28 +0000 (17:18 -0700)]
[Local GC] Break EE dependency on GC's generation table and alloc lock in single-proc scenarios (dotnet/coreclr#10065)

* Remove usage of the generation table from the EE by introducing an
EE-owned GC alloc context used for allocations on single-proc machines.

* Move the GC alloc lock to the EE side of the interface

* Repair the Windows ARM build

* Move the decision to use per-thread alloc contexts to the EE

* Rename the lock used by StartNoGCRegion and EndNoGCRegion to be more indicative of what it is protecting

* Address code review feedback 2 (enumerate the global alloc context as a part of GCToEEInterface)

* Code review feedback (3)

* Address code review feedback (move some GC-internal globals to gcimpl.h and gc.cpp)

* g_global_alloc_lock is a dword, not a qword - fixes a deadlock

* Move GlobalAllocLock to gchelpers.cpp and switch to preemptive mode when spinning

* Repair the Windows x86 build

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

7 years agoMerge pull request dotnet/coreclr#10240 from pgavlin/fixerrorlevel
Pat Gavlin [Fri, 17 Mar 2017 00:08:05 +0000 (17:08 -0700)]
Merge pull request dotnet/coreclr#10240 from pgavlin/fixerrorlevel

Fix test failure detection when dumps are enabled.

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

7 years agoFix test failure detection when dumps are enabled.
Pat Gavlin [Thu, 16 Mar 2017 23:37:16 +0000 (16:37 -0700)]
Fix test failure detection when dumps are enabled.

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

7 years agoAdd a lab job for Coreclr testing via ILLINK (dotnet/coreclr#10200)
Swaroop Sridhar [Thu, 16 Mar 2017 23:12:46 +0000 (16:12 -0700)]
Add a lab job for Coreclr testing via ILLINK (dotnet/coreclr#10200)

This commit adds a job that:
1) Clones https://github.com/mono/linker
2) Builds the linker for netcoreapp2.0
3) Builds CoreCLR and tests using the IlLinker built above

The job is run daily, and can be reqested from PRs as necessary.

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

7 years agoReduce case iteration counts in SeekUnroll.
Pat Gavlin [Thu, 16 Mar 2017 23:08:06 +0000 (16:08 -0700)]
Reduce case iteration counts in SeekUnroll.

This test was taking too long to run on x86. After investigation, it
does not appear that there is a fundamental problem with the code
generated for the test; rather, it seems that we are running an
excessive number of iterations when using this test as a correctness
test. This change reduces the number of times we run each case from 10
to 1 unless otherwise specified on the command line.

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

7 years agoFix ValueNumStore::IsVNArrLenUnsignedBound checks
Mike Danes [Thu, 16 Mar 2017 21:38:45 +0000 (23:38 +0200)]
Fix ValueNumStore::IsVNArrLenUnsignedBound checks

VNFuncApp::m_func should be checked first to be sure that m_args[0] and m_args[1] contain valid VNs. It's not clear if m_func can ever be something other than a binary func in the case of a relop VN but the code doesn't look right as it is.

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

7 years agoAdd IBC support to managed build (dotnet/coreclr#10180)
Daniel Podder [Thu, 16 Mar 2017 21:37:07 +0000 (14:37 -0700)]
Add IBC support to managed build (dotnet/coreclr#10180)

Add a new build switch, `ibcinstrument`, that adds `/Tuning` on the `crossgen`
command line when building System.Private.CoreLib and its peers. Automatically
consume IBC optdata during builds when these conditions are met:

1. `ibcinstrument` is *not* passed to the build,
2. optdata is available
3. ibcmerge is available

Note that `optdata` will not yet be restored with this change; once packages for
master are made available, a new package reference will still need to be added.
This PR attempts to unblock manually testing IBC, as well as surrounding
CI/infrastructure work.

To help produce an IBC-optimized build using manually generated profile data,
run the newly added `tests/scripts/optdata/bootstrap.py` script. It will
configure the build to consume IBC data from a path automatically, and print out
that path where profile data can be copied.

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

7 years agoAdd some test cases
Andy Ayers [Wed, 15 Mar 2017 15:16:59 +0000 (08:16 -0700)]
Add some test cases

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

7 years agoInterface call devirtualization: jit side of changes
Andy Ayers [Thu, 16 Mar 2017 15:30:58 +0000 (08:30 -0700)]
Interface call devirtualization: jit side of changes

Unblock VM queries where the base class is an interface (queries
where the implementing class is also an interface are still blocked
as no resolution is possible). Pass along the context handle that
the jit got from getCallInfo.

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

7 years agoInterface call devirtualization: VM side of changes
Andy Ayers [Thu, 16 Mar 2017 15:30:17 +0000 (08:30 -0700)]
Interface call devirtualization: VM side of changes

Extend resolveVirtualMethod to take in the owner type needed to resolve
shared generic interface calls, and implement VM support for interface
call devirtualization. Add a check that the class presented by the jit
implements the interface, to catch cases where the IL is missing type
casts.

Update jit GUID, SPMI and zap to reflect the changed signature.

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

7 years agoFix CoreCLR build break in shared corelib partition (dotnet/coreclr#2997)
Jan Kotas [Thu, 16 Mar 2017 19:47:52 +0000 (12:47 -0700)]
Fix CoreCLR build break in shared corelib partition (dotnet/coreclr#2997)

Move RelocatedTypeAttribute under PROJECTN ifdef

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

7 years agoEnable FileStream in ProjectN build, use CreateFile2 instead of CreateFile.
Jeremy Kuhne [Thu, 16 Mar 2017 01:38:22 +0000 (18:38 -0700)]
Enable FileStream in ProjectN build, use CreateFile2 instead of CreateFile.

[tfs-changeset: 1651001]

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