platform/upstream/dotnet/runtime.git
7 years agoMove readytorun tests into directory one level deeper
wtgodbe [Thu, 20 Apr 2017 20:49:57 +0000 (13:49 -0700)]
Move readytorun tests into directory one level deeper

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

7 years agoMerge pull request dotnet/coreclr#11020 from adiaaida/hardenPerf
Michelle McDaniel [Thu, 20 Apr 2017 20:14:54 +0000 (13:14 -0700)]
Merge pull request dotnet/coreclr#11020 from adiaaida/hardenPerf

Strip quotes out of BenchviewCommitName

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

7 years agoMerge pull request dotnet/coreclr#11086 from wtgodbe/SecurityPermissions
William Godbe [Thu, 20 Apr 2017 18:44:13 +0000 (11:44 -0700)]
Merge pull request dotnet/coreclr#11086 from wtgodbe/SecurityPermissions

Add dependency on System.Security.Permissions

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

7 years agoAdd dependency on System.Security.Permissions
wtgodbe [Wed, 19 Apr 2017 23:01:03 +0000 (16:01 -0700)]
Add dependency on System.Security.Permissions

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

7 years agoAdd the Linux minidump support documentation (dotnet/coreclr#11087)
Mike McLaughlin [Thu, 20 Apr 2017 17:13:45 +0000 (10:13 -0700)]
Add the Linux minidump support documentation (dotnet/coreclr#11087)

Add the Linux minidump support documentation

One minor fix to createdump.

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

7 years ago[x86/Linux] Use CDECL as STDAPICALLTYPE (dotnet/coreclr#10969)
Jonghyun Park [Thu, 20 Apr 2017 16:05:51 +0000 (01:05 +0900)]
[x86/Linux] Use CDECL as STDAPICALLTYPE (dotnet/coreclr#10969)

* [x86/Linux] Use CDECL as STDAPICALLTYPE

* Use system default calling convention for internal functions

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

7 years agoStrip quotes out of BenchviewCommitName
Michelle McDaniel [Mon, 17 Apr 2017 16:39:00 +0000 (09:39 -0700)]
Strip quotes out of BenchviewCommitName

When we pass the name of the pr to submission-metadata.py, we need the
name of the pr to not include quotes, or submission-metadata.py will fail
because it has the "wrong" parameters (because parts of the name are no
longer quoted). This change strips quotation marks out of the benchview
commit name to harden against this kind of failure.

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

7 years ago[x86/Linux] fix a problem that stack was broken by changing stdcall to cdecl in case...
ragmani [Thu, 20 Apr 2017 14:39:54 +0000 (23:39 +0900)]
[x86/Linux] fix a problem that stack was broken by changing stdcall to cdecl in case of readytorun. (dotnet/coreclr#11063)

* [x86/Linux] fix a problem that stack was broken by changing stdcall to cdecl in case of readytorun.

add DynamicHelperArgsStub and change jmp to call.

* [x86/Linux] set cfi_def_cfa_offset of DynamicHelperArgsStub to 16.

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

7 years agoMerge pull request dotnet/coreclr#11083 from AndyAyersMS/FixNonDevUseOfCheckProjects
Andy Ayers [Thu, 20 Apr 2017 00:21:23 +0000 (17:21 -0700)]
Merge pull request dotnet/coreclr#11083 from AndyAyersMS/FixNonDevUseOfCheckProjects

Update CheckProjects to not fail for non-dev CORE_ROOT

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

7 years agoMerge pull request dotnet/coreclr#11081 from mikedn/static-noway
Bruce Forstall [Wed, 19 Apr 2017 23:19:08 +0000 (16:19 -0700)]
Merge pull request dotnet/coreclr#11081 from mikedn/static-noway

Convert some noway_assert to static_assert

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

7 years agoAdd LinkBench to CoreCLR BenchView
Swaroop Sridhar [Fri, 14 Apr 2017 03:12:00 +0000 (20:12 -0700)]
Add LinkBench to CoreCLR BenchView

This change adds Linker tests as scenario tests tracked in
BenchView for CoreCLR benchmarks.

The Benchmarks added are:
HelloWorld, WebAPI, CoreFx, MusicStore (MSIL and ReadyToRun), Roslyn.

The metrics are:
MSIL size before and after ILLINK
Total publish-dir size before and after ILLINK
% Reduction in MSIL and Total dir-size after linking.

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

7 years agoMerge pull request dotnet/coreclr#11077 from pgavlin/gh10940
Pat Gavlin [Wed, 19 Apr 2017 22:16:26 +0000 (15:16 -0700)]
Merge pull request dotnet/coreclr#11077 from pgavlin/gh10940

Spill side-effects in impAssignMultiRegTypeToVar.

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

7 years agoAdd NUMA and thread affinity support for Unix (dotnet/coreclr#10938)
Jan Vorlicek [Wed, 19 Apr 2017 22:13:30 +0000 (15:13 -0700)]
Add NUMA and thread affinity support for Unix (dotnet/coreclr#10938)

* Add NUMA and thread affinity support for Unix

This change adds new PAL functions for NUMA and thread affinity support
for Unix and also enables related code in GC and VM for FEATURE_PAL.

It doesn't reflect the limits imposed by CGROUPS on systems with
CGROUPS enables yet.

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

7 years agoMerge pull request dotnet/coreclr#10257 from jashook/reflection_invoke_arm64
Jarret Shook [Wed, 19 Apr 2017 22:07:28 +0000 (15:07 -0700)]
Merge pull request dotnet/coreclr#10257 from jashook/reflection_invoke_arm64

[Arm64] For reflection invoke, use ArgLocDesc

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

7 years agoMerge pull request dotnet/coreclr#11085 from wtgodbe/SkipTests
William Godbe [Wed, 19 Apr 2017 22:05:26 +0000 (15:05 -0700)]
Merge pull request dotnet/coreclr#11085 from wtgodbe/SkipTests

Skip failing tests in Helix

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

7 years agoSkip failing tests in Helix
wtgodbe [Wed, 19 Apr 2017 22:04:46 +0000 (15:04 -0700)]
Skip failing tests in Helix

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

7 years agoUpdate CheckProjects to not fail for non-dev CORE_ROOT
Andy Ayers [Wed, 19 Apr 2017 21:07:24 +0000 (14:07 -0700)]
Update CheckProjects to not fail for non-dev CORE_ROOT

CheckProjects expects to be able to find the jit test project files
relative to the value of the `CORE_ROOT` environment variable. This
fails when we have test setups like cross-tests or helix where the
test binary tree has been copied away from the repo after building.

Tolerate these cases by returning a success code if the `CORE_ROOT`
path is not pointing at the expected place.

Fixes dotnet/coreclr#11079.
Fixes dotnet/coreclr#10635.

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

7 years agoConvert some noway_assert to static_assert
Mike Danes [Wed, 19 Apr 2017 21:06:40 +0000 (00:06 +0300)]
Convert some noway_assert to static_assert

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

7 years ago[x86/Linux] Corretly pop args after unmanaged function call (dotnet/coreclr#11007)
Jonghyun Park [Wed, 19 Apr 2017 20:50:56 +0000 (05:50 +0900)]
[x86/Linux] Corretly pop args after unmanaged function call (dotnet/coreclr#11007)

* [x86/Linux] Corretly pop args after unmanaged function call

* Fix x86/Windows build error

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

7 years agoAdd a regression test.
Pat Gavlin [Wed, 19 Apr 2017 20:38:05 +0000 (13:38 -0700)]
Add a regression test.

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

7 years agoMerge pull request dotnet/coreclr#11049 from briansull/fixMaxOffset
Brian Sullivan [Wed, 19 Apr 2017 19:33:20 +0000 (12:33 -0700)]
Merge pull request dotnet/coreclr#11049 from briansull/fixMaxOffset

Fix incorrect test of structSize during struct promotion

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

7 years agoAdd test coverage for Rank 1 multidimensional arrays (dotnet/coreclr#11034)
Michal Strehovský [Wed, 19 Apr 2017 19:01:57 +0000 (12:01 -0700)]
Add test coverage for Rank 1 multidimensional arrays (dotnet/coreclr#11034)

These have some weird behaviors worth covering.

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

7 years agoIBC: Disable `-partialNGEN -minify` for SPC.dll (dotnet/coreclr#10950)
Daniel Podder [Wed, 19 Apr 2017 18:59:58 +0000 (13:59 -0500)]
IBC: Disable `-partialNGEN -minify` for SPC.dll (dotnet/coreclr#10950)

Add some fixes around the use of IBCMerge in CoreCLR, along with a BuildTools patch (which the fixes are dependent upon):
* don't restore the default optdata package through BuildTools
* don't use partial ngen by default in CoreCLR for SPC.dll

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

7 years agoSpill side-effects in impAssignMultiRegTypeToVar.
Pat Gavlin [Wed, 19 Apr 2017 18:26:46 +0000 (11:26 -0700)]
Spill side-effects in impAssignMultiRegTypeToVar.

This importer function converts IR from the form

    tree

to
            /- tree
    STMT - =
            \- lclVar

in order to conform to the JIT's representation of multi-register values.
Today, it does not check whether or not the tree being spilled has any
side-effects that may interfere with the side-effects of trees that are
already on the evaluation stack, which can lead to bad codegen. This
change fixes this function to spill any side-effects on the stack
before generating the temp assign.

Fixes dotnet/coreclr#10940.

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

7 years agoMerge pull request dotnet/coreclr#11044 from alpencolt/ryu-arm-localloc-subs-fix
Bruce Forstall [Wed, 19 Apr 2017 18:25:35 +0000 (11:25 -0700)]
Merge pull request dotnet/coreclr#11044 from alpencolt/ryu-arm-localloc-subs-fix

[RyuJIT/ARM32] Use 'subs' instead of 'sub' on localloc

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

7 years agoMerge pull request dotnet/coreclr#11070 from stephentoub/add_stat_fields
Stephen Toub [Wed, 19 Apr 2017 17:44:12 +0000 (13:44 -0400)]
Merge pull request dotnet/coreclr#11070 from stephentoub/add_stat_fields

Add Dev/Ino fields to Interop.Sys.FileStatus

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

7 years agoFor Reflection invoke, use ArgLocDesc
jashook [Wed, 19 Apr 2017 17:03:13 +0000 (10:03 -0700)]
For Reflection invoke, use ArgLocDesc

For arm64 if the struct needs to be passed in registers, then pass
that information along when we do the reflection invoke.

Note this adds more test cases for passing different struct types via reflection.
I am guessing similar work would need to be done for Arm32.

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

7 years agoChange ICLRRuntimeHost2 to ICLRRuntimeHost4 for Windows corerun. (dotnet/coreclr...
Jim Ma [Wed, 19 Apr 2017 16:39:23 +0000 (16:39 +0000)]
Change ICLRRuntimeHost2 to ICLRRuntimeHost4 for Windows corerun. (dotnet/coreclr#10967)

* Change ICLRRuntimeHost2 to ICLRRuntimeHost4 for Windows corerun.

Since we've introduced ICLRRuntimeHost4 in PR dotnet/coreclr#10842 for Unix, we apply it for Windows corerun as well.

Fix dotnet/coreclr#10960

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

7 years agoStop treating test files as executable and fix encoding (dotnet/coreclr#11065)
Yi Zhang (CLR) [Wed, 19 Apr 2017 15:37:44 +0000 (08:37 -0700)]
Stop treating test files as executable and fix encoding (dotnet/coreclr#11065)

* change encoding to UTF-8

* change line ending to UNIX

* remove executable attribute

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

7 years agoAdd Dev/Ino fields to Interop.Sys.FileStatus
Stephen Toub [Wed, 19 Apr 2017 15:20:42 +0000 (11:20 -0400)]
Add Dev/Ino fields to Interop.Sys.FileStatus

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

7 years ago[x86/Linux] Do NOT run GC on Transition (dotnet/coreclr#11056)
Jonghyun Park [Wed, 19 Apr 2017 08:55:18 +0000 (17:55 +0900)]
[x86/Linux] Do NOT run GC on Transition (dotnet/coreclr#11056)

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

7 years agoRevert "Add SecurityZone stub" (dotnet/coreclr#11053)
Viktor Hofer [Wed, 19 Apr 2017 02:36:14 +0000 (04:36 +0200)]
Revert "Add SecurityZone stub" (dotnet/coreclr#11053)

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

7 years agoMerge pull request dotnet/coreclr#10933 from hqueue/ryujit/enable_nodebash_stats
Bruce Forstall [Wed, 19 Apr 2017 00:14:13 +0000 (17:14 -0700)]
Merge pull request dotnet/coreclr#10933 from hqueue/ryujit/enable_nodebash_stats

Fix clang build error when enabling NODEBASH_STATS

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

7 years agoMerge pull request dotnet/coreclr#11021 from mskvortsov/array-offset-mla
Bruce Forstall [Wed, 19 Apr 2017 00:13:16 +0000 (17:13 -0700)]
Merge pull request dotnet/coreclr#11021 from mskvortsov/array-offset-mla

[RyuJIT/ARM32] Use mla for array offset computation

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

7 years agoSome fixes for the GC Reliability Framework (dotnet/coreclr#11029)
Sean Gillespie [Wed, 19 Apr 2017 00:12:09 +0000 (17:12 -0700)]
Some fixes for the GC Reliability Framework (dotnet/coreclr#11029)

* Quality-of-life fixes for the GC reliability framework to make it run
a little better on CoreCLR

* Remove some p/invokes to kernel32 when building on Core

* Minor fixes to run on non-Windows platforms

* Re-enable ReliabilityFramework sanity run

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

7 years agoImplement the createdump policy options and env variables (dotnet/coreclr#11032)
Mike McLaughlin [Tue, 18 Apr 2017 23:54:53 +0000 (16:54 -0700)]
Implement the createdump policy options and env variables (dotnet/coreclr#11032)

Added these command line options:

-f, --name - dump path and file name. The pid can be placed in the name with %d. The default is "/tmp/coredump.%d"
-n, --normal - create minidump (default).
-h, --withheap - create minidump with heap.
-m, --micro - create triage minidump.
-d, --diag - enable diagnostic messages.

Added these environment variables:

COMPlus_DbgMiniDumpType - if set to "1" generate MiniDumpNormal, "2" MiniDumpWithPrivateReadWriteMemory, "3" MiniDumpFilterTriage. Default is MiniDumpNormal.
COMPlus_DbgMiniDumpName - if set, use as the template to create the dump path and file name. The pid can be placed in the name with %d. The default is "/tmp/coredump.%d".

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

7 years agoMerge pull request dotnet/coreclr#11054 from wtgodbe/spacing
William Godbe [Tue, 18 Apr 2017 23:43:11 +0000 (16:43 -0700)]
Merge pull request dotnet/coreclr#11054 from wtgodbe/spacing

Fix spacing in build-test.cmd in Pipeline

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

7 years agoFix spacing in build-test.cmd in Pipeline
wtgodbe [Tue, 18 Apr 2017 23:42:00 +0000 (16:42 -0700)]
Fix spacing in build-test.cmd in Pipeline

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

7 years agoMerge pull request dotnet/coreclr#11050 from ellismg/remove-duplicate-resources
Matt Ellis [Tue, 18 Apr 2017 23:36:55 +0000 (16:36 -0700)]
Merge pull request dotnet/coreclr#11050 from ellismg/remove-duplicate-resources

Remove some duplicate resource strings

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

7 years agoMerge pull request dotnet/coreclr#11052 from wtgodbe/emptyArgs
William Godbe [Tue, 18 Apr 2017 22:37:22 +0000 (15:37 -0700)]
Merge pull request dotnet/coreclr#11052 from wtgodbe/emptyArgs

Create default variables for Crossgen, TargetsNonWindows in pipebuild

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

7 years agoCreate default variables for Crossgen, TargetsNonWindows in pipebuild
wtgodbe [Tue, 18 Apr 2017 22:36:14 +0000 (15:36 -0700)]
Create default variables for Crossgen, TargetsNonWindows in pipebuild

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

7 years agoConvert a few test files from UTF16 to ASCII and add license (dotnet/coreclr#11051)
Jan Kotas [Tue, 18 Apr 2017 22:29:43 +0000 (17:29 -0500)]
Convert a few test files from UTF16 to ASCII and add license (dotnet/coreclr#11051)

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

7 years agoMerge pull request dotnet/coreclr#10979 from wtgodbe/R2RWindows
William Godbe [Tue, 18 Apr 2017 22:02:10 +0000 (15:02 -0700)]
Merge pull request dotnet/coreclr#10979 from wtgodbe/R2RWindows

Enable running Crossgen tests on Windows in Helix

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

7 years agoRemove /RELEASE option required for device drivers (dotnet/coreclr#11023)
Gaurav Khanna [Tue, 18 Apr 2017 21:02:14 +0000 (14:02 -0700)]
Remove /RELEASE option required for device drivers (dotnet/coreclr#11023)

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

7 years agoMerge pull request dotnet/coreclr#11047 from stephentoub/task_iscompletedsuccessfully
Stephen Toub [Tue, 18 Apr 2017 20:43:53 +0000 (16:43 -0400)]
Merge pull request dotnet/coreclr#11047 from stephentoub/task_iscompletedsuccessfully

Expose Task.IsCompletedSuccessfully

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

7 years agoRemove some duplicate resource strings
Matt Ellis [Tue, 18 Apr 2017 20:26:01 +0000 (13:26 -0700)]
Remove some duplicate resource strings

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

7 years agoEnable running Crossgen tests on Windows in Helix
wtgodbe [Fri, 14 Apr 2017 21:31:34 +0000 (14:31 -0700)]
Enable running Crossgen tests on Windows in Helix

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

7 years agoMerge pull request dotnet/coreclr#10948 from eerhardt/GetPreviousAdjRulePerf
Eric Erhardt [Tue, 18 Apr 2017 19:07:13 +0000 (14:07 -0500)]
Merge pull request dotnet/coreclr#10948 from eerhardt/GetPreviousAdjRulePerf

Fix perf of DateTime.Now on Unix

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

7 years agoMerge pull request dotnet/coreclr#11045 from JosephTremoulet/TraceEventVersion
Joseph Tremoulet [Tue, 18 Apr 2017 18:43:19 +0000 (14:43 -0400)]
Merge pull request dotnet/coreclr#11045 from JosephTremoulet/TraceEventVersion

Run-xunit-perf: update TraceEvents version number

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

7 years agofail fast on exceptions that indicate corrupted process state (dotnet/coreclr#10957)
Rahul Kumar [Tue, 18 Apr 2017 18:33:59 +0000 (11:33 -0700)]
fail fast on exceptions that indicate corrupted process state (dotnet/coreclr#10957)

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

7 years agoFix incorrect test of structSize in struct promoted
Brian Sullivan [Tue, 18 Apr 2017 18:32:21 +0000 (11:32 -0700)]
Fix incorrect test of structSize in struct promoted

Fixes the desktop test Crossgen NI and Ngen NI validation

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

7 years ago[x86/Linux] EH Support for Per-Frame P/Invoke Init (dotnet/coreclr#10966)
Jonghyun Park [Tue, 18 Apr 2017 18:27:29 +0000 (03:27 +0900)]
[x86/Linux] EH Support for Per-Frame P/Invoke Init (dotnet/coreclr#10966)

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

7 years agoExpose Task.IsCompletedSuccessfully
Stephen Toub [Tue, 18 Apr 2017 17:57:19 +0000 (13:57 -0400)]
Expose Task.IsCompletedSuccessfully

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

7 years agosmall clean-up and bug fix in genIntToIntCast (dotnet/coreclr#10989)
Sergey Andreenko [Tue, 18 Apr 2017 17:44:01 +0000 (10:44 -0700)]
small clean-up and bug fix in genIntToIntCast (dotnet/coreclr#10989)

genintToIntCast was cleaned-up, the assert that was wrong for x86 was deleted. The repro was added.

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

7 years agoRun-xunit-perf: update TraceEvents version number
Joseph Tremoulet [Tue, 18 Apr 2017 16:47:25 +0000 (12:47 -0400)]
Run-xunit-perf: update TraceEvents version number

The perf harness needs 1.0.3-alpha-experimental now.

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

7 years agoAssert GetAdjustmentRuleForTime sets ruleIndex correctly.
Eric Erhardt [Tue, 18 Apr 2017 16:39:01 +0000 (11:39 -0500)]
Assert GetAdjustmentRuleForTime sets ruleIndex correctly.

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

7 years ago[RyuJIT/ARM32] Use 'subs' instead of 'sub' on localloc
Alexander Soldatov [Tue, 18 Apr 2017 14:51:20 +0000 (17:51 +0300)]
[RyuJIT/ARM32] Use 'subs' instead of 'sub' on localloc

Previous implementation used sub instruction for counter
conditional execution for iterating over loops which cause incorrect
behavior.

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

7 years agoMerge pull request dotnet/coreclr#11035 from BruceForstall/NumSuccImprovement
Bruce Forstall [Tue, 18 Apr 2017 14:18:10 +0000 (07:18 -0700)]
Merge pull request dotnet/coreclr#11035 from BruceForstall/NumSuccImprovement

Hoist calls to NumSucc() out of loops

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

7 years agoRyuJIT/ARM32: use mla for array offset computation
Mikhail Skvortcov [Tue, 18 Apr 2017 13:02:17 +0000 (16:02 +0300)]
RyuJIT/ARM32: use mla for array offset computation

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

7 years ago[x86/Linux] changed to the AT&T syntax to solve a problem related broken stack. ...
ragmani [Tue, 18 Apr 2017 10:01:55 +0000 (19:01 +0900)]
[x86/Linux] changed to the AT&T syntax to solve a problem related broken stack. (dotnet/coreclr#10932)

This is a problem similar to dotnet/coreclr#10383.

Signed-off-by: ragmani <ragmani0216@gmail.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/432e8bf1efbc696b842b1fe5004fed5319d58818

7 years ago* fixed class size calculation (dotnet/coreclr#10916)
Buyduck [Tue, 18 Apr 2017 08:02:14 +0000 (11:02 +0300)]
* fixed class size calculation (dotnet/coreclr#10916)

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

7 years agoFix String.Replace implementation (dotnet/coreclr#11039)
Tarek Mahmoud Sayed [Tue, 18 Apr 2017 05:02:08 +0000 (22:02 -0700)]
Fix String.Replace implementation (dotnet/coreclr#11039)

* Fix String.Replace implementation

String.Replace was callin ga low level CompareInfo method IndexOfCore which cannot be called in some conditions like when using ordinal ignore case option or when running in invariant mode.
The fix is to call a higher level method in CompareInfo which can handle such cases becfore calling the lower level method

* fix typo

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

7 years agoMerge pull request dotnet/coreclr#10995 from svick/patch-1
Andy Ayers [Tue, 18 Apr 2017 04:47:38 +0000 (21:47 -0700)]
Merge pull request dotnet/coreclr#10995 from svick/patch-1

Update Viewing JIT dumps to 2.0 and csproj

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

7 years agoFix error caused by passing -TargetsWindows at end of Command Line (dotnet/coreclr...
William Godbe [Tue, 18 Apr 2017 03:16:22 +0000 (20:16 -0700)]
Fix error caused by passing -TargetsWindows at end of Command Line (dotnet/coreclr#11031)

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

7 years agoDo not throw an assertion on no mscorlib
Michael Letterle [Fri, 31 Mar 2017 15:32:32 +0000 (11:32 -0400)]
Do not throw an assertion on no mscorlib

It's okay to use debuggable attributes from other BaseAsmRef's

Fixes dotnet/coreclr#10608

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

7 years agoMerge pull request dotnet/coreclr#11036 from brianrob/remove_eventcounter
Brian Robbins [Tue, 18 Apr 2017 01:35:37 +0000 (18:35 -0700)]
Merge pull request dotnet/coreclr#11036 from brianrob/remove_eventcounter

Remove EventCounter from System.Private.CoreLib

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

7 years agoFix build break
danmosemsft [Mon, 17 Apr 2017 23:58:10 +0000 (16:58 -0700)]
Fix build break

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

7 years agoRename attribute to IsReadOnlyAttribute (dotnet/coreclr#11026)
Omar Tawfik [Mon, 17 Apr 2017 23:33:09 +0000 (16:33 -0700)]
Rename attribute to IsReadOnlyAttribute (dotnet/coreclr#11026)

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

7 years agoUse isInternalRegDelayFree to avoid temp reg overallocation (dotnet/coreclr#11025)
Bruce Forstall [Mon, 17 Apr 2017 23:32:36 +0000 (16:32 -0700)]
Use isInternalRegDelayFree to avoid temp reg overallocation (dotnet/coreclr#11025)

Use isInternalRegDelayFree to avoid temp reg overallocation

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

7 years agoRemove EventCounter from System.Private.CoreLib.
Brian Robbins [Mon, 17 Apr 2017 23:16:22 +0000 (16:16 -0700)]
Remove EventCounter from System.Private.CoreLib.

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

7 years agoHoist calls to NumSucc() out of loops
Bruce Forstall [Mon, 17 Apr 2017 23:00:51 +0000 (16:00 -0700)]
Hoist calls to NumSucc() out of loops

Should be a minor throughput improvement.

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

7 years agoImprove performance of Object.GetType for arrays (dotnet/coreclr#10992)
Jan Kotas [Mon, 17 Apr 2017 22:37:09 +0000 (17:37 -0500)]
Improve performance of Object.GetType for arrays (dotnet/coreclr#10992)

* Improve performance of Object.GetType for arrays

Cache managed Type object on MethodTable for arrays. Makes Object.GetType for arrays about 5x faster.

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

7 years agoMerge pull request dotnet/coreclr#11028 from danmosemsft/api.zone
Viktor Hofer [Mon, 17 Apr 2017 21:39:21 +0000 (23:39 +0200)]
Merge pull request dotnet/coreclr#11028 from danmosemsft/api.zone

Add SecurityZone stub

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

7 years agoFormat spmi sources with clang-format (dotnet/coreclr#11027)
Sergey Andreenko [Mon, 17 Apr 2017 21:05:11 +0000 (14:05 -0700)]
Format spmi sources with clang-format (dotnet/coreclr#11027)

Apply jit style format on spmi sources.

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

7 years agoJit intrinsics for Span<T>.get_Item and ReadOnlySpan<T>.get_Item. (dotnet/coreclr...
Andy Ayers [Mon, 17 Apr 2017 20:04:23 +0000 (13:04 -0700)]
Jit intrinsics for Span<T>.get_Item and ReadOnlySpan<T>.get_Item. (dotnet/coreclr#10910)

Implement these two methods as optional-expand jit intrinsics.
Uses `GT_ARR_BOUNDS_CHECK` for the bounds check so in some cases
downstream code is able to eliminate redundant checks. Fully general
support (on par with arrays in most cases) is still work in progress.

Update one bit of code in the optimizer that assumed it knew the
tree types that appeared in a `GT_ARR_BOUNDS_CHECK`.

Add benchmark tests for Span and ReadOnlySpan indexers.

Tests ability of jit to reason about indexer properties with respect
to loop bounds and related indexer uses. Some cases inspired by span
indexer usage in Kestrel.

Closes dotnet/coreclr#10785.

Also addresses lack of indexer inlining noted in dotnet/coreclr#10031. Span indexers
should now always be inlined, even when invoked from shared methods.

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

7 years agoAdd scenario-based tests
Swaroop Sridhar [Fri, 14 Apr 2017 03:07:41 +0000 (20:07 -0700)]
Add scenario-based tests

Modified Xunit runner to run Scenario Benchmarks
Updating xunit-performance packages

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

7 years agoAdd SecurityZone stub
danmosemsft [Mon, 17 Apr 2017 19:15:07 +0000 (12:15 -0700)]
Add SecurityZone stub

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

7 years agoIn function Assembly.Load ignore AssemblyName.CodeBase even if it is set (dotnet...
Rahul Kumar [Mon, 17 Apr 2017 18:47:47 +0000 (11:47 -0700)]
In function Assembly.Load ignore AssemblyName.CodeBase even if it is set (dotnet/coreclr#11010)

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

7 years agoRemove Alpine for pipe builds (dotnet/coreclr#11022)
Gaurav Khanna [Mon, 17 Apr 2017 18:29:35 +0000 (11:29 -0700)]
Remove Alpine for pipe builds (dotnet/coreclr#11022)

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

7 years agoSupport FEATURE_EVENT_TRACE override (dotnet/coreclr#10961)
Jonghyun Park [Mon, 17 Apr 2017 18:21:45 +0000 (03:21 +0900)]
Support FEATURE_EVENT_TRACE override (dotnet/coreclr#10961)

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

7 years agoAllow build.sh to have multiple cmakeargs options (dotnet/coreclr#10962)
Jonghyun Park [Mon, 17 Apr 2017 18:20:21 +0000 (03:20 +0900)]
Allow build.sh to have multiple cmakeargs options (dotnet/coreclr#10962)

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

7 years agoUpdate CoreClr, CoreFx to preview1-25215-03, preview1-25214-03, respectively (dotnet...
dotnet bot [Mon, 17 Apr 2017 18:17:42 +0000 (11:17 -0700)]
Update CoreClr, CoreFx to preview1-25215-03, preview1-25214-03, respectively (dotnet/coreclr#10952)

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

7 years ago[RyuJit/ARM32] Fix assertion of failure on "Instruction cannot be encoded" (dotnet...
Sujin Kim [Mon, 17 Apr 2017 17:18:39 +0000 (02:18 +0900)]
[RyuJit/ARM32] Fix assertion of failure on "Instruction cannot be encoded" (dotnet/coreclr#10789)

Fix assertion of failure on "Instruction cannot be encoded"

I figured out the bit set mask for '0xffffff00' which is the imm is not supportted on ARM.
So at first, It would be checked the validation of using instruction with immediate constants.
If not, it would be use the instruction with registers.

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

7 years agoMerge pull request dotnet/coreclr#11013 from mskvortsov/nullcheck
Bruce Forstall [Mon, 17 Apr 2017 17:14:13 +0000 (10:14 -0700)]
Merge pull request dotnet/coreclr#11013 from mskvortsov/nullcheck

[RyuJIT/ARM32] Update nullcheck codegen

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

7 years agoMerge pull request dotnet/coreclr#11016 from alpencolt/ryu-arm-localloc-fix
Bruce Forstall [Mon, 17 Apr 2017 16:53:15 +0000 (09:53 -0700)]
Merge pull request dotnet/coreclr#11016 from alpencolt/ryu-arm-localloc-fix

[RyuJIT/ARM32] Fix amount of allocated registers for Localloc.

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

7 years agoFix ARM32/Linux release CI test failure (dotnet/coreclr#11008)
Hyeongseok Oh [Mon, 17 Apr 2017 15:56:19 +0000 (00:56 +0900)]
Fix ARM32/Linux release CI test failure (dotnet/coreclr#11008)

* Fix ARM32/Linux release CI test failure

Fix ARM32/Linux release CI test failure by removing libcoreclrptprovider.so from CoreFX build results.

* Fix typo

Fix typo in netci.groovy

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

7 years agoAdd Span and ReadOnlySpan from CoreCLR
Jan Kotas [Tue, 14 Mar 2017 16:06:56 +0000 (09:06 -0700)]
Add Span and ReadOnlySpan from CoreCLR

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

7 years ago[RyuJIT/ARM32] Fix amount of allocated registers for Localloc.
Alexander Soldatov [Mon, 17 Apr 2017 13:10:36 +0000 (16:10 +0300)]
[RyuJIT/ARM32] Fix amount of allocated registers for Localloc.

Now for small allocation (up to 4 store instructions) we always have
1 temporary register which is different from register where result
of stackalloc is returned. Also one additional register will be allocated
for PSP if needed.

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

7 years agoRyuJIT/ARM32: update nullcheck codegen
Mikhail Skvortcov [Mon, 17 Apr 2017 09:48:09 +0000 (12:48 +0300)]
RyuJIT/ARM32: update nullcheck codegen

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

7 years agoFix comment about pinning bit in object.h (dotnet/coreclr#11004)
303248153 [Mon, 17 Apr 2017 03:01:52 +0000 (11:01 +0800)]
Fix comment about pinning bit in object.h (dotnet/coreclr#11004)

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

7 years agoFix warning in LPTSTRTestNative (dotnet/coreclr#10973)
Yi Zhang (CLR) [Mon, 17 Apr 2017 02:21:55 +0000 (19:21 -0700)]
Fix warning in LPTSTRTestNative (dotnet/coreclr#10973)

* Fix warning in LPTSTRTestNative and add support for wcsncmp in xplatform.h

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

7 years agoFix OOM exception thrown in case insensitive replace for an empty string (dotnet...
Hugh Bellamy [Sun, 16 Apr 2017 18:36:47 +0000 (01:36 +0700)]
Fix OOM exception thrown in case insensitive replace for an empty string (dotnet/coreclr#11001)

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

7 years agoFixed CI link (dotnet/coreclr#11003)
Cyd Haselton [Sun, 16 Apr 2017 18:36:17 +0000 (13:36 -0500)]
Fixed CI link (dotnet/coreclr#11003)

Updated link referenced in CI builds; old link was broken

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

7 years agoMove Span/ReadOnlySpan to shared CoreLib partition (dotnet/coreclr#10988)
Jan Kotas [Sat, 15 Apr 2017 20:32:58 +0000 (13:32 -0700)]
Move Span/ReadOnlySpan to shared CoreLib partition (dotnet/coreclr#10988)

Fix a few method names to better names used in CoreRT

Contributes to https://github.com/dotnet/corert/issues/2966

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

7 years agoMake some Dictionary code smaller (dotnet/coreclr#10993)
mikedn [Sat, 15 Apr 2017 19:11:51 +0000 (22:11 +0300)]
Make some Dictionary code smaller (dotnet/coreclr#10993)

Store a reference to the relevant entry at the start of the loop to avoid indexing `entries` multiple times.
This avoids some redundant range checks in `Remove` and allows the elimination of a duplicate `index++` in `Enumerator.MoveNext`.

Saves ~7KB of code.

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

7 years agoMerge pull request dotnet/coreclr#10983 from danmosemsft/revert.jeremy
Michelle McDaniel [Sat, 15 Apr 2017 18:40:09 +0000 (11:40 -0700)]
Merge pull request dotnet/coreclr#10983 from danmosemsft/revert.jeremy

Revert "Strip out unused reg code. (dotnet/coreclr#10741)"

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

7 years agoUpdate Viewing JIT dumps to 2.0 and csproj
Petr Onderka [Sat, 15 Apr 2017 17:22:00 +0000 (19:22 +0200)]
Update Viewing JIT dumps to 2.0 and csproj

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

7 years agoMake createdump build and work on Centos (dotnet/coreclr#10985)
Mike McLaughlin [Sat, 15 Apr 2017 18:09:03 +0000 (11:09 -0700)]
Make createdump build and work on Centos (dotnet/coreclr#10985)

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

7 years agoRemember AdjustementRule index
Eric Erhardt [Sat, 15 Apr 2017 16:54:29 +0000 (11:54 -0500)]
Remember AdjustementRule index

Profiling TimeZoneInfo scenarios on Unix shows most of the time being spent in GetPreviousAdjustmentRule. This is because we need to scan all of the AdjustmentRules, looking for the specified rule, and then getting the one before it.

This change remembers the AdjustmentRule index when passing the AdjustmentRule into GetPreviousAdjustmentRule. This allows us to not scan all the rules, and increases the performance of DateTime.Now significantly in time zones that have daylight savings time.

Fix https://github.com/dotnet/corefx/issues/3571

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

7 years ago[Arm64] Fix assembly errors (dotnet/coreclr#10977)
Steve MacLean [Sat, 15 Apr 2017 15:39:02 +0000 (11:39 -0400)]
[Arm64] Fix assembly errors (dotnet/coreclr#10977)

* [Arm64] Fix assembly errors

* [Arm64] Static use ldrb w2, [x2, w1, UXTW]

* Revert changes to src/vm/arm64/asmhelpers.asm

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