platform/upstream/dotnet/runtime.git
7 years agoFactor signedness test into helper
Joseph Tremoulet [Thu, 16 Feb 2017 19:45:52 +0000 (11:45 -0800)]
Factor signedness test into helper

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

7 years agoUpdate array length compare value numbers on CSE
Joseph Tremoulet [Mon, 13 Feb 2017 22:27:12 +0000 (14:27 -0800)]
Update array length compare value numbers on CSE

Modify CSE to identify compares which are functions of CSE candidate array
length nodes; when those length nodes get CSEd and consequently have their
value numbers updated, also update the value number on the compare
consuming the array length; this way the assertions generated in assertion
prop for the different compares on the CSEd array will use the same value
numbers, and range check elimination becomes more effective.

Resolves dotnet/coreclr#5371

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

7 years agoJIT: Finally chain merging (dotnet/coreclr#8810)
Andy Ayers [Wed, 15 Feb 2017 19:11:13 +0000 (11:11 -0800)]
JIT: Finally chain merging (dotnet/coreclr#8810)

Add an optimization that performs a specialized tail merge for chains
of callfinallys. These can arise from try-finallys where there are
multiple exit points from the try that have the same continuation.

When the jit generates a callfinally, it does so without considering
whether some previously generated callfinally might invoke the same
handler and then continue on to the same continuation.

This optimization looks for callfinallys that invoke the same handler
and have the same continuation and effectively merges them into one
canonical callfinally.

This optimization is done bottom-up (from outermost handler invocation
to innermost) to allow the merging done at an outer levels to enable
merging at inner levels.

This optimization saves code size and also results in more compact EH
reporting, since the callfinallies are reported to the runtime as
duplicate EH regions.

When run upstream of finally cloning, finally chain merging also allows
more of the paths exiting the try to exit via the clone.

Also fix an issue in block ref count maintenance during empty try
removal that caused an assert during finally chain merging.

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

7 years agoMerge pull request dotnet/coreclr#9479 from AndyAyersMS/TrimInlineGcRefs
Andy Ayers [Wed, 15 Feb 2017 17:33:16 +0000 (09:33 -0800)]
Merge pull request dotnet/coreclr#9479 from AndyAyersMS/TrimInlineGcRefs

JIT: null out inline gc type locals after inline body

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

7 years ago[ARM64/Unix] LLDB (dotnet/coreclr#9504)
Steve MacLean [Wed, 15 Feb 2017 17:00:56 +0000 (12:00 -0500)]
[ARM64/Unix] LLDB (dotnet/coreclr#9504)

* [Arm64/Unix] Default to no lldb in build-rootfs

lldb is not readily available on arm64 Ubuntu releases prior to
16.10

Set the default lldb version to none to allow building Arm64 rootfs

* [Arm64/Unix] Warn if lldb is missing

SOS lldb plugin is an optional component

lldb is not availiable on arm64 prior to lldb3.9

lldb3.9 is not readily available on many ubuntu until 16.10

Change error to warning to simplify building arm64

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

7 years agoFix build-rootfs.sh to include lldb package (dotnet/coreclr#9608)
Hyung-Kyu Choi [Wed, 15 Feb 2017 12:07:08 +0000 (21:07 +0900)]
Fix build-rootfs.sh to include lldb package (dotnet/coreclr#9608)

lldb package is missing for architectures other than arm and armel.

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/94d1639d5d0b969489abbb3ce78b11a72c4493c4

7 years ago[x86/Linux] Fix CreateInstantiatingILStub (dotnet/coreclr#9590)
SaeHie Park [Wed, 15 Feb 2017 05:12:06 +0000 (14:12 +0900)]
[x86/Linux] Fix CreateInstantiatingILStub (dotnet/coreclr#9590)

The hidden argument should be always passed last for x86

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

7 years agoMerge pull request dotnet/coreclr#9472 from ramarag/RMLocalizationparity
Rama krishnan Raghupathy [Wed, 15 Feb 2017 02:55:00 +0000 (18:55 -0800)]
Merge pull request dotnet/coreclr#9472 from ramarag/RMLocalizationparity

RM localization parity with desktop

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

7 years agoRewrite GetRegisterAddressByIndex using getRegAddr (dotnet/coreclr#9574)
Jonghyun Park [Wed, 15 Feb 2017 01:11:32 +0000 (10:11 +0900)]
Rewrite GetRegisterAddressByIndex using getRegAddr (dotnet/coreclr#9574)

* Rewrite GetRegisterAddressByIndex using getRegAddr

* Use offset-based indirection in x86 getRegAddr

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

7 years agoMerge pull request dotnet/coreclr#9593 from wtgodbe/skipGCTests
William Godbe [Wed, 15 Feb 2017 00:49:20 +0000 (16:49 -0800)]
Merge pull request dotnet/coreclr#9593 from wtgodbe/skipGCTests

Return exit code 0 for long-running/GCSimulator tests in Helix

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

7 years agoRemoving nativeGetResourceFallbackArray support from Vm
Rama Krishnan Raghupathy [Wed, 15 Feb 2017 00:44:42 +0000 (16:44 -0800)]
Removing  nativeGetResourceFallbackArray support from Vm

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

7 years agoMerge pull request dotnet/coreclr#9583 from JosephTremoulet/ByrefConst
Joseph Tremoulet [Wed, 15 Feb 2017 00:41:17 +0000 (19:41 -0500)]
Merge pull request dotnet/coreclr#9583 from JosephTremoulet/ByrefConst

Value number casts and zeros of TYP_BYREF

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

7 years agoMerge pull request dotnet/coreclr#9589 from dotnet-bot/master-UpdateDependencies
William Godbe [Wed, 15 Feb 2017 00:27:07 +0000 (16:27 -0800)]
Merge pull request dotnet/coreclr#9589 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-25014-04 (master)

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

7 years agoRemoving Os specified ulimatefallback for localization
Rama Krishnan Raghupathy [Thu, 9 Feb 2017 23:09:12 +0000 (15:09 -0800)]
Removing Os specified ulimatefallback for localization

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

7 years agoMerge pull request dotnet/coreclr#9485 from sivarv/span
Sivarv [Tue, 14 Feb 2017 23:48:14 +0000 (15:48 -0800)]
Merge pull request dotnet/coreclr#9485 from sivarv/span

Promote struct containing fields of struct of a single pointer-size field

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

7 years agoReturn exit code 0 for long-running/GCSimulator tests in Helix
wtgodbe [Tue, 14 Feb 2017 22:49:06 +0000 (14:49 -0800)]
Return exit code 0 for long-running/GCSimulator tests in Helix

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

7 years agoMerge pull request dotnet/coreclr#9522 from sandreenko/GVM-for-corert
Sergey Andreenko [Tue, 14 Feb 2017 22:55:30 +0000 (14:55 -0800)]
Merge pull request dotnet/coreclr#9522 from sandreenko/GVM-for-corert

Generic Virtual methods  for CoreRT

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

7 years agoUpdate CoreClr to beta-25014-04
dotnet-bot [Tue, 14 Feb 2017 22:52:30 +0000 (22:52 +0000)]
Update CoreClr to beta-25014-04

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

7 years agoFix EH_LOG Catch set notation (dotnet/coreclr#9586)
Steve MacLean [Tue, 14 Feb 2017 22:26:32 +0000 (17:26 -0500)]
Fix EH_LOG Catch set notation (dotnet/coreclr#9586)

Update log to indicate EHClause.TryEndPC in non-inclusive

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

7 years agoPromote struct containing fields of struct of a single pointer-size field.
sivarv [Fri, 10 Feb 2017 05:31:04 +0000 (21:31 -0800)]
Promote struct containing fields of struct of a single pointer-size field.

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

7 years agoMerge pull request dotnet/coreclr#9584 from wtgodbe/chmod
William Godbe [Tue, 14 Feb 2017 21:04:05 +0000 (13:04 -0800)]
Merge pull request dotnet/coreclr#9584 from wtgodbe/chmod

chmod +x all .sh files before Helix execution

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

7 years agoGeneric Virtual calls for CoreRT
Sergey Andreenko [Sat, 11 Feb 2017 02:35:00 +0000 (18:35 -0800)]
Generic Virtual calls for CoreRT

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

7 years agochmod +x all .sh files before Helix execution
wtgodbe [Tue, 14 Feb 2017 20:34:53 +0000 (12:34 -0800)]
chmod +x all .sh files before Helix execution

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

7 years agoMerge pull request dotnet/coreclr#9579 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Tue, 14 Feb 2017 20:04:14 +0000 (12:04 -0800)]
Merge pull request dotnet/coreclr#9579 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-25014-03 (master)

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

7 years agoJIT: null out inline gc type locals after inline body
Andy Ayers [Fri, 10 Feb 2017 00:43:55 +0000 (16:43 -0800)]
JIT: null out inline gc type locals after inline body

Inlining can sometimes end up stretching GC lifetimes for inlinee
locals past the end of the inlinee method body.

This change extends the work done for inlining methods with pinned
locals to null out all gc ref type locals. If there are any gc type
locals, the return value is copied to a temp inside the inlinee body,
and then at the end of the body the gc type locals are set to null.

In most cases these null stores end up getting removed by dead code
elimination, but if the local ends up untracked, the store remains
and limits the active GC lifetime.

This change requires more extensive use of the return value spill temp
(since we must be absolutely sure the return value expression does not
depend on any of the locals). We now use the spill temp if any local is
a gc ref type (used or not).

More widespread use of the spill temp exposed an issue in the tail call
transformation, where the side effect flags were overly pessimistic for
a post tail-call GT_COMMA statement that represented an ignored return
value from an inlined call. The root issue is that the return value
placeholder is given a GTF_CALL effect but later when the actual return
value expression is substituted in place there may be no side effect --
in particular this happens when the return value expression is the spill
temp.

So, we also update the post tail-call side-effect-free statment check to
look through the potentially pessimistic GT_COMMA flags and check for side
effects on the child nodes.

Closes dotnet/coreclr#9218.

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

7 years agoValue number casts and zeros of TYP_BYREF
Joseph Tremoulet [Tue, 14 Feb 2017 19:39:03 +0000 (14:39 -0500)]
Value number casts and zeros of TYP_BYREF

Value numbering already has a representation for constants of byref type.
Hook up both `VNZeroForType` and `EvalCastForConstantArgs` to return a
value number using this representation (rather than fail an assertion)
when the requested result type is byref.

Fixes dotnet/coreclr#9453

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

7 years agoUpdate CoreClr to beta-25014-03
dotnet-bot [Tue, 14 Feb 2017 17:49:32 +0000 (17:49 +0000)]
Update CoreClr to beta-25014-03

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

7 years agoMerge pull request dotnet/coreclr#9566 from pgavlin/MeasureIR
Pat Gavlin [Tue, 14 Feb 2017 17:24:06 +0000 (09:24 -0800)]
Merge pull request dotnet/coreclr#9566 from pgavlin/MeasureIR

Add IR size after certain phases to the JIT log.

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

7 years agoMerge pull request dotnet/coreclr#9575 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Tue, 14 Feb 2017 17:12:57 +0000 (09:12 -0800)]
Merge pull request dotnet/coreclr#9575 from dotnet-bot/master-UpdateDependencies

Update CoreClr, CoreFx to beta-25014-02, beta-25014-02, respectively (master)

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

7 years agoAdd case-insensitive String.Replace overloads (dotnet/coreclr#9316)
Erti-Chris Eelmaa [Tue, 14 Feb 2017 16:35:16 +0000 (16:35 +0000)]
Add case-insensitive String.Replace overloads (dotnet/coreclr#9316)

Added overloads for String.Replace so that they now accept
StringComparison and CultureInfo as input parameters.

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

7 years agoMerge pull request dotnet/coreclr#9475 from jashook/lst_creator_update
Jarret Shook [Tue, 14 Feb 2017 16:31:05 +0000 (08:31 -0800)]
Merge pull request dotnet/coreclr#9475 from jashook/lst_creator_update

Update lst_creator and Arm64 lstFile

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

7 years agoUpdate CoreClr, CoreFx to beta-25014-02, beta-25014-02, respectively
dotnet-bot [Tue, 14 Feb 2017 15:04:30 +0000 (15:04 +0000)]
Update CoreClr, CoreFx to beta-25014-02, beta-25014-02, respectively

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

7 years ago[x86/Linux] Fix IL Stub for Shared Generic (dotnet/coreclr#9571)
SaeHie Park [Tue, 14 Feb 2017 14:55:45 +0000 (23:55 +0900)]
[x86/Linux] Fix IL Stub for Shared Generic (dotnet/coreclr#9571)

Fix parameter order in UnboxingILStub for Shared Generic

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

7 years agoMerge pull request dotnet/coreclr#9411 from hqueue/cross/common
Gaurav Khanna [Tue, 14 Feb 2017 05:16:09 +0000 (21:16 -0800)]
Merge pull request dotnet/coreclr#9411 from hqueue/cross/common

Use same logic to prepare rootfs across dotnet if possible

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

7 years agoMerge pull request dotnet/coreclr#9546 from parjong/fix/issue_9545
Bruce Forstall [Tue, 14 Feb 2017 05:15:36 +0000 (21:15 -0800)]
Merge pull request dotnet/coreclr#9546 from parjong/fix/issue_9545

[x86/Linux] Ignore fake jump while checking funclet branches

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

7 years agoMerge pull request dotnet/coreclr#9572 from AndyAyersMS/FixTailCallStress
Andy Ayers [Tue, 14 Feb 2017 04:38:56 +0000 (20:38 -0800)]
Merge pull request dotnet/coreclr#9572 from AndyAyersMS/FixTailCallStress

Jit: fix gtIsRecursiveCall

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

7 years agoMerge pull request dotnet/coreclr#9573 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Tue, 14 Feb 2017 04:12:26 +0000 (20:12 -0800)]
Merge pull request dotnet/coreclr#9573 from dotnet-bot/master-UpdateDependencies

Update CoreFx to beta-25014-01 (master)

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

7 years agoMerge pull request dotnet/coreclr#9567 from fiigii/master
Sivarv [Tue, 14 Feb 2017 03:54:27 +0000 (19:54 -0800)]
Merge pull request dotnet/coreclr#9567 from fiigii/master

Directly support Min/Max intrinsic for Vector<T> on SSE3_4 and above targets

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

7 years agoUpdate CoreFx to beta-25014-01
dotnet-bot [Tue, 14 Feb 2017 02:59:38 +0000 (02:59 +0000)]
Update CoreFx to beta-25014-01

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

7 years agoJit: fix gtIsRecursiveCall
Andy Ayers [Tue, 14 Feb 2017 02:38:14 +0000 (18:38 -0800)]
Jit: fix gtIsRecursiveCall

When called from the inline compiler, this needs to look at the root
method's handle, not the inlined method's handle.

Fixes dotnet/coreclr#9568.

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

7 years agoFormat code.
Pat Gavlin [Tue, 14 Feb 2017 01:56:48 +0000 (17:56 -0800)]
Format code.

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

7 years agoMerge pull request dotnet/coreclr#9298 from noahfalk/r2r
noahfalk [Tue, 14 Feb 2017 01:51:40 +0000 (17:51 -0800)]
Merge pull request dotnet/coreclr#9298 from noahfalk/r2r

Rejit support for R2R

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

7 years agoDirectly support Min/Max intrinsic for Vector<T> on SSE3_4 and above targets
Fei Peng [Tue, 14 Feb 2017 00:07:56 +0000 (16:07 -0800)]
Directly support Min/Max intrinsic for Vector<T> on SSE3_4 and above targets

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

7 years agoMerge pull request dotnet/coreclr#9483 from dotnet-bot/master-UpdateDependencies
William Godbe [Tue, 14 Feb 2017 01:23:55 +0000 (17:23 -0800)]
Merge pull request dotnet/coreclr#9483 from dotnet-bot/master-UpdateDependencies

Update CoreClr, CoreFx to beta-25013-09, beta-25013-01, respectively (master)

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

7 years agoMerge pull request dotnet/coreclr#9551 from danmosemsft/dead2
Dan Moseley [Tue, 14 Feb 2017 00:56:52 +0000 (16:56 -0800)]
Merge pull request dotnet/coreclr#9551 from danmosemsft/dead2

Remove dead source files in vm\**

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

7 years agoMerge pull request dotnet/coreclr#9564 from pgavlin/ReportCodeSize
Pat Gavlin [Tue, 14 Feb 2017 00:56:08 +0000 (16:56 -0800)]
Merge pull request dotnet/coreclr#9564 from pgavlin/ReportCodeSize

Report code and GC info size in the JIT time log.

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

7 years agoUpdate lst_creator.
jashook [Fri, 3 Feb 2017 00:48:27 +0000 (16:48 -0800)]
Update lst_creator.

Generally refactoring, make it a little more robust and easier to use.
In addition, expand its functionality to update the lstFile.

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

7 years agoAdd IR size after certain phases to the JIT log.
Pat Gavlin [Mon, 13 Feb 2017 23:39:33 +0000 (15:39 -0800)]
Add IR size after certain phases to the JIT log.

This change adds support for measuring and reporting the number of nodes
in a function after a certain subset of the JIT's phases. This reporting
is enabled by setting `COMPlus_JitMeasureIR` and `COMPlus_JtiTimeLogCsv`
in conjunction with each other.

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

7 years agoMerge pull request dotnet/coreclr#9560 from JosephTremoulet/TypeToTypeVN
Joseph Tremoulet [Mon, 13 Feb 2017 23:38:50 +0000 (18:38 -0500)]
Merge pull request dotnet/coreclr#9560 from JosephTremoulet/TypeToTypeVN

Value number TypeHandleToRuntimeType helper

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

7 years agoUpdate CoreClr, CoreFx to beta-25013-09, beta-25013-01, respectively
dotnet-bot [Mon, 13 Feb 2017 23:36:44 +0000 (23:36 +0000)]
Update CoreClr, CoreFx to beta-25013-09, beta-25013-01, respectively

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

7 years agoFix build break
danmosemsft [Mon, 13 Feb 2017 23:03:15 +0000 (15:03 -0800)]
Fix build break

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

7 years agoMerge pull request dotnet/coreclr#9562 from AndyAyersMS/FixMagicTypeEquality
Andy Ayers [Mon, 13 Feb 2017 22:52:47 +0000 (14:52 -0800)]
Merge pull request dotnet/coreclr#9562 from AndyAyersMS/FixMagicTypeEquality

Jit: fix for broken type equality optimization

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

7 years agoMerge pull request dotnet/coreclr#9563 from pgavlin/FixPrintCsvHeader
Pat Gavlin [Mon, 13 Feb 2017 22:42:40 +0000 (14:42 -0800)]
Merge pull request dotnet/coreclr#9563 from pgavlin/FixPrintCsvHeader

Fix `JitTimeLog::PrintCsvHeader`.

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

7 years agoRejit support for R2R images
noahfalk [Mon, 13 Feb 2017 22:41:20 +0000 (14:41 -0800)]
Rejit support for R2R images

Two changes:
a) R2R code wasn't being reported to the Rejit Manager when it was used, this is a simple fix in prestub.cpp. This makes the ReJit API work.
b) The bulk of the changes handle adding support for an inlining table to R2R so that ICorProfilerInfo6::EnumNgenMethodsInliningThisMethod can supply that information to profilers.

This was only tested on Windows thus far, but there is no apparent reason this change would be OS specific.

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

7 years agoReport code and GC info size in the JIT time log.
Pat Gavlin [Mon, 13 Feb 2017 22:36:47 +0000 (14:36 -0800)]
Report code and GC info size in the JIT time log.

Just what it says on the tin.

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

7 years ago[x86/Linux] Fix incorrect update in HijackFrame::UpdateRegDisplay (dotnet/coreclr...
Jonghyun Park [Mon, 13 Feb 2017 22:19:14 +0000 (07:19 +0900)]
[x86/Linux] Fix incorrect update in HijackFrame::UpdateRegDisplay (dotnet/coreclr#9448)

* [x86/Linux] Fix incorrect update in HijackFrame::UpdateRegDisplay

* Use ENUM_XXX_REGISTERS macro

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

7 years agoMerge pull request dotnet/coreclr#9561 from wtgodbe/suseRuntimes
William Godbe [Mon, 13 Feb 2017 22:10:23 +0000 (14:10 -0800)]
Merge pull request dotnet/coreclr#9561 from wtgodbe/suseRuntimes

Remove OpenSuse13.2 from runtime section in all Project.Jsons

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

7 years agoFix bytemark benchmark (dotnet/coreclr#9497)
Andy Ayers [Mon, 13 Feb 2017 21:34:39 +0000 (13:34 -0800)]
Fix bytemark benchmark (dotnet/coreclr#9497)

I misunderstood how bytemark uses the `adjust` parameter and inadvertently
enabled self-adjustment for the xunit-perf versions of these tests. Not
surprisingly the results showed crazy run to run variations.

Update these tests to set `adjust = 1` to stop the self-adjustment.

Iteration and loop counts tweaked so that each test runs for roughly
1 second on the perf machines.

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

7 years agoFix `JitTimeLog::PrintCsvHeader`.
Pat Gavlin [Mon, 13 Feb 2017 21:26:56 +0000 (13:26 -0800)]
Fix `JitTimeLog::PrintCsvHeader`.

This function attempts to suppress its output if the JIT time log is not
empty. Unfortunately, the method it uses to do this detection gives
incorrect results on Windows: as documented on MSDN, `ftell` will return
`0` for a file opened for appending until the first I/O operation on
that file occurs. This change fixes this by seeking to the end of the
file prior to `ftell`.

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

7 years agoRemove OpenSuse13.2 from runtime section in all Project.Jsons
wtgodbe [Mon, 13 Feb 2017 20:56:21 +0000 (12:56 -0800)]
Remove OpenSuse13.2 from runtime section in all Project.Jsons

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

7 years agoJit: fix for broken type equality optimization
Andy Ayers [Mon, 13 Feb 2017 19:05:02 +0000 (11:05 -0800)]
Jit: fix for broken type equality optimization

The jit relies on a particular tree remaining intact during importation
to optimize type equality tests commonly found in generics.

In dotnet/coreclr#7909 the jit started aggressively spilling the evaluation stack before
calls, which broke up the trees needed for the optimizations.

In the special cases pertaining to type tests the trees can safely remain
intact because we know the calls can't interact with the computations on
the stack. Recognize these cases and selectively suppress spilling.

Closes dotnet/coreclr#9552.

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

7 years ago[Unix] Add runparallel.sh (dotnet/coreclr#9557)
Steve MacLean [Mon, 13 Feb 2017 20:14:17 +0000 (15:14 -0500)]
[Unix] Add runparallel.sh (dotnet/coreclr#9557)

Initial draft of a run script capable of keeping
high core count Arm64 servers saturated

Uses xargs to submit and schedule jobs

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

7 years agoValue number TypeHandleToRuntimeType helper
Joseph Tremoulet [Mon, 13 Feb 2017 19:09:08 +0000 (14:09 -0500)]
Value number TypeHandleToRuntimeType helper

This is a pure helper w/o side-effects, so add it to the lists of
tractable helpers in value-numbering; this allows redundant calls to be
CSEd, and fixes dotnet/coreclr#9552 so we can again optimize away type checks on type
parameters in generic code (a not-infrequent pattern).

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

7 years ago[Unix] twowaypipe unlink before mkfifo (dotnet/coreclr#9505)
Steve MacLean [Mon, 13 Feb 2017 14:54:24 +0000 (09:54 -0500)]
[Unix] twowaypipe unlink before mkfifo (dotnet/coreclr#9505)

Remove stale fifo when before mkfifo

This reduces bogus failures when corerun jobs were
killed with SIGKILL...

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

7 years ago[Arm64/Unix] Remove misleading stress message (dotnet/coreclr#9507)
Steve MacLean [Mon, 13 Feb 2017 10:56:49 +0000 (05:56 -0500)]
[Arm64/Unix] Remove misleading stress message (dotnet/coreclr#9507)

* [Arm64/Unix] Remove misleading stress message

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

7 years agoRemove dead validator.cpp
danmosemsft [Mon, 13 Feb 2017 05:08:46 +0000 (21:08 -0800)]
Remove dead validator.cpp

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

7 years agoRemove dead stackbuildersink.cpp
danmosemsft [Mon, 13 Feb 2017 05:05:29 +0000 (21:05 -0800)]
Remove dead stackbuildersink.cpp

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

7 years agoRemove dead rwlock.cpp
danmosemsft [Mon, 13 Feb 2017 05:04:15 +0000 (21:04 -0800)]
Remove dead rwlock.cpp

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

7 years agoRemove dead remoting.cpp
danmosemsft [Mon, 13 Feb 2017 05:01:16 +0000 (21:01 -0800)]
Remove dead remoting.cpp

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

7 years agoRemove dead objectclone.cpp
danmosemsft [Mon, 13 Feb 2017 05:00:22 +0000 (21:00 -0800)]
Remove dead objectclone.cpp

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

7 years agoRemove dead mixedmode.cpp
danmosemsft [Mon, 13 Feb 2017 04:58:49 +0000 (20:58 -0800)]
Remove dead mixedmode.cpp

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

7 years agoRemove dead message.cpp
danmosemsft [Mon, 13 Feb 2017 04:57:29 +0000 (20:57 -0800)]
Remove dead message.cpp

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

7 years agoRemove dead mdadac.cpp
danmosemsft [Mon, 13 Feb 2017 04:54:30 +0000 (20:54 -0800)]
Remove dead mdadac.cpp

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

7 years agoRemove dead mda.cpp
danmosemsft [Mon, 13 Feb 2017 04:53:44 +0000 (20:53 -0800)]
Remove dead mda.cpp

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

7 years agoRemove dead gchost.cpp
danmosemsft [Mon, 13 Feb 2017 04:52:42 +0000 (20:52 -0800)]
Remove dead gchost.cpp

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

7 years agoRemove dead crossdomaincalls.cpp
danmosemsft [Mon, 13 Feb 2017 04:51:31 +0000 (20:51 -0800)]
Remove dead crossdomaincalls.cpp

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

7 years agoRemove constrainedexecutionregion.cpp
danmosemsft [Mon, 13 Feb 2017 04:42:42 +0000 (20:42 -0800)]
Remove constrainedexecutionregion.cpp

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

7 years agoRemove commethodrental
danmosemsft [Mon, 13 Feb 2017 04:25:22 +0000 (20:25 -0800)]
Remove commethodrental

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

7 years agoRemove clrpriv* dead code
danmosemsft [Mon, 13 Feb 2017 04:21:08 +0000 (20:21 -0800)]
Remove clrpriv* dead code

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

7 years agoRemove dead assemblynamesconfigfactory etc files
danmosemsft [Mon, 13 Feb 2017 03:55:22 +0000 (19:55 -0800)]
Remove dead assemblynamesconfigfactory etc files

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

7 years agoRemove dead appdomainhelper* files
danmosemsft [Mon, 13 Feb 2017 03:55:22 +0000 (19:55 -0800)]
Remove dead appdomainhelper* files

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

7 years agoMerge pull request dotnet/coreclr#9542 from danmosemsft/defines3
Dan Moseley [Mon, 13 Feb 2017 05:54:57 +0000 (21:54 -0800)]
Merge pull request dotnet/coreclr#9542 from danmosemsft/defines3

Remove code corresponding to always defined symbols

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

7 years agoAddendum for FEATURE_FUSION
danmosemsft [Mon, 13 Feb 2017 03:17:39 +0000 (19:17 -0800)]
Addendum for FEATURE_FUSION

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

7 years agoAddendum for FEATURE_APPX_BINDER
danmosemsft [Mon, 13 Feb 2017 03:15:47 +0000 (19:15 -0800)]
Addendum for FEATURE_APPX_BINDER

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

7 years agoAddendum for FEATURE_CODEPAGES_FILE
danmosemsft [Mon, 13 Feb 2017 03:10:52 +0000 (19:10 -0800)]
Addendum for FEATURE_CODEPAGES_FILE

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

7 years ago[x86/Linux] Do NOT treat lea as a jump
Jonghyun Park [Mon, 13 Feb 2017 01:48:11 +0000 (10:48 +0900)]
[x86/Linux] Do NOT treat lea as a jump

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

7 years agoMerge pull request dotnet/coreclr#9516 from sdmaclea/PR-ARM64-FAILS
Russ Keldorph [Mon, 13 Feb 2017 01:49:30 +0000 (17:49 -0800)]
Merge pull request dotnet/coreclr#9516 from sdmaclea/PR-ARM64-FAILS

[Arm64/Unix] Add list of known arm64 fails

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

7 years agoMerge pull request dotnet/coreclr#9446 from seanshpark/stkalign_helpers
Bruce Forstall [Mon, 13 Feb 2017 01:24:21 +0000 (17:24 -0800)]
Merge pull request dotnet/coreclr#9446 from seanshpark/stkalign_helpers

[x86/Linux] Fix stack alignment in helper stub

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

7 years agoMerge pull request dotnet/coreclr#9543 from mskvortsov/fix-9536
Bruce Forstall [Mon, 13 Feb 2017 01:22:03 +0000 (17:22 -0800)]
Merge pull request dotnet/coreclr#9543 from mskvortsov/fix-9536

[Windows/Arm32] Fix a build break

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

7 years agoRemove never defined FEATURE_FUSION
danmosemsft [Mon, 13 Feb 2017 00:51:48 +0000 (16:51 -0800)]
Remove never defined FEATURE_FUSION

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

7 years agoRemove remainder of FEATURE_CORECLR (tool missed some files, also comments)
danmosemsft [Sun, 12 Feb 2017 23:32:54 +0000 (15:32 -0800)]
Remove remainder of FEATURE_CORECLR (tool missed some files, also comments)

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

7 years agoComment for Gaurav
danmosemsft [Sun, 12 Feb 2017 22:31:56 +0000 (14:31 -0800)]
Comment for Gaurav

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

7 years agoRemove never defined FEATURE_CRYPTO
danmosemsft [Sun, 12 Feb 2017 22:30:52 +0000 (14:30 -0800)]
Remove never defined FEATURE_CRYPTO

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

7 years agoRemove never defined FEATURE_COMPRESSEDSTACK
danmosemsft [Sun, 12 Feb 2017 22:26:40 +0000 (14:26 -0800)]
Remove never defined FEATURE_COMPRESSEDSTACK

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

7 years agoRemove never defined FEATURE_COMINTEROP_WINRT_DESKTOP_HOST
danmosemsft [Sun, 12 Feb 2017 22:23:34 +0000 (14:23 -0800)]
Remove never defined FEATURE_COMINTEROP_WINRT_DESKTOP_HOST

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

7 years agoRemove never defined FEATURE_COMINTEROP_TLB_SUPPORT and files that require it to...
danmosemsft [Sun, 12 Feb 2017 20:46:46 +0000 (12:46 -0800)]
Remove never defined FEATURE_COMINTEROP_TLB_SUPPORT and files that require it to be defined

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

7 years agoRemove never defined FEATURE_COMINTEROP_REGISTRATION
danmosemsft [Sun, 12 Feb 2017 20:37:06 +0000 (12:37 -0800)]
Remove never defined FEATURE_COMINTEROP_REGISTRATION

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

7 years agoRemove never defined FEATURE_CODEPAGES_FILE and file
danmosemsft [Sun, 12 Feb 2017 20:28:16 +0000 (12:28 -0800)]
Remove never defined FEATURE_CODEPAGES_FILE and file

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

7 years agoRemove never defined FEATURE_CLICKONCE
danmosemsft [Sun, 12 Feb 2017 20:24:42 +0000 (12:24 -0800)]
Remove never defined FEATURE_CLICKONCE

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

7 years agoRemove never defined FEATURE_CER and header
danmosemsft [Sun, 12 Feb 2017 20:19:09 +0000 (12:19 -0800)]
Remove never defined FEATURE_CER and header

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