platform/upstream/dotnet/runtime.git
6 years agoRemove relocations for MethodTable's vtable-1st-level-indirection
Gleb Balykov [Fri, 23 Jun 2017 12:48:48 +0000 (15:48 +0300)]
Remove relocations for MethodTable's vtable-1st-level-indirection

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

6 years agoRemove relocations for MethodTable::m_pParentMethodTable for Linux ARM
Gleb Balykov [Fri, 23 Jun 2017 11:57:25 +0000 (14:57 +0300)]
Remove relocations for MethodTable::m_pParentMethodTable for Linux ARM

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

6 years agoRemove relocations for MethodTable::m_pPerInstInfo for Linux ARM
Gleb Balykov [Thu, 22 Jun 2017 18:14:04 +0000 (21:14 +0300)]
Remove relocations for MethodTable::m_pPerInstInfo for Linux ARM

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

6 years agoRemove relocations for MethodTable::m_pWriteableData for Linux ARM
Gleb Balykov [Thu, 22 Jun 2017 17:39:03 +0000 (20:39 +0300)]
Remove relocations for MethodTable::m_pWriteableData for Linux ARM

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

6 years agoRemove relocations for InterfaceInfo_t::m_pMethodTable for Linux ARM
Gleb Balykov [Thu, 22 Jun 2017 17:24:54 +0000 (20:24 +0300)]
Remove relocations for InterfaceInfo_t::m_pMethodTable for Linux ARM

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

6 years agoAdditional fixes for RelativePointer, FixupPointer, RelativeFixupPointer, PlainPointer
Gleb Balykov [Thu, 22 Jun 2017 16:28:32 +0000 (19:28 +0300)]
Additional fixes for RelativePointer, FixupPointer, RelativeFixupPointer, PlainPointer

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

6 years agoAdd FixupPlainOrRelativePointerField for MethodDesc fields
Gleb Balykov [Wed, 21 Jun 2017 17:53:41 +0000 (20:53 +0300)]
Add FixupPlainOrRelativePointerField for MethodDesc fields

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

6 years agoRemove relocations from SECTION_Readonly for fields not accessed from jit code on ARM
Gleb Balykov [Wed, 21 Jun 2017 16:48:49 +0000 (19:48 +0300)]
Remove relocations from SECTION_Readonly for fields not accessed from jit code on ARM

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

6 years agoMerge pull request dotnet/coreclr#12572 from wateret/armel/dblarg_stack
Carol Eidt [Mon, 10 Jul 2017 05:55:28 +0000 (22:55 -0700)]
Merge pull request dotnet/coreclr#12572 from wateret/armel/dblarg_stack

[RyuJIT/armel] Passing stack double arguments

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

6 years ago[RyuJIT/ARM32] Avoid promoting structures which can be handled by HFA (dotnet/coreclr...
Hyung-Kyu Choi [Mon, 10 Jul 2017 05:08:44 +0000 (14:08 +0900)]
[RyuJIT/ARM32] Avoid promoting structures which can be handled by HFA (dotnet/coreclr#12604)

* [RyuJIT/ARM32] Avoid promoting structures which can be handled by HFA

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
* [RyuJIT/ARM32] Add comments for ARM32

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

6 years agoNote that tests don't have to be built to view JIT dumps (dotnet/coreclr#12699)
Petr Onderka [Sun, 9 Jul 2017 18:22:58 +0000 (20:22 +0200)]
Note that tests don't have to be built to view JIT dumps (dotnet/coreclr#12699)

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

6 years agoUnify LazyInitializers with CoreRT (dotnet/coreclr#12697)
Jan Kotas [Sun, 9 Jul 2017 18:22:23 +0000 (20:22 +0200)]
Unify LazyInitializers with CoreRT (dotnet/coreclr#12697)

CoreCLR implementation cached s_activatorFactorySelector delegate, but CoreRT did not cache it - it got commented out during earlier AOT binary size optimization efforts. I have unified it by avoiding s_activatorFactorySelector delegate altogether to keep the best of both.

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

6 years agoTypeForward cleanup for Culture=neutral (dotnet/coreclr#12698)
Viktor Hofer [Sun, 9 Jul 2017 15:34:51 +0000 (17:34 +0200)]
TypeForward cleanup for Culture=neutral (dotnet/coreclr#12698)

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

6 years agoMove files to shared CoreLib partition (dotnet/coreclr#12694)
Jan Kotas [Sun, 9 Jul 2017 06:46:00 +0000 (08:46 +0200)]
Move files to shared CoreLib partition (dotnet/coreclr#12694)

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

6 years agoUse R2R helper for runtime lookups only when USEHELPER was specified (dotnet/coreclr...
Michal Strehovský [Sun, 9 Jul 2017 04:31:30 +0000 (00:31 -0400)]
Use R2R helper for runtime lookups only when USEHELPER was specified (dotnet/coreclr#12669)

The CoreRT compiler would like to be able to do indirections-based
lookup even when ReadyToRun codegen is specified.

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

6 years agoAvoid a large local in a recursive visitor. (dotnet/coreclr#12693)
Pat Gavlin [Sun, 9 Jul 2017 00:04:22 +0000 (19:04 -0500)]
Avoid a large local in a recursive visitor. (dotnet/coreclr#12693)

This local of type `CORINFO_CALL_INFO` bloats the frame size of its
caller when the function is inlined and ends up aggravating stack size
issues in deep recursion. This change refactors the offending method a
bit in order to avoid the local entirely.

Hopefully this fixes dotnet/coreclr#12691.

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

6 years agoUpdate CoreClr, CoreFx to preview2-25508-04, preview2-25508-04, respectively (dotnet...
dotnet-maestro-bot [Sat, 8 Jul 2017 21:05:19 +0000 (14:05 -0700)]
Update CoreClr, CoreFx to preview2-25508-04, preview2-25508-04, respectively (dotnet/coreclr#12633)

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

6 years agoRemove redundant call to TimeSpan.TotalMilliseconds (dotnet/coreclr#12692)
James Ko [Sat, 8 Jul 2017 20:38:23 +0000 (16:38 -0400)]
Remove redundant call to TimeSpan.TotalMilliseconds (dotnet/coreclr#12692)

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

6 years agoEnsure that ZeroMemoryInGCHeap writes in pointer-sized increments (dotnet/coreclr...
Daniel Podder [Sat, 8 Jul 2017 06:53:38 +0000 (23:53 -0700)]
Ensure that ZeroMemoryInGCHeap writes in pointer-sized increments (dotnet/coreclr#12689)

by adding the volatile keyword (which disables memset optimization).
Fixes dotnet/coreclr#12207

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

6 years agoMerge pull request dotnet/corertdotnet/coreclr#4110 from jkotas/nmirror-merge
Jan Kotas [Sat, 8 Jul 2017 03:30:52 +0000 (05:30 +0200)]
Merge pull request dotnet/corertdotnet/coreclr#4110 from jkotas/nmirror-merge

Merge nmirror to master

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#4100 from dotnet/nmirror
Michal Strehovský [Fri, 7 Jul 2017 18:03:37 +0000 (14:03 -0400)]
Merge pull request dotnet/corertdotnet/coreclr#4100 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/d9ba7e32d5562ec1f26592d7718ac19f913129e6

7 years agoFix Unix debug assert to not use instance handle (dotnet/coreclr#12687)
Jeremy Kuhne [Sat, 8 Jul 2017 01:24:13 +0000 (18:24 -0700)]
Fix Unix debug assert to not use instance handle (dotnet/coreclr#12687)

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

7 years agoFix GitHub_3449 test (dotnet/coreclr#12683)
Bruce Forstall [Sat, 8 Jul 2017 00:31:59 +0000 (17:31 -0700)]
Fix GitHub_3449 test (dotnet/coreclr#12683)

* Fix GitHub_3449 test

This test was looking for one answer for ARM and ARM64 but another
for other architectures. This didn't work for ARM32 on Windows
(compared to ARM32 on Linux).

Instead, simply allow either answer. This doesn't seem like a
terrible loss of precision, since we already allowed different
answers based on the platform.

* Update comment

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

7 years agoMinor fix added to mirrored changes
Tarek Mahmoud Sayed [Fri, 7 Jul 2017 18:06:58 +0000 (11:06 -0700)]
Minor fix added to mirrored changes

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#4086 from tarekgh/CleanupSerialization...
Tarek Mahmoud Sayed [Thu, 6 Jul 2017 19:22:02 +0000 (12:22 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#4086 from tarekgh/CleanupSerializationInEncoding

Clean up serialization from Encoding

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

7 years agoMerge pull request dotnet/coreclr#12682 from adityamandaleeka/arm64_dump_hang
Aditya Mandaleeka [Fri, 7 Jul 2017 23:13:42 +0000 (16:13 -0700)]
Merge pull request dotnet/coreclr#12682 from adityamandaleeka/arm64_dump_hang

Temporarily block core dump printing on arm64

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

7 years agoMerge pull request dotnet/coreclr#12675 from mikedn/range-disp
Bruce Forstall [Fri, 7 Jul 2017 22:07:38 +0000 (15:07 -0700)]
Merge pull request dotnet/coreclr#12675 from mikedn/range-disp

Dump tree IDs instead of pointers in RangeCheck

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

7 years agoMerge pull request dotnet/coreclr#12673 from ruben-ayrapetyan/fix-issue-12643
Bruce Forstall [Fri, 7 Jul 2017 22:05:51 +0000 (15:05 -0700)]
Merge pull request dotnet/coreclr#12673 from ruben-ayrapetyan/fix-issue-12643

Fix copying of FieldMarshaler structures

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

7 years agoMerge pull request dotnet/coreclr#12681 from BruceForstall/RemoveNonexistentVarargsTests
Bruce Forstall [Fri, 7 Jul 2017 22:03:43 +0000 (15:03 -0700)]
Merge pull request dotnet/coreclr#12681 from BruceForstall/RemoveNonexistentVarargsTests

Remove varargs test references

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

7 years agoRestore missing native *.ni.pdb file from the Microsoft.NETCore.Runtime.CoreCLR ...
Vance Morrison [Fri, 7 Jul 2017 22:02:12 +0000 (15:02 -0700)]
Restore missing native *.ni.pdb file from the Microsoft.NETCore.Runtime.CoreCLR (dotnet/coreclr#12677)

* Restore missing native *.ni.pdb file from the Microsoft.NETCore.Runtime.CoreCLR package

DLLs that have native code, need both the *.pdb (for IL information) and the *.ni.pdb (for
native information).

When System.Private.Corlib was renamed from System.Private.Corlib.ni.pdb to System.Private.Corlib,
the logic that decides what goes into the  Microsoft.NETCore.Runtime.CoreCLR package lost
the *.ni.pdb for System.Private.Corlib.

This change basically causes this logic to search both for *.ni.pdb as well as the *.pdb file and
thus fixes this issue.

* Remove unnecessary condition (review feedback)

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

7 years agoTemporarily block core dump printing on arm64 to unblock CI.
Aditya Mandaleeka [Fri, 7 Jul 2017 19:54:35 +0000 (12:54 -0700)]
Temporarily block core dump printing on arm64 to unblock CI.

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

7 years agoRevert change that always publish runtime layout (dotnet/coreclr#12679)
Yi Zhang (CLR) [Fri, 7 Jul 2017 20:34:38 +0000 (13:34 -0700)]
Revert change that always publish runtime layout (dotnet/coreclr#12679)

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

7 years agoMerge pull request dotnet/coreclr#12500 from adiaaida/throughputExclusionList
Michelle McDaniel [Fri, 7 Jul 2017 19:56:03 +0000 (12:56 -0700)]
Merge pull request dotnet/coreclr#12500 from adiaaida/throughputExclusionList

Update throughput exclusion list

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

7 years agoRemove varargs test references
Bruce Forstall [Fri, 7 Jul 2017 18:24:49 +0000 (11:24 -0700)]
Remove varargs test references

varargs tests were removed with dotnet/coreclr@0a427c6d6d87e69ce0f87dafd2f965ee989e6d29

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

7 years agoDump tree IDs instead of pointers in RangeCheck
Mike Danes [Fri, 7 Jul 2017 15:45:01 +0000 (18:45 +0300)]
Dump tree IDs instead of pointers in RangeCheck

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

7 years agoFix skipcrossgen option (dotnet/coreclr#12650)
Jonghyun Park [Fri, 7 Jul 2017 18:06:39 +0000 (03:06 +0900)]
Fix skipcrossgen option (dotnet/coreclr#12650)

* Fix skipcrossgen option

* Use return instead of exit

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

7 years agoMerge pull request dotnet/coreclr#12429 from mikedn/dead-qmark
Pat Gavlin [Fri, 7 Jul 2017 15:16:31 +0000 (10:16 -0500)]
Merge pull request dotnet/coreclr#12429 from mikedn/dead-qmark

Remove QMARK related dead code

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

7 years agoMerge pull request dotnet/coreclr#12623 from hqueue/arm/ryujit/issue_12615
Carol Eidt [Fri, 7 Jul 2017 15:12:59 +0000 (08:12 -0700)]
Merge pull request dotnet/coreclr#12623 from hqueue/arm/ryujit/issue_12615

[RyuJIT/ARM32] Unassign double register properly

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

7 years agoMerge pull request dotnet/coreclr#12597 from hseok-oh/ryujit/struct_split/lsra
Carol Eidt [Fri, 7 Jul 2017 15:08:23 +0000 (08:08 -0700)]
Merge pull request dotnet/coreclr#12597 from hseok-oh/ryujit/struct_split/lsra

[RyuJIT/ARM32] Codegen: split struct argument less than 16 bytes

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

7 years agoFix copying of FieldMarshaler structures in EEClassLayoutInfo::CollectLayoutFieldMeta...
Ruben Ayrapetyan [Fri, 7 Jul 2017 12:54:14 +0000 (15:54 +0300)]
Fix copying of FieldMarshaler structures in EEClassLayoutInfo::CollectLayoutFieldMetadataThrowing.

Related issue: dotnet/coreclr#12643

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

7 years ago[RyuJIT/ARM32] Codegen: split struct argument less than 16 bytes
Hyeongseok Oh [Fri, 7 Jul 2017 02:45:33 +0000 (11:45 +0900)]
[RyuJIT/ARM32] Codegen: split struct argument less than 16 bytes

Enable passing split struct (less than 16 bytes)
- LSRA phase
- Codegen phase

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

7 years agoMerge pull request dotnet/coreclr#12653 from wateret/arm/lvadump
Bruce Forstall [Fri, 7 Jul 2017 06:03:00 +0000 (23:03 -0700)]
Merge pull request dotnet/coreclr#12653 from wateret/arm/lvadump

[RyuJIT/arm] Fix double type local variable dump

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

7 years ago[RyuJIT/ARM32] Apply review feedback
Hyung-Kyu Choi [Fri, 7 Jul 2017 05:20:10 +0000 (14:20 +0900)]
[RyuJIT/ARM32] Apply review feedback

Rename vairable and rewrite code to use less #ifdef

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

7 years ago[RyuJIT/armel] Rewrite changes for readibility
Hanjoung Lee [Fri, 7 Jul 2017 05:12:20 +0000 (14:12 +0900)]
[RyuJIT/armel] Rewrite changes for readibility

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

7 years agoPin GC threads to corresponding processors on Linux (dotnet/coreclr#12486)
Xiangyang (Mark) Guo [Fri, 7 Jul 2017 02:39:32 +0000 (19:39 -0700)]
Pin GC threads to corresponding processors on Linux (dotnet/coreclr#12486)

* fix SetThreadGroupAffinity, add SetThreadAffinityMask and pin GC threads to processors on Linux

* fix loop count and error handler

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

7 years agoMerge pull request dotnet/coreclr#12667 from rartemev/issue_12465_1
Roman Artemev [Fri, 7 Jul 2017 01:24:28 +0000 (18:24 -0700)]
Merge pull request dotnet/coreclr#12667 from rartemev/issue_12465_1

Added explicit cast float -> double for arguments

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

7 years agoMerge pull request dotnet/coreclr#12634 from rartemev/issue_12466_1
Roman Artemev [Thu, 6 Jul 2017 23:36:59 +0000 (16:36 -0700)]
Merge pull request dotnet/coreclr#12634 from rartemev/issue_12466_1

Fix misprint in complex condition

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

7 years agoAdded explicit cast float -> double for arguments
Roman Artemev [Thu, 6 Jul 2017 22:28:43 +0000 (15:28 -0700)]
Added explicit cast float -> double for arguments

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

7 years agoUse SUB instead of XOR to clear fat pointer bit (dotnet/coreclr#12658)
Jan Kotas [Thu, 6 Jul 2017 18:35:42 +0000 (20:35 +0200)]
Use SUB instead of XOR to clear fat pointer bit (dotnet/coreclr#12658)

This makes the code generated for fat calli smaller because of the clearing of the fat pointer bit gets fused into address mode.

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

7 years agoMerge pull request dotnet/coreclr#12666 from mskvortsov/UnalignedLdSt
Bruce Forstall [Thu, 6 Jul 2017 18:28:07 +0000 (11:28 -0700)]
Merge pull request dotnet/coreclr#12666 from mskvortsov/UnalignedLdSt

[RyuJIT/Arm32] Support unaligned floating point loads/stores

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

7 years agoMerge pull request dotnet/coreclr#12655 from YongseopKim/ryujit/arm32/add_nyi_promote...
Bruce Forstall [Thu, 6 Jul 2017 18:15:01 +0000 (11:15 -0700)]
Merge pull request dotnet/coreclr#12655 from YongseopKim/ryujit/arm32/add_nyi_promoted_struct

[RyuJIT/ARM32] Add NYI_ARM for handling promoted struct

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

7 years agoUpdate throughput exclusion list
Michelle McDaniel [Tue, 27 Jun 2017 21:55:32 +0000 (14:55 -0700)]
Update throughput exclusion list

There are many assemblies in our throughput benchmark package that are
reference or forwarding assemblies. There is no jit work in these
assemblies, so we want to exclude them.

This change also adds an iterations parameter so users can specify a
specific number of iterations for testing.

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

7 years agoMerge pull request dotnet/coreclr#12053 from mikedn/xcopy-bindir
Bruce Forstall [Thu, 6 Jul 2017 16:29:25 +0000 (09:29 -0700)]
Merge pull request dotnet/coreclr#12053 from mikedn/xcopy-bindir

Do not copy bin subdirectories to test core_root

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

7 years agoMerge pull request dotnet/coreclr#12652 from hseok-oh/ryujit/fix_split_lower
Bruce Forstall [Thu, 6 Jul 2017 16:26:24 +0000 (09:26 -0700)]
Merge pull request dotnet/coreclr#12652 from hseok-oh/ryujit/fix_split_lower

[RyuJIT/ARM32] Fix register type setting for split struct arg

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

7 years agoSupport unaligned floating point loads/stores
Mikhail Skvortcov [Thu, 6 Jul 2017 14:09:52 +0000 (17:09 +0300)]
Support unaligned floating point loads/stores

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

7 years ago[RyuJIT/ARM32] Add NYI_ARM for handling promoted struct
Yongseop Kim [Wed, 5 Jul 2017 11:16:55 +0000 (20:16 +0900)]
[RyuJIT/ARM32] Add NYI_ARM for handling promoted struct

- In RyuJIT/ARM32, promoted struct on stack can't be handled like
  splitted struct arg's one.
- Until implementing handling it, make it entering the NYI_ARM.

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

7 years agoFix DumpLog to be compatible with CoreRT (dotnet/coreclr#12636)
Jan Kotas [Thu, 6 Jul 2017 07:01:53 +0000 (09:01 +0200)]
Fix DumpLog to be compatible with CoreRT (dotnet/coreclr#12636)

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

7 years agoAutomatic build runtime layout when skipping tests (dotnet/coreclr#12587)
Yi Zhang (CLR) [Thu, 6 Jul 2017 06:15:57 +0000 (23:15 -0700)]
build runtime layout when skipping tests (dotnet/coreclr#12587)

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

7 years ago[x86/Linux] Enable thread-abort reraise loop prevention (dotnet/coreclr#12646)
Jonghyun Park [Thu, 6 Jul 2017 06:05:34 +0000 (15:05 +0900)]
[x86/Linux] Enable thread-abort reraise loop prevention (dotnet/coreclr#12646)

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

7 years ago[RyuJIT/arm] Fix double type local variable dump
Hanjoung Lee [Thu, 6 Jul 2017 05:30:23 +0000 (14:30 +0900)]
[RyuJIT/arm] Fix double type local variable dump

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

7 years ago[RyuJIT/ARM32] Fix register type setting for split struct arg
Hyeongseok Oh [Thu, 6 Jul 2017 05:07:21 +0000 (14:07 +0900)]
[RyuJIT/ARM32] Fix register type setting for split struct arg

Fix register type setting for split struct argument using GT_FIELD_LIST node

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

7 years ago[RyuJIT/ARM32] Fix assertion failed 'gcPtrCount == 0' (dotnet/coreclr#12621)
Yongseop Kim [Thu, 6 Jul 2017 04:06:39 +0000 (13:06 +0900)]
[RyuJIT/ARM32] Fix assertion failed 'gcPtrCount == 0' (dotnet/coreclr#12621)

* [RyuJIT/ARM32] Fix assertion failed 'gcPtrCount == 0'

Change wrong gcPtrCount's value from gtNumSlots to gtNumberReferenceSlots of GenTreePutArgStk

* Fix a formatting error

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

7 years agoMerge pull request dotnet/coreclr#12647 from dotnet/mirror-merge-9210244
Tarek Mahmoud Sayed [Thu, 6 Jul 2017 02:56:27 +0000 (19:56 -0700)]
Merge pull request dotnet/coreclr#12647 from dotnet/mirror-merge-9210244

Mirror changes from dotnet/corert

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

7 years agoFix the merge from the corert changes
Tarek Mahmoud Sayed [Thu, 6 Jul 2017 00:37:58 +0000 (17:37 -0700)]
Fix the merge from the corert changes

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#4080 from dotnet/nmirror
Tarek Mahmoud Sayed [Thu, 6 Jul 2017 00:03:41 +0000 (17:03 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#4080 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/9673552bb036470ebb57aa647d0995686cbd94c8

7 years agoMerge pull request dotnet/coreclr#12606 from adityamandaleeka/mask_activation_on_altstack
Aditya Mandaleeka [Thu, 6 Jul 2017 00:02:15 +0000 (17:02 -0700)]
Merge pull request dotnet/coreclr#12606 from adityamandaleeka/mask_activation_on_altstack

Mask INJECT_ACTIVATION_SIGNAL while on alternate signal stack

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

7 years agoMask INJECT_ACTIVATION_SIGNAL while on alternate signal stack.
Aditya Mandaleeka [Mon, 3 Jul 2017 17:41:02 +0000 (10:41 -0700)]
Mask INJECT_ACTIVATION_SIGNAL while on alternate signal stack.

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

7 years agoUpdate gtDispRegVal() for multi register nodes (dotnet/coreclr#12573)
Hanjoung Lee [Wed, 5 Jul 2017 23:58:30 +0000 (08:58 +0900)]
Update gtDispRegVal() for multi register nodes (dotnet/coreclr#12573)

* Update gtDispRegVal() for multi register nodes

* [RyuJIT/armel] Fix

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

7 years agoCleanup officialbuild warnings (dotnet/coreclr#12578)
chcosta [Wed, 5 Jul 2017 23:29:04 +0000 (16:29 -0700)]
Cleanup officialbuild warnings (dotnet/coreclr#12578)

* Cleanup officialbuild warnings

* Re-enable "sync test native binaries" step

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

7 years agoMerge pull request dotnet/coreclr#12619 from parjong/fix/merge_jit_and_engine
Bruce Forstall [Wed, 5 Jul 2017 21:03:06 +0000 (14:03 -0700)]
Merge pull request dotnet/coreclr#12619 from parjong/fix/merge_jit_and_engine

Fix missing references in FEATURE_MERGE_JIT_AND_ENGINE

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

7 years agoMerge pull request dotnet/coreclr#12637 from parjong/fix/skipcrossgen
Bruce Forstall [Wed, 5 Jul 2017 20:51:55 +0000 (13:51 -0700)]
Merge pull request dotnet/coreclr#12637 from parjong/fix/skipcrossgen

Add skipcrossgen option

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

7 years agoMerge pull request dotnet/coreclr#12575 from wateret/armel/floatret
Bruce Forstall [Wed, 5 Jul 2017 20:24:48 +0000 (13:24 -0700)]
Merge pull request dotnet/coreclr#12575 from wateret/armel/floatret

[RyuJIT/armel] Move returned float to float reg

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

7 years agoAdd skipcrossgen option
Jonghyun Park [Wed, 5 Jul 2017 07:23:09 +0000 (16:23 +0900)]
Add skipcrossgen option

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

7 years agoSupport interprter build when INTERP_TRACING is not set (dotnet/coreclr#12625)
Jonghyun Park [Wed, 5 Jul 2017 01:45:24 +0000 (10:45 +0900)]
Support interprter build when INTERP_TRACING is not set (dotnet/coreclr#12625)

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

7 years agoRemove unused global variable (dotnet/coreclr#12620)
Jonghyun Park [Wed, 5 Jul 2017 01:40:57 +0000 (10:40 +0900)]
Remove unused global variable (dotnet/coreclr#12620)

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

7 years agoHide methods in IdDispenser (instead of using DacNotImpl) (dotnet/coreclr#12624)
Jonghyun Park [Wed, 5 Jul 2017 01:39:53 +0000 (10:39 +0900)]
Hide methods in IdDispenser (instead of using DacNotImpl) (dotnet/coreclr#12624)

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

7 years agoFix misprint in complex condition
Roman Artemev [Wed, 5 Jul 2017 00:14:24 +0000 (17:14 -0700)]
Fix misprint in complex condition

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

7 years agoUpdate to latest System.Memory
Jan Kotas [Tue, 4 Jul 2017 14:45:31 +0000 (07:45 -0700)]
Update to latest System.Memory

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

7 years agoUpdate CoreClr, CoreFx to preview2-25504-01, preview2-25504-01, respectively
dotnet-maestro-bot [Tue, 4 Jul 2017 12:55:31 +0000 (12:55 +0000)]
Update CoreClr, CoreFx to preview2-25504-01, preview2-25504-01, respectively

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

7 years agoDelete unnecessary code (dotnet/coreclr#12607)
Jan Kotas [Tue, 4 Jul 2017 14:19:32 +0000 (07:19 -0700)]
Delete unnecessary code (dotnet/coreclr#12607)

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

7 years ago[RyuJIT/armel] Move returned float to float reg
Hanjoung Lee [Tue, 4 Jul 2017 08:50:57 +0000 (17:50 +0900)]
[RyuJIT/armel] Move returned float to float reg

Returned float values are in r0(float) or r0:r1(double).
These values must be moved to proper float register after call.

Fix dotnet/coreclr#12574

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

7 years ago[RyuJIT/ARM32] Unassign double register properly
Hyung-Kyu Choi [Tue, 4 Jul 2017 07:07:19 +0000 (16:07 +0900)]
[RyuJIT/ARM32] Unassign double register properly

In LinearScan::tryAllocateFreeReg(), unassign a double register properly
when a found float register is a part of a double register.

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

7 years agoFix missing refernces in FEATURE_MERGE_JIT_AND_ENGINT
Jonghyun Park [Thu, 1 Jun 2017 05:50:13 +0000 (14:50 +0900)]
Fix missing refernces in FEATURE_MERGE_JIT_AND_ENGINT

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

7 years agoMerge pull request dotnet/coreclr#12608 from pgavlin/FixDSE
Pat Gavlin [Tue, 4 Jul 2017 00:37:13 +0000 (17:37 -0700)]
Merge pull request dotnet/coreclr#12608 from pgavlin/FixDSE

Fix a bug in LIR dead store removal.

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

7 years agocreate GetAssertionIndex to convert from unsigned to AssertionIndex (dotnet/coreclr...
Sergey Andreenko [Mon, 3 Jul 2017 21:09:37 +0000 (14:09 -0700)]
create GetAssertionIndex to convert from unsigned to AssertionIndex (dotnet/coreclr#12554)

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

7 years agoFix a bug in LIR dead store removal.
Pat Gavlin [Mon, 3 Jul 2017 19:51:36 +0000 (12:51 -0700)]
Fix a bug in LIR dead store removal.

This came in with the recent operand visitor changes: instead of marking
the operands of a dead indirect store unused, DSE would mark the operands
of its address unsued.

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

7 years ago[x86/Linux] Restore PTR_MethodTable in FastPrimitiveArrayAllocator (dotnet/coreclr...
Jonghyun Park [Mon, 3 Jul 2017 18:08:57 +0000 (03:08 +0900)]
[x86/Linux] Restore PTR_MethodTable in FastPrimitiveArrayAllocator (dotnet/coreclr#12569)

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

7 years ago[RyuJIT/armel] Passing stack double arguments
Hanjoung Lee [Fri, 30 Jun 2017 09:17:07 +0000 (18:17 +0900)]
[RyuJIT/armel] Passing stack double arguments

Fix dotnet/coreclr#11927

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

7 years agoMove the bitset iterator for bitsetasuint64inclass inside the bitset. (dotnet/coreclr...
Sergey Andreenko [Sat, 1 Jul 2017 16:36:36 +0000 (09:36 -0700)]
Move the bitset iterator for bitsetasuint64inclass inside the bitset. (dotnet/coreclr#12553)

It is how it is done for others bitsets.

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

7 years agoImprove fgAddRefPred (dotnet/coreclr#12585)
Bruce Forstall [Sat, 1 Jul 2017 06:04:14 +0000 (23:04 -0700)]
Improve fgAddRefPred (dotnet/coreclr#12585)

* Improve fgAddRefPred

Only do one search through the predecessor list looking for an
existing predecessor edge, or looking for the proper location to
insert a new predecessor edge. Previously, we traversed the list
twice (or part of twice) for new edges. For new edges, stop the
search when we reach the correct location in sorted order.

This reduces x86 release minopts instruction count by 0.42% and
full opts instruction count by 0.33% (of a superpmi replay of
the tests).

Fixes dotnet/coreclr#12582

* Update for feedback

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

7 years agoMerge pull request dotnet/corertdotnet/coreclr#4046 from dotnet/nmirror
Michal Strehovský [Sat, 1 Jul 2017 03:04:18 +0000 (20:04 -0700)]
Merge pull request dotnet/corertdotnet/coreclr#4046 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/bfc3141f97a9f9f0d095f3d2e99a7c02ce869ab0

7 years agoReducing diffs with CoreRT (dotnet/coreclr#12579)
Jan Kotas [Sat, 1 Jul 2017 05:23:26 +0000 (22:23 -0700)]
Reducing diffs with CoreRT (dotnet/coreclr#12579)

* Rename m_firstChar to _firstChar to reduce CoreRT diffs
* Reducing diffs with CoreRT
* Delete dead code

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

7 years agoMerge pull request dotnet/coreclr#12568 from hseok-oh/ryujit/fix_11781
Bruce Forstall [Sat, 1 Jul 2017 00:55:54 +0000 (17:55 -0700)]
Merge pull request dotnet/coreclr#12568 from hseok-oh/ryujit/fix_11781

[RyuJIT/ARM32] Fix using fgMorphMultiregStructArg for mkrefany

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

7 years agoRemove unnecessary update of RegRecord in LSRA (dotnet/coreclr#12474)
Hyung-Kyu Choi [Sat, 1 Jul 2017 00:11:52 +0000 (09:11 +0900)]
Remove unnecessary update of RegRecord in LSRA (dotnet/coreclr#12474)

* Remove unnecessary update of RegRecord

We don't need to clear assignedInterval of regRec,
because it was already cleared by checkAndClearInterval() above.

Signed-off-by: Hyung-Kyu Choi <hk0110.choi@samsung.com>
* Apply review feedback

- Add a assertion and comment for the assertion

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

7 years ago[RyuJIT/ARM32] Return HFA struct (dotnet/coreclr#12453)
Hyeongseok Oh [Fri, 30 Jun 2017 23:51:02 +0000 (08:51 +0900)]
[RyuJIT/ARM32] Return HFA struct (dotnet/coreclr#12453)

* [RyuJIT/ARM32] Return HFA struct

- Enable return HFA struct
- Merge ARM32/ARM64 CodeGen::isStructReturn(GenTreePtr treeNode)
- Merge ARM32/ARM64 CodeGen::genStructReturn(GenTreePtr treeNode)

* Add comment

Add TODO comment to optimize two-float loading

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

7 years agoMerge pull request dotnet/coreclr#12539 from ellismg/update-prerelease-tag
Matt Ellis [Fri, 30 Jun 2017 21:18:49 +0000 (14:18 -0700)]
Merge pull request dotnet/coreclr#12539 from ellismg/update-prerelease-tag

Update to master prerelease2 tag

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

7 years agoMerge pull request dotnet/coreclr#12527 from gsfreema/relative-paths
Aditya Mandaleeka [Fri, 30 Jun 2017 21:06:51 +0000 (14:06 -0700)]
Merge pull request dotnet/coreclr#12527 from gsfreema/relative-paths

Fix contributing workflow commit message link

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

7 years agoFix an issue where g_ephemeral_low would never get bashed into the write (dotnet...
Sean Gillespie [Fri, 30 Jun 2017 20:29:48 +0000 (13:29 -0700)]
Fix an issue where g_ephemeral_low would never get bashed into the write (dotnet/coreclr#12563)

barrier when starting up with Server GC (x86 only).

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

7 years agoMerge pull request dotnet/coreclr#12577 from dpodder/optdata-170630
Pat Gavlin [Fri, 30 Jun 2017 20:17:40 +0000 (13:17 -0700)]
Merge pull request dotnet/coreclr#12577 from dpodder/optdata-170630

Update optdata to version 20170630-0138

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

7 years agoMerge pull request dotnet/coreclr#12236 from rartemev/fix_legacyjit_tests
Roman Artemev [Fri, 30 Jun 2017 18:12:57 +0000 (11:12 -0700)]
Merge pull request dotnet/coreclr#12236 from rartemev/fix_legacyjit_tests

Fix legacyjit CI testing

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