platform/upstream/dotnet/runtime.git
7 years agoFix ARM issues with Containment
Carol Eidt [Fri, 18 Aug 2017 19:12:40 +0000 (12:12 -0700)]
Fix ARM issues with Containment

These are changes that should have been part of PR dotnet/coreclr#13198:
- Correctly contain struct arguments
- Correctly get number of source registers
- Clear register assignments on `GT_FIELD_LIST` nodes (thanks @hseok-oh).
- Remove now-redundant `ContainCheck` methods for armarch targets.

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

7 years agoMerge pull request dotnet/coreclr#13550 from pgavlin/DevDiv482577
Pat Gavlin [Thu, 24 Aug 2017 00:33:19 +0000 (17:33 -0700)]
Merge pull request dotnet/coreclr#13550 from pgavlin/DevDiv482577

Type `lea [this + delegateObject]` as `TYP_BYREF`.

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

7 years agoMerge pull request dotnet/coreclr#13529 from wtgodbe/ParameterizeRids
William Godbe [Thu, 24 Aug 2017 00:16:46 +0000 (17:16 -0700)]
Merge pull request dotnet/coreclr#13529 from wtgodbe/ParameterizeRids

Parameterize RIDs for package restore

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

7 years agoMerge pull request dotnet/coreclr#13559 from noahfalk/add_ci_logging
Noah Falk [Thu, 24 Aug 2017 00:15:15 +0000 (17:15 -0700)]
Merge pull request dotnet/coreclr#13559 from noahfalk/add_ci_logging

Add more logging to corefx test CI runs

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

7 years agoAdd more logging to corefx test CI runs
noahfalk [Thu, 24 Aug 2017 00:08:36 +0000 (17:08 -0700)]
Add more logging to corefx test CI runs

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

7 years agoMerge pull request dotnet/coreclr#13548 from rartemev/revert_12469_fix
Roman Artemev [Thu, 24 Aug 2017 00:01:44 +0000 (17:01 -0700)]
Merge pull request dotnet/coreclr#13548 from rartemev/revert_12469_fix

Revert "Fixed misconception between FP register allocator and RyuJIT's CSE phase"

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

7 years agoMerge pull request dotnet/coreclr#13533 from wtgodbe/buildNumber
William Godbe [Wed, 23 Aug 2017 23:23:10 +0000 (16:23 -0700)]
Merge pull request dotnet/coreclr#13533 from wtgodbe/buildNumber

Disable default BuildNumberMajor

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

7 years agoFixed Equals/GetHashCode bug for struct. (dotnet/coreclr#13164)
Jim Ma [Wed, 23 Aug 2017 22:32:15 +0000 (10:32 +1200)]
Fixed Equals/GetHashCode bug for struct. (dotnet/coreclr#13164)

Other than `ContainsPointers` and `IsNotTightlyPacked`, added two new conditions for checking whether a valuetype can go to fast path or not. Following are the details of these 2 conditions:

- Check whether a valuetype contains a Single/Double field. If it does, we cannot go to fast path. Floating point numbers have special `Equals` and `GetHashCode` implementation. We cannot simply compare floating point numbers via bits (e.g. +0.0 should equal to -0.0, but their underlying bits are different).

- Check whether an user-defined valuetype overrides `Equals` or `GetHashCode`. If it does, we cannot go to fast path. Because `Equals` or `GetHashCode` result may be different to bit comparison.

To find Single/Double fields and overridden `Equals`/`GetHashCode`, we start a DFS to go through the whole hierachy of the source valuetype, and cache the result to `MethodTable`.

Fix dotnet/coreclr#11452

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

7 years agoType `lea [this + delegateObject]` as `TYP_BYREF`.
Pat Gavlin [Wed, 23 Aug 2017 20:31:39 +0000 (13:31 -0700)]
Type `lea [this + delegateObject]` as `TYP_BYREF`.

This node was incorrectly typed as `TYP_GCREF`, which was causing an
assertion during GC stress in internal testing.

Fixes VSO 482577.

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

7 years agoParameterize RIDs for package restore
wtgodbe [Tue, 22 Aug 2017 21:20:01 +0000 (14:20 -0700)]
Parameterize RIDs for package restore

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

7 years agoRevert "Fixed misconception between FP register allocator and RyuJIT's CSE phase"
Roman Artemev [Wed, 23 Aug 2017 19:49:50 +0000 (12:49 -0700)]
Revert "Fixed misconception between FP register allocator and RyuJIT's CSE phase"

This reverts commit dotnet/coreclr@3f4ee3bed52291e592d7ab67da1fc0e39ee8a3b7.

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

7 years agoMerge pull request dotnet/coreclr#13534 from dotnet-bot/from-tfs
Brian Sullivan [Wed, 23 Aug 2017 19:37:03 +0000 (12:37 -0700)]
Merge pull request dotnet/coreclr#13534 from dotnet-bot/from-tfs

Merge changes from TFS

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

7 years agoImprove ReaderWriterLockSlim scalability (dotnet/coreclr#13495)
Koundinya Veluri [Wed, 23 Aug 2017 18:01:31 +0000 (11:01 -0700)]
Improve ReaderWriterLockSlim scalability (dotnet/coreclr#13495)

* Improve ReaderWriterLockSlim scalability

Subset of dotnet/coreclr#13243, fixes dotnet/coreclr#12780

- Prevented waking more than one waiter when only one of them may acquire the lock
- Limited spinning in some cases where it is very unlikely that spinning would help

The _myLock spin lock runs into some bad scalability issues. For example:
1. Readers can starve writers for an unreasonable amount of time. Typically there would be more readers than writers, and it doesn't take many readers to starve a writer. On my machine with 6 cores (12 logical processors with hyperthreading), 6 to 16 reader threads attempting to acquire the spin lock to acquire or release a read lock can starve one writer thread from acquiring the spin lock for several or many seconds. The issue magnifies with more reader threads.
2. Readers and especially writers that hold the RW lock can be starved from even releasing their lock. Releasing an RW lock requires acquiring the spin lock, so releasers are easliy starved by acquirers. How badly they are starved depends on how many acquirers there are, and it doesn't take many to show a very noticeable scalability issue. Often, these acquirers are those that would not be able to acquire the RW lock until one or more releasers release their lock, so the acquirers effectively starve themselves.

This PR does not solve (1), but solves (2) to a degree that could be considered sufficient. dotnet/coreclr#13243 solves (1) and (2) and for (2) it is still better by order-of-magnitude compared with this PR in several cases that I believe are not extreme, but if the complexity of deprioritization is deemed excessive for the goals then of what I tried so far this is the perhaps simplest and most reasonable way to solve (2).

I believe this PR would also be a reasonably low-risk one to port back to .NET Framework.

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

7 years agoEnable overriding default stack size on Unix (dotnet/coreclr#13517)
Jan Vorlicek [Wed, 23 Aug 2017 17:03:16 +0000 (19:03 +0200)]
Enable overriding default stack size on Unix (dotnet/coreclr#13517)

Alpine Linux has a very small default stack size limit, about 80kB.
This is not enough for running coreclr apps.

This change enables overriding the default stack size using the
COMPlus_DefaultStackSize env variable. For Alpine, it also sets
the default stack size to the same value we use for Windows, which
is 1.5MB.

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

7 years agoMerge pull request dotnet/coreclr#13540 from wateret/fix-13423
Bruce Forstall [Wed, 23 Aug 2017 16:44:48 +0000 (09:44 -0700)]
Merge pull request dotnet/coreclr#13540 from wateret/fix-13423

[RyuJIT/arm32] Fix MultiReg flag setter

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

7 years agoJIT: refine types when creating arg temps to improve devirtualization (dotnet/coreclr...
Andy Ayers [Wed, 23 Aug 2017 16:16:07 +0000 (09:16 -0700)]
JIT: refine types when creating arg temps to improve devirtualization (dotnet/coreclr#13530)

The jit will refine the types of temps used to pass arguments to inlinees
when it creates the assignments to these temps.

Unfortunately this is too late to drive devirtualization in the body of
the inlinee, as thes assignments are created after the inlinee body is
imported.

So, add similar refinement logic to the place where the temps are first
created.

Closes dotnet/coreclr#13520.

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

7 years agoAdd a regression test for dotnet/coreclr#13160 (dotnet/coreclr#13531)
Jonghyun Park [Wed, 23 Aug 2017 15:39:13 +0000 (00:39 +0900)]
Add a regression test for dotnet/coreclr#13160 (dotnet/coreclr#13531)

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

7 years agoMerge pull request dotnet/coreclr#13450 from sjsinju/genisvaliddoublereg
Carol Eidt [Wed, 23 Aug 2017 14:13:45 +0000 (07:13 -0700)]
Merge pull request dotnet/coreclr#13450 from sjsinju/genisvaliddoublereg

[RyuJIT/ARM32] Remove unnecessary genIsValidDoubleReg() assertion

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

7 years agoMerge pull request dotnet/coreclr#13528 from JosephTremoulet/Iterate
Joseph Tremoulet [Wed, 23 Aug 2017 13:49:24 +0000 (09:49 -0400)]
Merge pull request dotnet/coreclr#13528 from JosephTremoulet/Iterate

Add InnerIterationCount to layout benchmarks

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

7 years ago[RyuJIT/arm32] Fix MultiReg flag setter
Hanjoung Lee [Wed, 23 Aug 2017 08:47:03 +0000 (17:47 +0900)]
[RyuJIT/arm32] Fix MultiReg flag setter

Bitwise operation fix in `SetRegSpillFlagByIdx()`.

Fix dotnet/coreclr#13423

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

7 years agoRemove empty span check from Stream.Read/Write (dotnet/coreclr#13536)
Stephen Toub [Wed, 23 Aug 2017 07:37:33 +0000 (03:37 -0400)]
Remove empty span check from Stream.Read/Write (dotnet/coreclr#13536)

When I added the base Stream.Read/Write(span) default implementations, I added a special-case check for if the span is empty, in which case it made the operation a nop.  But various streams want to impose behavior even in the 0-byte case, e.g. throwing an ObjectDisposedException if the stream has been closed.  This commit just removes the check and allows Read/Write to delegate for all sized spans.

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

7 years agoMerge pull request dotnet/coreclr#13535 from rartemev/issue_12467
Roman Artemev [Wed, 23 Aug 2017 06:54:26 +0000 (23:54 -0700)]
Merge pull request dotnet/coreclr#13535 from rartemev/issue_12467

Fixed assertion failure in legacy backend

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

7 years agoMerge pull request dotnet/coreclr#13522 from stephentoub/fsspan
Stephen Toub [Wed, 23 Aug 2017 03:40:10 +0000 (23:40 -0400)]
Merge pull request dotnet/coreclr#13522 from stephentoub/fsspan

Override Span-based Read/Write on FileStream

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

7 years agoFixed assertion failure in legacy backend
Roman Artemev [Wed, 23 Aug 2017 00:57:45 +0000 (17:57 -0700)]
Fixed assertion failure in legacy backend

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

7 years agoJIT: don't self assign to temps (dotnet/coreclr#13484)
Andy Ayers [Wed, 23 Aug 2017 00:04:02 +0000 (17:04 -0700)]
JIT: don't self assign to temps (dotnet/coreclr#13484)

Modify gtNewTempAssign to more generally map self-assignment of temps
into nops.

We already were doing something similar over in `impAssignStruct`, and
now we catch non-struct cases too.

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

7 years agorollback Changeset 1671419: importCall
dotnet-bot [Tue, 22 Aug 2017 23:12:08 +0000 (16:12 -0700)]
rollback Changeset 1671419: importCall

[tfs-changeset: 1671421]

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

7 years agoimportCall
dotnet-bot [Tue, 22 Aug 2017 23:05:26 +0000 (16:05 -0700)]
importCall

[tfs-changeset: 1671419]

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

7 years agoDisable default BuildNumberMajor
wtgodbe [Tue, 22 Aug 2017 22:45:26 +0000 (15:45 -0700)]
Disable default BuildNumberMajor

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

7 years agoRemove macro definition checks that aren't useful and cause unnecessary build breaks...
Sean Gillespie [Tue, 22 Aug 2017 21:37:53 +0000 (14:37 -0700)]
Remove macro definition checks that aren't useful and cause unnecessary build breaks (dotnet/coreclr#13523)

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

7 years agoFix inconsistency between GetHasCode and Equals (dotnet/coreclr#13513)
Jonghyun Park [Tue, 22 Aug 2017 20:56:01 +0000 (05:56 +0900)]
Fix inconsistency between GetHasCode and Equals (dotnet/coreclr#13513)

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

7 years agoAdd InnerIterationCount to layout benchmarks
Joseph Tremoulet [Tue, 22 Aug 2017 20:23:07 +0000 (16:23 -0400)]
Add InnerIterationCount to layout benchmarks

These tests were too short-running to measure effectively.  Add an inner
iteration count that makes the running time around 1 second (measured
locally).

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

7 years agoIntroduce COMPlus_GDBJitEmitDebugFrame (dotnet/coreclr#13515)
Jonghyun Park [Tue, 22 Aug 2017 19:31:26 +0000 (04:31 +0900)]
Introduce COMPlus_GDBJitEmitDebugFrame (dotnet/coreclr#13515)

* Introduce COMPlus_GDBJitEmitDebugFrame

* Use a proper #ifdef macro

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

7 years agoOverride Span-based Read/Write on FileStream
Stephen Toub [Tue, 22 Aug 2017 17:05:53 +0000 (13:05 -0400)]
Override Span-based Read/Write on FileStream

Adds overrides for the new Span-based Read/Write methods on FileStream.

A few notes:
- As with {Unmanaged}MemoryStream, FileStream isn't sealed, which means a derived type could have overridden all of the existing abstract/virtual methods, including Read(byte[],int,int).  If a consumer then switched to using that stream with Read(Span), because we now override Read(Span), the consumer should get the same behavior intended by the stream developer. As such, since we have no good/efficient way to check whether Read(byte[],int,int) is overridden, we check whether the current stream is a concrete FileStream (rather than a derived type), and if it isn't we use the default base behavior, which will call the Read(byte[],int,int) method.
- FileStream is odd in that it has a dual nature around whether it was initialized for sync vs async, a setting that on Windows ends up configuring the native handle to operate in async mode.  Sync operations on an async-configured FileStream end up delegating to the async methods and blocking, and async operations on a sync-configured FileStream end up using the synchronous behavior asynchronously.  There were some inconsistencies around how this was handled between Windows and Unix, in particular around the ReadByte method, and as part of adding these overloads, I changed that as well, as doing so made the code simpler with the new Span-based support.  Technically this is a breaking change on Unix, but it would be very niche, including calling ReadByte on an async stream while other async operations were in progress... in that case, the desktop and Windows core behavior was to allow direct access to any cached data in the buffer, whereas on Unix we would serialize the ReadByte call with other async operations in flight.

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

7 years ago[Arm64/Unix] Use portable MP optimized new/alloc (dotnet/coreclr#12333)
Steve MacLean [Tue, 22 Aug 2017 18:58:30 +0000 (14:58 -0400)]
[Arm64/Unix] Use portable MP optimized new/alloc (dotnet/coreclr#12333)

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

7 years ago[Arm64] Fix RecycledListsWrapper cache guard (dotnet/coreclr#13397)
Steve MacLean [Tue, 22 Aug 2017 18:58:04 +0000 (14:58 -0400)]
[Arm64] Fix RecycledListsWrapper cache guard (dotnet/coreclr#13397)

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

7 years agoMerge pull request dotnet/coreclr#12216 from ellismg/fix-warnings
William Godbe [Tue, 22 Aug 2017 18:36:09 +0000 (11:36 -0700)]
Merge pull request dotnet/coreclr#12216 from ellismg/fix-warnings

Fix warnings when building SOS.NETCore.csproj

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

7 years ago[Local GC] Enable building the GC as a shared library (dotnet/coreclr#13137)
Sean Gillespie [Tue, 22 Aug 2017 17:20:36 +0000 (10:20 -0700)]
[Local GC] Enable building the GC as a shared library (dotnet/coreclr#13137)

* [Local GC] Build the GC using system headers

* Disable features to get the GC to build

* Get rid of the separate 'GC PAL' build

* Remove unused stuff

* Don't build gcenv.os.cpp when linking in a standalone gc

* Stub out CPUGroupInfo and NumaNodeInfo

* Stub out IsGCThread and friends

* Build the GC as a shared library :tada:

* Build, link, and run! :tada:

* Fix standalone GC build break

* Fixes where the GC's MethodTable and VM's MethodTable classes disagree

* Integrate a standalone GC into the CoreCLR build system (so it gets copied to the output folder). Re-enable some ifdef-ed out includes that are required for a non-standalone build of the GC.

* Bring changes to Unix and fix the Unix build. Implement some compiler intrinsic wrappers and alignment functions expected by the GC.

* Fix the Windows build

* 1. Code review feedback: use standard types for BitScanForward and
   BitScanForward64
2. Delete FEATURE_COM stuff from the build system, not needed for this
PR
3. Fix the Unix build

* Fix the Windows x86 build - the _BitScanForward64 intrinsic is not available when targeting 32-bit platforms

* Remove a number of things from gcenv.base.h that are not used

* Remove a linker workaround now that we are not linking a standalone GC into the runtime

* Remove dead code, make the lack of GC_PROFILING for standalone gc not break profiling on the non-standalone build

* Code review feedback - use add_library_clr and other cmake-related fixes

* Fix include indentation

* Remove some extraneous parameters to cmake functions (cmake is remarkably lenient...)

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

7 years agoMerge pull request dotnet/coreclr#13461 from JosephTremoulet/TodoUpdate
Joseph Tremoulet [Tue, 22 Aug 2017 17:04:42 +0000 (13:04 -0400)]
Merge pull request dotnet/coreclr#13461 from JosephTremoulet/TodoUpdate

Update JitOptimizerTodoAssessment.md

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

7 years agoFollow-up: Add enforce PGO to official builds (dotnet/coreclr#13437)
Victor "Nate" Graf [Tue, 22 Aug 2017 17:02:51 +0000 (10:02 -0700)]
Follow-up: Add enforce PGO to official builds (dotnet/coreclr#13437)

* Add variables to pipeline to enable enforcepgo for Release

* Address review

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

7 years agoMerge pull request dotnet/coreclr#13487 from mikedn/switch-temp-type
Joseph Tremoulet [Tue, 22 Aug 2017 16:39:54 +0000 (12:39 -0400)]
Merge pull request dotnet/coreclr#13487 from mikedn/switch-temp-type

Fix incorrect switch temp lcl type

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

7 years agoDelete some dead PAL code (dotnet/coreclr#13469)
Justin Van Patten [Tue, 22 Aug 2017 14:09:08 +0000 (07:09 -0700)]
Delete some dead PAL code (dotnet/coreclr#13469)

* Delete some dead PAL code

GetComputerName and GetUserName are not used.

* HAVE_GETPWUID_R can now be deleted

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

7 years agoRemove empty try's (dotnet/coreclr#13493)
Dan Moseley [Tue, 22 Aug 2017 05:25:35 +0000 (22:25 -0700)]
Remove empty try's (dotnet/coreclr#13493)

* Remove empty try's

* Remove some dead comments

* more

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

7 years agoUndo a few JIT layout workarounds (dotnet/coreclr#13505)
Joseph Tremoulet [Tue, 22 Aug 2017 04:14:17 +0000 (00:14 -0400)]
Undo a few JIT layout workarounds (dotnet/coreclr#13505)

Remove some `goto`s that were added to work around dotnet/coreclr#9692 (poor code
layout for loop exit paths) -- the JIT's layout decisions were improved
in dotnet/coreclr#13314, and these particular `goto`s are no longer needed; crossgen
of System.Private.CoreLib now produces the same machine code with or
without this change.

Part of dotnet/coreclr#13466.

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

7 years agoThreadPool minimalistic thread request cap (dotnet/coreclr#13431)
Steve MacLean [Tue, 22 Aug 2017 03:10:01 +0000 (23:10 -0400)]
ThreadPool minimalistic thread request cap (dotnet/coreclr#13431)

Cap ThreadPool thread requests minimalistically

- Only request an additional thread on dequeue if enqueue request was suppressed, and if there are any work items left in the queues
- ThreadPool pad hot cache line
- Add ideas from dotnet/coreclr#13408

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

7 years agofix JitConfig initialize and destoy (dotnet/coreclr#13477)
Sergey Andreenko [Tue, 22 Aug 2017 01:04:29 +0000 (18:04 -0700)]
fix JitConfig initialize and destoy (dotnet/coreclr#13477)

fix JitConfig initialize and destoy.

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

7 years agoMerge pull request dotnet/coreclr#13496 from justinvp/version_parse
Stephen Toub [Tue, 22 Aug 2017 00:27:13 +0000 (20:27 -0400)]
Merge pull request dotnet/coreclr#13496 from justinvp/version_parse

Avoid unnecessary intermediate Version allocation

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

7 years agoFixing wcsstr function to account for cases where search string is longer than remain...
Mike Kaufman [Mon, 21 Aug 2017 23:30:34 +0000 (16:30 -0700)]
Fixing wcsstr function to account for cases where search string is longer than remaining target string. (dotnet/coreclr#13504)

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

7 years agoUse CreateFile2FromApp if available (dotnet/coreclr#13410)
Jeremy Kuhne [Mon, 21 Aug 2017 22:45:57 +0000 (15:45 -0700)]
Use CreateFile2FromApp if available (dotnet/coreclr#13410)

* Use CreateFile2FromApp if available

This is needed for F5 UAP brokering scenarios.

Remove check for handle type. Overzealous, doesn't apply to UAP scenarios.

* Address feedback

- Use CreateFile2 if Win8 or higher
- Always use CreateFile2FromApp if Appx
- Make DisableMediaInsertionPrompt a struct
- Push CreateFile2FromApp down to avoid JIT

* More feedback

Always use FromApp for WinRT.

* Conditionalize IsWindows8OrAbove check

* Always use FromApp if in AppX

* Address more feedback

- Fix Unix build by moving LoadString to shared
- Break out CREATEFILE2 struct
- Condition CreateFile2FromApp usage

* Move include

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

7 years agoClean up VS experience for s.p.corelib.csproj (dotnet/coreclr#13481)
Dan Moseley [Mon, 21 Aug 2017 22:18:28 +0000 (15:18 -0700)]
Clean up VS experience for s.p.corelib.csproj (dotnet/coreclr#13481)

* Remove bogus assembly warnings in VS

* Fix warnings about sharing files within the project tree

* Remove bogus lines

* Remove lines showing up as bogus source files

* Remove overridden target

* feedback

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

7 years agoMerge pull request dotnet/coreclr#13482 from rartemev/issue_12469
Roman Artemev [Mon, 21 Aug 2017 19:30:36 +0000 (12:30 -0700)]
Merge pull request dotnet/coreclr#13482 from rartemev/issue_12469

Fixed misconception between FP register allocator and RyuJIT's CSE phase

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

7 years agoMerge pull request dotnet/coreclr#13424 from stephentoub/versionspan
Stephen Toub [Mon, 21 Aug 2017 19:04:17 +0000 (15:04 -0400)]
Merge pull request dotnet/coreclr#13424 from stephentoub/versionspan

Add span-based Version methods

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

7 years agoSupport docker cgroup limits (dotnet/coreclr#13488)
Tom Deseyn [Mon, 21 Aug 2017 18:56:32 +0000 (20:56 +0200)]
Support docker cgroup limits (dotnet/coreclr#13488)

* Fix cgroup mountinfo parsing

The parsing would find the wrong '-' in lines like this:
354 347 0:28 /system.slice/docker-654dd7b6b8bbfe1739ae3309b471e95ccc82b3a3f56b7879f0a811d68b5c4e1d.scope /sys/fs/cgroup/cpuacct,cpu ro,nosuid,nodev,noexec,relatime - cgroup cgroup rw,cpuacct,cpu

* cgroup: don't append cgroup relative path for reading docker limits

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

7 years agoMerge pull request dotnet/coreclr#13497 from noahfalk/tiered_jit_fix_tests
Noah Falk [Mon, 21 Aug 2017 17:45:32 +0000 (10:45 -0700)]
Merge pull request dotnet/coreclr#13497 from noahfalk/tiered_jit_fix_tests

Enable by-request tiered compilation testing in CI

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

7 years agoMerge pull request dotnet/coreclr#13483 from dotnet-maestro-bot/master-UpdateDependencies
Stephen Toub [Mon, 21 Aug 2017 17:38:32 +0000 (13:38 -0400)]
Merge pull request dotnet/coreclr#13483 from dotnet-maestro-bot/master-UpdateDependencies

Update CoreClr, CoreFx to preview2-25621-02, preview2-25621-02, respectively (master)

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

7 years agoMerge pull request dotnet/coreclr#12489 from jashook/unix_x64_and_arm64_fasttailcall_fix
Jarret Shook [Mon, 21 Aug 2017 16:10:57 +0000 (09:10 -0700)]
Merge pull request dotnet/coreclr#12489 from jashook/unix_x64_and_arm64_fasttailcall_fix

[Unix x64|Arm64] Correct canfastTailCall decisions

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

7 years agoUpdate CoreClr, CoreFx to preview2-25621-02, preview2-25621-02, respectively
dotnet-maestro-bot [Mon, 21 Aug 2017 13:32:54 +0000 (06:32 -0700)]
Update CoreClr, CoreFx to preview2-25621-02, preview2-25621-02, respectively

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

7 years agoChange the position of unassignPhysReg()
sjsujinkim [Mon, 21 Aug 2017 01:57:23 +0000 (10:57 +0900)]
Change the position of unassignPhysReg()

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

7 years agoFixing assert in groovy
noahfalk [Mon, 21 Aug 2017 00:21:57 +0000 (17:21 -0700)]
Fixing assert in groovy

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

7 years agoEnable by-request tiered compilation testing in CI
noahfalk [Sun, 20 Aug 2017 23:43:23 +0000 (16:43 -0700)]
Enable by-request tiered compilation testing in CI

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

7 years agoAvoid unnecessary intermediate Version allocation
Justin Van Patten [Sun, 20 Aug 2017 19:37:18 +0000 (12:37 -0700)]
Avoid unnecessary intermediate Version allocation

`Version..ctor(string)` is implemented by calling `Version.Parse`, which
allocates an intermediate `Version` instance. Avoid the unnecessary
intermediate allocation by using `Version.Parse` directly.

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

7 years agoFix incorrect switch temp lcl type
Mike Danes [Sat, 19 Aug 2017 08:59:24 +0000 (11:59 +0300)]
Fix incorrect switch temp lcl type

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

7 years agoMerge pull request dotnet/coreclr#12892 from pgavlin/LivenessDCE
Pat Gavlin [Sat, 19 Aug 2017 13:43:06 +0000 (06:43 -0700)]
Merge pull request dotnet/coreclr#12892 from pgavlin/LivenessDCE

Improve DCE in LIR liveness.

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

7 years agodelete unused return argument (dotnet/coreclr#13468)
Sergey Andreenko [Sat, 19 Aug 2017 03:50:13 +0000 (20:50 -0700)]
delete unused return argument (dotnet/coreclr#13468)

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

7 years agoRename System.Threading.Thread.m_ManagedThreadId to System.Threading.Thread._ManagedT...
Andrew Au [Sat, 19 Aug 2017 03:04:37 +0000 (20:04 -0700)]
Rename System.Threading.Thread.m_ManagedThreadId to System.Threading.Thread._ManagedThreadId to align with CoreRT implementation (dotnet/coreclr#13473)

Rename System.Threading.Thread.m_ManagedThreadId to System.Threading.Thread._ManagedThreadId to align with CoreRT implementation

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

7 years agoFixed misconception between FP register allocator and RyuJIT's CSE phase
Roman Artemev [Sat, 19 Aug 2017 01:20:06 +0000 (18:20 -0700)]
Fixed misconception between FP register allocator and RyuJIT's CSE phase

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

7 years agoMerge pull request dotnet/coreclr#13392 from noahfalk/tiered_jit_fix_tests
Noah Falk [Sat, 19 Aug 2017 00:59:22 +0000 (17:59 -0700)]
Merge pull request dotnet/coreclr#13392 from noahfalk/tiered_jit_fix_tests

Make unit tests run clean with tiered compilation

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

7 years agoMerge pull request dotnet/coreclr#13472 from dotnet/revert-13464-reimport_rhel6_test_...
Wes Haggard [Fri, 18 Aug 2017 23:08:48 +0000 (16:08 -0700)]
Merge pull request dotnet/coreclr#13472 from dotnet/revert-13464-reimport_rhel6_test_change

Revert "Re-port test project changes from release/2.0.0 to master"

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

7 years ago`perf.groovy` updates. (dotnet/coreclr#13465)
José Rivero [Fri, 18 Aug 2017 21:19:17 +0000 (14:19 -0700)]
`perf.groovy` updates. (dotnet/coreclr#13465)

- Increase how long performance artifacts are kept.
- Added an extra step to move files to be archived into a different folder.

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

7 years agoImprove DCE in liveness.
Pat Gavlin [Mon, 17 Jul 2017 16:55:36 +0000 (09:55 -0700)]
Improve DCE in liveness.

In particular:
- Rather than only removing dead code as part of dead store removal,
  remove all side-effect-free nodes that either do not produce a value
  or produce a value that is unused.
- When optimizing, set `fgStmtRemoved` in order to indicate that tracked
  lclVar uses or defs have been removed and liveness may need to be
  recalculated. Previously this flag was only set upon eliminating a
  dead store.

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

7 years agoJIT: extend gc descriptor for ppp quirked local struct (dotnet/coreclr#13438)
Andy Ayers [Fri, 18 Aug 2017 20:46:32 +0000 (13:46 -0700)]
JIT: extend gc descriptor for ppp quirked local struct (dotnet/coreclr#13438)

When we expand the size of a local for the ppp quirk, also expand
the size of its gc descriptor, and mark the new "fields" as non-gc.

Fixes dotnet/coreclr#13407.

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

7 years agoMerge pull request dotnet/coreclr#13439 from dotnet-maestro-bot/master-UpdateDependencies
Wes Haggard [Fri, 18 Aug 2017 20:00:50 +0000 (13:00 -0700)]
Merge pull request dotnet/coreclr#13439 from dotnet-maestro-bot/master-UpdateDependencies

Update CoreClr, CoreFx to preview2-25618-04, preview2-25618-02, respectively (master)

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

7 years agoRevert "Re-port test project changes from release/2.0.0 to master (dotnet/coreclr...
Jan Kotas [Fri, 18 Aug 2017 19:54:02 +0000 (12:54 -0700)]
Revert "Re-port test project changes from release/2.0.0 to master (dotnet/coreclr#13464)"

This reverts commit dotnet/coreclr@7a386da8fc7067978a880445555942ccc6343be8.

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

7 years agoRe-port test project changes from release/2.0.0 to master (dotnet/coreclr#13464)
smile21prc [Fri, 18 Aug 2017 17:49:52 +0000 (10:49 -0700)]
Re-port test project changes from release/2.0.0 to master (dotnet/coreclr#13464)

Re-port test project changes from release/2.0.0 to master

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

7 years agoMention Byref Store/Load VN and Helper Call Kills
Joseph Tremoulet [Fri, 18 Aug 2017 16:13:41 +0000 (12:13 -0400)]
Mention Byref Store/Load VN and Helper Call Kills

These are two more areas that have received recent scrutiny.

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

7 years agoMerge pull request dotnet/coreclr#13314 from JosephTremoulet/loops
Joseph Tremoulet [Fri, 18 Aug 2017 16:25:31 +0000 (12:25 -0400)]
Merge pull request dotnet/coreclr#13314 from JosephTremoulet/loops

Lay out loop bodies contiguously

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

7 years agoCategorize optimization ToDos
Joseph Tremoulet [Fri, 18 Aug 2017 16:09:56 +0000 (12:09 -0400)]
Categorize optimization ToDos

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

7 years agoUpdate JitOptimizerTodoAssessment
Joseph Tremoulet [Fri, 18 Aug 2017 15:58:33 +0000 (11:58 -0400)]
Update JitOptimizerTodoAssessment

Update notes on struct promotion, loop optimization, if-conversion, and
mulshift.  Add notes about switch lowering and write barriers.

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

7 years agoMerge pull request dotnet/coreclr#13459 from adiaaida/updatePgoCounts
Michelle McDaniel [Fri, 18 Aug 2017 15:47:47 +0000 (08:47 -0700)]
Merge pull request dotnet/coreclr#13459 from adiaaida/updatePgoCounts

Update optdata in master to version 20170817-0120

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

7 years agoUpdate optdata in master to version 20170817-0120
Michelle McDaniel [Fri, 18 Aug 2017 15:42:45 +0000 (08:42 -0700)]
Update optdata in master to version 20170817-0120

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

7 years agoMerge pull request dotnet/coreclr#13456 from adiaaida/revertPGO
Michelle McDaniel [Fri, 18 Aug 2017 15:31:58 +0000 (08:31 -0700)]
Merge pull request dotnet/coreclr#13456 from adiaaida/revertPGO

Revert "Update optdata in master to version 20170817-0120"

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

7 years agoRevert "Update optdata in master to version 20170817-0120"
Michelle McDaniel [Fri, 18 Aug 2017 15:31:19 +0000 (08:31 -0700)]
Revert "Update optdata in master to version 20170817-0120"

This reverts commit dotnet/coreclr@694eb48ae21ae79ca745fa3448be87d144ff912d.

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

7 years agoMerge pull request dotnet/coreclr#13455 from adiaaida/updatePgoCounts
Michelle McDaniel [Fri, 18 Aug 2017 15:24:28 +0000 (08:24 -0700)]
Merge pull request dotnet/coreclr#13455 from adiaaida/updatePgoCounts

Update optdata in master to version 20170817-0120

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

7 years agoIntroduce COMPlus_GDBJitElfDump (dotnet/coreclr#13448)
Jonghyun Park [Fri, 18 Aug 2017 15:21:56 +0000 (00:21 +0900)]
Introduce COMPlus_GDBJitElfDump (dotnet/coreclr#13448)

* Add COMPlus_GDBJitElfDump

* Fix Release build error

* Add flags in EEConfig

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

7 years agoUpdate optdata in master to version 20170817-0120
Michelle McDaniel [Fri, 18 Aug 2017 15:21:11 +0000 (08:21 -0700)]
Update optdata in master to version 20170817-0120

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

7 years agoMerge pull request dotnet/coreclr#13400 from sergign60/arm_build
Bruce Forstall [Fri, 18 Aug 2017 15:11:45 +0000 (08:11 -0700)]
Merge pull request dotnet/coreclr#13400 from sergign60/arm_build

[armel tizen] Fix for CoreRT issue https://github.com/dotnet/coreclr/issues/13195

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

7 years ago[Unix x64|Arm64] Correct canfastTailCall decisions
jashook [Mon, 5 Jun 2017 21:48:51 +0000 (14:48 -0700)]
[Unix x64|Arm64] Correct canfastTailCall decisions

This will change how the fastTailCall decision is made for x64 unix and arm64.
Before this change the decision was based on the amount of incoming and outgoing
caller arguments like on Windows. This was incorrect on Unix x64 and Arm64
because one argument does not translate to one register or one stack slot use.

Before this change structs on Arm64 and Amd64 Unix could
pessimize when we could fastTailCall if they were engregisterable
and took more than one register.

This change also fixes several cases when determining to fastTailCall. It fixes
 dotnet/coreclr#12479 and will cause a no fastTailCalls decisions for case dotnet/coreclr#12468.

In addition this change adds several regression cases for dotnet/coreclr#12479 and dotnet/coreclr#12468. It
includes more logging ofr fastTailCall decisions, including a new COMPlus
variable named COMPlus_JitReportFastTailCallDecisions, which can be toggled with
COMPlus_JitReportFastTailCallDecisions=1.

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

7 years agoUpdate CoreClr, CoreFx to preview2-25618-04, preview2-25618-02, respectively
dotnet-maestro-bot [Fri, 18 Aug 2017 13:32:14 +0000 (06:32 -0700)]
Update CoreClr, CoreFx to preview2-25618-04, preview2-25618-02, respectively

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

7 years agoFix for CoreRT issue https://github.com/dotnet/coreclr/issues/13195
Sergey Ignatov [Wed, 16 Aug 2017 18:30:06 +0000 (21:30 +0300)]
Fix for CoreRT issue https://github.com/dotnet/coreclr/issues/13195

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

7 years agoRemove unnecessary genIsValidDoubleReg() assertion
sjsujinkim [Fri, 18 Aug 2017 05:43:01 +0000 (14:43 +0900)]
Remove unnecessary genIsValidDoubleReg() assertion

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#4340 from dotnet/nmirror
Jan Kotas [Thu, 17 Aug 2017 21:22:32 +0000 (14:22 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#4340 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/367d9b1dd1b542f3d391d0b9111d5914602db2d9

7 years agoTypo (dotnet/coreclr#13444)
John Doe [Fri, 18 Aug 2017 04:41:54 +0000 (21:41 -0700)]
Typo (dotnet/coreclr#13444)

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

7 years agoMerge pull request dotnet/coreclr#13445 from hseok-oh/ryujit/fix_13421
Bruce Forstall [Fri, 18 Aug 2017 04:36:56 +0000 (21:36 -0700)]
Merge pull request dotnet/coreclr#13445 from hseok-oh/ryujit/fix_13421

[RyuJIT/ARM32] Set carry bit: neg operation

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

7 years agoMerge pull request dotnet/coreclr#13442 from BruceForstall/EnableSuperPmiCoreDisAsmDiffs2
Bruce Forstall [Fri, 18 Aug 2017 04:34:58 +0000 (21:34 -0700)]
Merge pull request dotnet/coreclr#13442 from BruceForstall/EnableSuperPmiCoreDisAsmDiffs2

Enable SuperPMI asm diffs using CoreDisTools

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

7 years agoPort fixes in DotNet-CoreClr-Trusted-Linux.json to unblock coreclr (dotnet/coreclr...
smile21prc [Fri, 18 Aug 2017 03:58:14 +0000 (20:58 -0700)]
Port fixes in DotNet-CoreClr-Trusted-Linux.json to unblock coreclr (dotnet/coreclr#13446)

* Port fixes in DotNet-CoreClr-Trusted-Linux.json to unblock coreclr official run.

Port this commit:
https://github.com/dotnet/coreclr/commit/dotnet/coreclr@66d0fed853589e19336b6486f05f9218019ca4c9

* Remove extra new line at end of the file

Remove extra new line at end of the file

* Remove end line

Remove end line

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

7 years agoSplit fgComputeLifeLocal's subcases into separate functions.
Pat Gavlin [Tue, 18 Jul 2017 22:17:46 +0000 (15:17 -0700)]
Split fgComputeLifeLocal's subcases into separate functions.

There are three cases that are relevant here:
- Defs of tracked locals
- Uses of tracked locals
- Appearances of untracked locals

Each of these cases has been moved into its own function.

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

7 years ago[RyuJIT/ARM32] Set carry bit: neg operation
Hyeongseok Oh [Fri, 18 Aug 2017 02:50:27 +0000 (11:50 +0900)]
[RyuJIT/ARM32] Set carry bit: neg operation

Set carry bit when we generate ARM32 code for neg operation.

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

7 years agoEnable SuperPMI asm diffs using CoreDisTools
Bruce Forstall [Fri, 18 Aug 2017 01:29:20 +0000 (18:29 -0700)]
Enable SuperPMI asm diffs using CoreDisTools

Change SuperPMI to dynamically load coredistools.dll on demand.

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

7 years agoMerge pull request dotnet/coreclr#12632 from rartemev/issue_12464
Roman Artemev [Fri, 18 Aug 2017 01:34:37 +0000 (18:34 -0700)]
Merge pull request dotnet/coreclr#12632 from rartemev/issue_12464

Fix legacy backend crash on assert dotnet/coreclr#12464

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

7 years agoMigrate Git clone from GitHub to VSO (dotnet/coreclr#13430)
smile21prc [Fri, 18 Aug 2017 01:24:22 +0000 (18:24 -0700)]
Migrate Git clone from GitHub to VSO (dotnet/coreclr#13430)

* Migrate Git clone from GitHub to VSO

Migrate Git clone from GitHub to VSO

* Correct var name

Correct var name

* Remove PB_ as they are unnecessary and confusing.

Remove PB_ as they are unnecessary and confusing.

* Add dependent vars.

Add dependent vars.

* Fix repo name.

Fix repo name.

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

7 years agoFix more contract violations
noahfalk [Fri, 18 Aug 2017 00:39:49 +0000 (17:39 -0700)]
Fix more contract violations

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