platform/upstream/dotnet/runtime.git
7 years agoSwitch netcoreapp test reference to netcoreapp2.0 (dotnet/coreclr#9310)
Jan Kotas [Fri, 3 Feb 2017 21:49:46 +0000 (13:49 -0800)]
Switch netcoreapp test reference to netcoreapp2.0 (dotnet/coreclr#9310)

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

7 years agoUpdate glossary.md
Karel Zikmund [Fri, 3 Feb 2017 20:33:23 +0000 (12:33 -0800)]
Update glossary.md

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

7 years agoMerge pull request dotnet/coreclr#9315 from wtgodbe/disableBenchmarkGames
William Godbe [Fri, 3 Feb 2017 20:21:05 +0000 (12:21 -0800)]
Merge pull request dotnet/coreclr#9315 from wtgodbe/disableBenchmarkGames

Disable failing Helix tests until we fix underlying issues

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

7 years agoDisable failing Helix tests until we fix underlying issues
wtgodbe [Fri, 3 Feb 2017 20:16:28 +0000 (12:16 -0800)]
Disable failing Helix tests until we fix underlying issues

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

7 years agoUpdate glossary.md
Karel Zikmund [Fri, 3 Feb 2017 19:57:29 +0000 (11:57 -0800)]
Update glossary.md

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

7 years agoMerge pull request dotnet/coreclr#9294 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Fri, 3 Feb 2017 19:08:00 +0000 (11:08 -0800)]
Merge pull request dotnet/coreclr#9294 from dotnet-bot/master-UpdateDependencies

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

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

7 years ago[x86/Linux] Clean Up #ifdef for VerifyValidTransitionFromManagedCode (dotnet/coreclr...
Jonghyun Park [Fri, 3 Feb 2017 17:51:09 +0000 (02:51 +0900)]
[x86/Linux] Clean Up #ifdef for VerifyValidTransitionFromManagedCode (dotnet/coreclr#9304)

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

7 years ago[x86/Linux] Clean up non-WIN64EXCEPTIONS code: (dotnet/coreclr#9305)
Jonghyun Park [Fri, 3 Feb 2017 17:50:29 +0000 (02:50 +0900)]
[x86/Linux] Clean up non-WIN64EXCEPTIONS code: (dotnet/coreclr#9305)

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

7 years ago[x86/Linux] Clean Up JIT_EndCatch (dotnet/coreclr#9302)
Jonghyun Park [Fri, 3 Feb 2017 17:49:52 +0000 (02:49 +0900)]
[x86/Linux] Clean Up JIT_EndCatch (dotnet/coreclr#9302)

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

7 years agoMerge pull request dotnet/coreclr#9256 from CarolEidt/TreeNodeInfoSplit
Carol Eidt [Fri, 3 Feb 2017 17:34:35 +0000 (09:34 -0800)]
Merge pull request dotnet/coreclr#9256 from CarolEidt/TreeNodeInfoSplit

Refactor TreeNodeInfoInit

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

7 years agoMerge pull request dotnet/coreclr#9279 from stephentoub/more_tp_perf
Stephen Toub [Fri, 3 Feb 2017 16:10:55 +0000 (11:10 -0500)]
Merge pull request dotnet/coreclr#9279 from stephentoub/more_tp_perf

Some more perf tweaks to ThreadPool

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

7 years agoUpdate CoreClr, CoreFx to beta-25003-02, beta-25003-02, respectively
dotnet-bot [Fri, 3 Feb 2017 15:03:33 +0000 (15:03 +0000)]
Update CoreClr, CoreFx to beta-25003-02, beta-25003-02, respectively

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

7 years agoReduce cost of LocalPop when local queue empty
Stephen Toub [Fri, 3 Feb 2017 14:24:44 +0000 (09:24 -0500)]
Reduce cost of LocalPop when local queue empty

- Change LocalPop to be parameterless and return the IThreadPoolWorkItem rather than returning a bool and having the IThreadPoolWorkItem in an out arg.
- Refactor LocalPop slightly to have an inlineable upfront check for whether the local queue is empty, and only call the non-inlineable method if there's something that could potentially be popped

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

7 years agoAllow Dequeue to avoid TrySteal if there's nothing to steal
Stephen Toub [Fri, 3 Feb 2017 13:44:48 +0000 (08:44 -0500)]
Allow Dequeue to avoid TrySteal if there's nothing to steal

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

7 years agoAddress PR feedback
Stephen Toub [Thu, 2 Feb 2017 22:25:36 +0000 (17:25 -0500)]
Address PR feedback

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

7 years agoEnable inlining of EnsureVMInitialized
Stephen Toub [Thu, 2 Feb 2017 18:50:44 +0000 (13:50 -0500)]
Enable inlining of EnsureVMInitialized

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

7 years agoReplace usage of Random
Stephen Toub [Thu, 2 Feb 2017 18:05:13 +0000 (13:05 -0500)]
Replace usage of Random

We need some randomness, but it doesn't need to be particularly good, just fast.  A simple xorshift prng is 3-4x faster than Random, in particular without multiple virtual method calls that don't get inlined.  It's also a bit lighter in terms of memory (though there's only one of these per thread, so it doesn't impact much).

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

7 years agoRemove StackCrawlMark goo from {Unsafe}QueueUserWorkItem
Stephen Toub [Thu, 2 Feb 2017 16:51:28 +0000 (11:51 -0500)]
Remove StackCrawlMark goo from {Unsafe}QueueUserWorkItem

Allow more methods to be inlined

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

7 years agoRemove unnecessary try/finally blocks
Stephen Toub [Thu, 2 Feb 2017 16:00:49 +0000 (11:00 -0500)]
Remove unnecessary try/finally blocks

And clean up the code around it.

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

7 years agoRework work-stealing queue list
Stephen Toub [Thu, 2 Feb 2017 15:25:36 +0000 (10:25 -0500)]
Rework work-stealing queue list

The current data structure used to store the list of local work-stealing queues is maintains a sparse array, where entries can be null, and where removals null out entries in an active array that could be being read by another thread concurrently.  This necessitates that threads looking for work need to use volatile reads and null checks on each element.  Further, because the array doubles in size when it grows, and never shrinks, we often end up having many empty slots that threads need to look at as they're looking for work.

It's actually relatively rare for threads to come and go.  While the thread pool does take threads in and out of service, it only rarely actually terminates a thread or asks the OS for a new one, so it's relatively rare that threads are added/removed from the list.  Given that, we can simply use immutable arrays, creating a new array of the exact right size whenever a thread is added or removed.  Then iteration can be done without volatile reads and without null checks, because the contents of the array being read through won't change and won't ever be null.

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

7 years agoReorder usings per previous PR feedback
Stephen Toub [Thu, 2 Feb 2017 12:00:09 +0000 (07:00 -0500)]
Reorder usings per previous PR feedback

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

7 years ago[x86/Linux] Do NOT use QuickUnwindStackFrame (dotnet/coreclr#9299)
Jonghyun Park [Fri, 3 Feb 2017 07:15:56 +0000 (16:15 +0900)]
[x86/Linux] Do NOT use QuickUnwindStackFrame (dotnet/coreclr#9299)

* [x86/Linux] Do NOT use QuickUnwindStackFrame

* Fix x64 build error

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

7 years ago[x86/Linux] Convert Fake DBZ into OVF (dotnet/coreclr#9295)
Jonghyun Park [Fri, 3 Feb 2017 07:03:34 +0000 (16:03 +0900)]
[x86/Linux] Convert Fake DBZ into OVF (dotnet/coreclr#9295)

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

7 years agoMerge pull request dotnet/coreclr#9283 from adiaaida/devdiv377155
Michelle McDaniel [Fri, 3 Feb 2017 02:56:47 +0000 (18:56 -0800)]
Merge pull request dotnet/coreclr#9283 from adiaaida/devdiv377155

Add a test for dotnet/coreclr#9282

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

7 years agoClean up GetAddrOfSecurityObjectFromCachedInfo (dotnet/coreclr#9291)
Jonghyun Park [Fri, 3 Feb 2017 02:32:22 +0000 (11:32 +0900)]
Clean up GetAddrOfSecurityObjectFromCachedInfo (dotnet/coreclr#9291)

GetAddrOfSecurityObjectFromCachedInfo seems to be X86-specific, but has
ifdef for other architectures.

This commit declares GetAddrOfSecurityObjectFromCachedInfo only for X86
to simplify its implementation.

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

7 years ago[x86/Linux] Do NOT use GSCookie on Funclet (dotnet/coreclr#9290)
Jonghyun Park [Fri, 3 Feb 2017 02:15:28 +0000 (11:15 +0900)]
[x86/Linux] Do NOT use GSCookie on Funclet (dotnet/coreclr#9290)

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

7 years agoRefactor TreeNodeInfoInit
Carol Eidt [Tue, 31 Jan 2017 07:18:38 +0000 (23:18 -0800)]
Refactor TreeNodeInfoInit

Move all the register requirements (TreeNodeInfoInit) code into lsra{arch}.cpp.
Split methods that currently do both tree transformation and register requirements.

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

7 years agoMerge pull request dotnet/coreclr#9280 from wtgodbe/disableLargeMemoryTests
William Godbe [Fri, 3 Feb 2017 00:01:54 +0000 (16:01 -0800)]
Merge pull request dotnet/coreclr#9280 from wtgodbe/disableLargeMemoryTests

Disable GC LargeMemory tests that were failing in Helix

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

7 years agoAdd a test for dotnet/coreclr#9282
Michelle McDaniel [Thu, 2 Feb 2017 21:59:10 +0000 (13:59 -0800)]
Add a test for dotnet/coreclr#9282

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

7 years agoMerge pull request dotnet/coreclr#9229 from sandreenko/increase_gtCallMoreFlags_size
sandreenko [Thu, 2 Feb 2017 22:07:59 +0000 (14:07 -0800)]
Merge pull request dotnet/coreclr#9229 from sandreenko/increase_gtCallMoreFlags_size

increase gtCallMoreFlags size

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

7 years agoDisable GC LargeMemory tests that were failing in Helix
wtgodbe [Thu, 2 Feb 2017 20:36:31 +0000 (12:36 -0800)]
Disable GC LargeMemory tests that were failing in Helix

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

7 years agoMerge pull request dotnet/coreclr#9258 from dotnet-bot/master-UpdateDependencies
Stephen Toub [Thu, 2 Feb 2017 20:23:55 +0000 (15:23 -0500)]
Merge pull request dotnet/coreclr#9258 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-25002-03 (master)

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

7 years agoMerge pull request dotnet/coreclr#9275 from RussKeldorph/results_moved
Russ Keldorph [Thu, 2 Feb 2017 19:03:01 +0000 (11:03 -0800)]
Merge pull request dotnet/coreclr#9275 from RussKeldorph/results_moved

Adapt to corefx moving test results.

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

7 years agoMake ValueTuple types serializable (dotnet/coreclr#9271)
Julien Couvreur [Thu, 2 Feb 2017 18:20:20 +0000 (10:20 -0800)]
Make ValueTuple types serializable (dotnet/coreclr#9271)

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

7 years agoUpdate CoreClr to beta-25002-03
dotnet-bot [Thu, 2 Feb 2017 17:47:34 +0000 (17:47 +0000)]
Update CoreClr to beta-25002-03

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

7 years agoAdapt to corefx moving test results.
Russ Keldorph [Thu, 2 Feb 2017 16:52:55 +0000 (08:52 -0800)]
Adapt to corefx moving test results.

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

7 years ago[x86/Linux] Set Establisher Frame Pointer as Caller SP (dotnet/coreclr#9264)
Jonghyun Park [Thu, 2 Feb 2017 16:12:07 +0000 (01:12 +0900)]
[x86/Linux] Set Establisher Frame Pointer as Caller SP (dotnet/coreclr#9264)

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

7 years agoDelete remaining legacy ComInterfaces (dotnet/coreclr#9270)
Jan Kotas [Thu, 2 Feb 2017 15:57:41 +0000 (07:57 -0800)]
Delete remaining legacy ComInterfaces (dotnet/coreclr#9270)

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

7 years agoAdd ThreadPoolBoundHandle to model.xml (dotnet/coreclr#9268)
Jan Kotas [Thu, 2 Feb 2017 15:57:17 +0000 (07:57 -0800)]
Add ThreadPoolBoundHandle to model.xml (dotnet/coreclr#9268)

This type was moved from corefx. This will allow the redundant copy in corefx to be deleted.

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

7 years ago[x86/Linux] Do NOT use pXXX fields (dotnet/coreclr#9121)
Jonghyun Park [Thu, 2 Feb 2017 09:41:46 +0000 (18:41 +0900)]
[x86/Linux] Do NOT use pXXX fields (dotnet/coreclr#9121)

* [x86/Linux] Do NOT use pXXX fields

* Fix x86/Windows build error

* Fix another x86/Windows build error

* Fix typo

* Do NOT trash EBP

* Reflect the original semantics of EHContext::UpdateFrame

* Unify ReadXXX/LocateXXX into GetXXXLocation, and RestoreXXX/TrashXXX into SetXXXLocation

* Revert the order of pXXX fields

* Revise cgenx86.cpp

* Revert unnecessary changes

* Remove direct accesses to CALLEE_SAVED_REGISTERS_TAG

* Do NOT update pCurrentContext inside SetXXXLocation

* Update RegPtr via offset

* Unify REG_METHODS (and revise UpdateRegDisplay methods accordingly)

* Revise per feedback

* Fix x86/Windows build error

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

7 years agoDelete LocalDataStore (dotnet/coreclr#9266)
Jan Kotas [Thu, 2 Feb 2017 07:29:54 +0000 (23:29 -0800)]
Delete LocalDataStore (dotnet/coreclr#9266)

This lives in CoreFX now

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

7 years ago[x86/Linux] Process Explicit Frame before Managed Frame (dotnet/coreclr#9261)
Jonghyun Park [Thu, 2 Feb 2017 06:42:39 +0000 (15:42 +0900)]
[x86/Linux] Process Explicit Frame before Managed Frame (dotnet/coreclr#9261)

This commit revises stack walker to process explicit frames before
managed frame as in other architectures that use Win64 EH model.

This commit fixes dotnet/coreclr#9260.

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

7 years agoSynchronize part of System/* with CoreRT (dotnet/coreclr#9259)
Jan Kotas [Thu, 2 Feb 2017 04:53:08 +0000 (20:53 -0800)]
Synchronize part of System/* with CoreRT (dotnet/coreclr#9259)

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

7 years agoMerge pull request dotnet/coreclr#9234 from stephentoub/tp_perf
Stephen Toub [Thu, 2 Feb 2017 04:42:27 +0000 (23:42 -0500)]
Merge pull request dotnet/coreclr#9234 from stephentoub/tp_perf

Some ThreadPool performance and maintainability improvements

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

7 years agoAdding some missing APIs on core that where added to N.S 2.0 (dotnet/coreclr#9203)
Santiago Fernandez Madero [Thu, 2 Feb 2017 04:23:06 +0000 (20:23 -0800)]
Adding some missing APIs on core that where added to N.S 2.0 (dotnet/coreclr#9203)

Adding missing apis on .NET Core.

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

7 years agoFix segment map modification in OOM scenarios (dotnet/coreclr#9241)
Sean Gillespie [Thu, 2 Feb 2017 02:32:33 +0000 (18:32 -0800)]
Fix segment map modification in OOM scenarios (dotnet/coreclr#9241)

* Fix an issue where the segment mapping table is not reverted
back to its original state when failing to commit the mark array
in an OOM scenario. Fixes dotnet/coreclr#9064

* Code review feedback

* Update seg_mapping_table before setting g_gc_*_address

* Add a barrier between the seg_mapping_table write and updates to g_gc_*_address

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

7 years agoMerge pull request dotnet/coreclr#9254 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Thu, 2 Feb 2017 01:44:54 +0000 (17:44 -0800)]
Merge pull request dotnet/coreclr#9254 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-25001-07 (master)

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

7 years agoUpdate CoreClr to beta-25001-07
dotnet-bot [Wed, 1 Feb 2017 23:41:44 +0000 (23:41 +0000)]
Update CoreClr to beta-25001-07

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

7 years agoAddress PR feedback
Stephen Toub [Wed, 1 Feb 2017 22:10:33 +0000 (17:10 -0500)]
Address PR feedback

- Fix ArgumentNullException parameter name

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

7 years agoMerge pull request dotnet/coreclr#9252 from wtgodbe/fixRuntimes
William Godbe [Wed, 1 Feb 2017 21:59:20 +0000 (13:59 -0800)]
Merge pull request dotnet/coreclr#9252 from wtgodbe/fixRuntimes

Use full set of runtimes for all test project.json files

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

7 years agoUse full set of runtimes for all test project.json files
wtgodbe [Wed, 1 Feb 2017 19:16:19 +0000 (11:16 -0800)]
Use full set of runtimes for all test project.json files

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

7 years agoSynchronize src\mscorlib\corefx with CoreRT (dotnet/coreclr#9251)
Jan Kotas [Wed, 1 Feb 2017 20:40:59 +0000 (12:40 -0800)]
Synchronize src\mscorlib\corefx with CoreRT (dotnet/coreclr#9251)

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

7 years agoMiscellaneous code cleanup
Stephen Toub [Wed, 1 Feb 2017 16:51:27 +0000 (11:51 -0500)]
Miscellaneous code cleanup

- Remove some explicit ctors
- Remove some unnecessary casts
- Mark some fields readonly
- Follow style guidelines for visibility/static ordering in signatures
- Move usings to top of file
- Delete some stale comments
- Added names for bool args at call sites
- Use expression-bodied members in a few places
- Pass lower bounds to Array.Copy
- Remove unnecessary "success" local in QueueUserworkItemHelper

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

7 years agoMerge pull request dotnet/coreclr#9242 from dotnet-bot/master-UpdateDependencies
Dan Moseley [Wed, 1 Feb 2017 16:47:43 +0000 (09:47 -0700)]
Merge pull request dotnet/coreclr#9242 from dotnet-bot/master-UpdateDependencies

Update CoreFx to beta-25001-02 (master)

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

7 years agoSimplify Dequeue method
Stephen Toub [Wed, 1 Feb 2017 15:49:27 +0000 (10:49 -0500)]
Simplify Dequeue method

- Consolidate branches
- Pass resulting work item as a return value rather than an out
- Avoid an unnecessary write to the bool passed by-ref

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

7 years agoRemove unnecessary explicit static cctors
Stephen Toub [Wed, 1 Feb 2017 15:35:12 +0000 (10:35 -0500)]
Remove unnecessary explicit static cctors

Let these types be marked beforefieldinit

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

7 years agoSimplify TrySteal
Stephen Toub [Wed, 1 Feb 2017 15:32:44 +0000 (10:32 -0500)]
Simplify TrySteal

- Use the newly updated SpinLock.TryEnter(ref bool) instead of TryEnter(int, ref bool), as the former is ~3x faster when the lock is already held.
- Change the method to avoid the out reference argument and instead just return it
- Simplify the logic to consolidate the setting of missedSteal

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

7 years agoUpdate CoreFx to beta-25001-02
dotnet-bot [Wed, 1 Feb 2017 15:05:27 +0000 (15:05 +0000)]
Update CoreFx to beta-25001-02

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

7 years agoUse ConcurrentQueue<T> in ThreadPool
Stephen Toub [Tue, 31 Jan 2017 16:51:40 +0000 (11:51 -0500)]
Use ConcurrentQueue<T> in ThreadPool

Use the same ConcurrentQueue<T> now being used in corefx in ThreadPool instead of ThreadPool's custom queue implementation (which was close in design to the old ConcurrentQueue<T> implementation).

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

7 years agoPort ConcurrentQueue<T> back from corefx
Stephen Toub [Tue, 31 Jan 2017 16:41:36 +0000 (11:41 -0500)]
Port ConcurrentQueue<T> back from corefx

It's not exposed from CoreLib, but a) as long as the code is here it's good to have it in sync, and b) we can use it in ThreadPool rather than having a separate concurrent queue implementation (which is very similar to the old ConcurrentQueue design).

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

7 years agoFix GC reporting for Span<T> passed in registers on Unix (dotnet/coreclr#9247)
Koundinya Veluri [Wed, 1 Feb 2017 14:20:12 +0000 (06:20 -0800)]
Fix GC reporting for Span<T> passed in registers on Unix (dotnet/coreclr#9247)

Part of fix for dotnet/coreclr#9033

Test coverage is already there in CoreFX's span tests.

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

7 years agoSynchronize SpinLock with CoreRT (dotnet/coreclr#9244)
Jan Kotas [Wed, 1 Feb 2017 07:34:28 +0000 (23:34 -0800)]
Synchronize SpinLock with CoreRT (dotnet/coreclr#9244)

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

7 years agoMerge pull request dotnet/coreclr#9211 from hqueue/arm/clang_O3_issue
Gaurav Khanna [Wed, 1 Feb 2017 06:22:46 +0000 (22:22 -0800)]
Merge pull request dotnet/coreclr#9211 from hqueue/arm/clang_O3_issue

Use -O1 optimization for arm and armel

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

7 years agoReflectionOnlyLoad should throw NotSupportedException (dotnet/coreclr#9238)
Rahul Kumar [Wed, 1 Feb 2017 06:13:36 +0000 (22:13 -0800)]
ReflectionOnlyLoad should throw NotSupportedException (dotnet/coreclr#9238)

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

7 years agoRenaming Span/ReadOnlySpan Extension classes to avoid conflict with CoreFX. (dotnet...
Ahson Ahmed Khan [Wed, 1 Feb 2017 05:43:43 +0000 (21:43 -0800)]
Renaming Span/ReadOnlySpan Extension classes to avoid conflict with CoreFX. (dotnet/coreclr#9182)

* Moving all extension methods to a class called Span
* Adding known workaround for JIT bug.

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

7 years ago[x86/Linux] Fix LLDB Plugin Build Error (dotnet/coreclr#9239)
Jonghyun Park [Wed, 1 Feb 2017 04:19:55 +0000 (13:19 +0900)]
[x86/Linux] Fix LLDB Plugin Build Error (dotnet/coreclr#9239)

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

7 years agoincrease gtCallMoreFlags size
Sergey Andreenko [Tue, 31 Jan 2017 21:37:48 +0000 (13:37 -0800)]
increase gtCallMoreFlags size

gtCallMoreFlags was shart and all 16 values are already used. We need
one more for CoreRT fat pointers and it is likely that we wll need more
in the future.

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

7 years agoMerge pull request dotnet/coreclr#9233 from adiaaida/disableDeleteNextCardTable
Michelle McDaniel [Wed, 1 Feb 2017 02:33:34 +0000 (18:33 -0800)]
Merge pull request dotnet/coreclr#9233 from adiaaida/disableDeleteNextCardTable

Disable delete_next_card_table

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

7 years ago[x86/Linux] Get Frame Pointer from CallerSp (dotnet/coreclr#9235)
Jonghyun Park [Wed, 1 Feb 2017 01:46:32 +0000 (10:46 +0900)]
[x86/Linux] Get Frame Pointer from CallerSp (dotnet/coreclr#9235)

GetGSCookieAddress uses pEbp to get the current frame pointer, but pEbp
is not properly initialized as discussed in dotnet/coreclr#8980.

This commit revises GetGSCookieAddress to use CallerSp (as in other
architectures) to get Frame Pointer in order to fix dotnet/coreclr#8980.

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

7 years ago[x86/Linux] Update pCurrentContextPointers properly in EnsureCallerContextIsValid...
Jonghyun Park [Wed, 1 Feb 2017 01:36:36 +0000 (10:36 +0900)]
[x86/Linux] Update pCurrentContextPointers properly in EnsureCallerContextIsValid (dotnet/coreclr#9232)

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

7 years agoFixes to make the lldb plugin work on ARM64 (dotnet/coreclr#9216)
Frederik Carlier [Wed, 1 Feb 2017 01:09:57 +0000 (02:09 +0100)]
Fixes to make the lldb plugin work on ARM64 (dotnet/coreclr#9216)

* Fixes to make the lldb plugin work on ARM64

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

7 years agoMerge pull request dotnet/coreclr#9236 from wtgodbe/FixDeleteFiles
William Godbe [Wed, 1 Feb 2017 00:13:28 +0000 (16:13 -0800)]
Merge pull request dotnet/coreclr#9236 from wtgodbe/FixDeleteFiles

Delete requires_signing files before test archival

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

7 years agoDelete requires_signing files before test archival
wtgodbe [Wed, 1 Feb 2017 00:03:17 +0000 (16:03 -0800)]
Delete requires_signing files before test archival

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

7 years agoMerge pull request dotnet/coreclr#9202 from BruceForstall/FixRetBufMarking
Bruce Forstall [Tue, 31 Jan 2017 23:55:42 +0000 (15:55 -0800)]
Merge pull request dotnet/coreclr#9202 from BruceForstall/FixRetBufMarking

Mark RetBuf as SIMD variable

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

7 years agoDisable delete_next_card_table
Michelle McDaniel [Tue, 31 Jan 2017 23:54:54 +0000 (15:54 -0800)]
Disable delete_next_card_table

Since 163983e was checked in, various tests have been failing because
delete_next_card_table is meant to allocate memory until it OOMs. Disable
this test to get the lab in better shape until we can deal with the GC bug
in dotnet/coreclr#9064, then move it to the long gc test leg.

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

7 years agoUse Explicit Field Reference in FillRegDisplay (for x86) (dotnet/coreclr#9212)
Jonghyun Park [Tue, 31 Jan 2017 23:16:57 +0000 (08:16 +0900)]
Use Explicit Field Reference in FillRegDisplay (for x86) (dotnet/coreclr#9212)

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

7 years agoMerge pull request dotnet/coreclr#9224 from stephentoub/spinlock_tryenter_perf
Stephen Toub [Tue, 31 Jan 2017 22:54:43 +0000 (17:54 -0500)]
Merge pull request dotnet/coreclr#9224 from stephentoub/spinlock_tryenter_perf

Make SpinLock.TryEnter(ref bool) fail faster

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

7 years agoMark RetBuf as SIMD variable
Bruce Forstall [Mon, 30 Jan 2017 23:34:28 +0000 (15:34 -0800)]
Mark RetBuf as SIMD variable

I see changes where storeIndir is used now instead of
a BLK copy, which is an IR shape improvement.

This improves codegen for SIMD8, degrades it for SIMD12 (due
to encoding size differences with SSE instructions, though
the IR looks better), and is neutral for SIMD16, in the
VectorReturn test.

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

7 years agoMerge pull request dotnet/coreclr#9217 from wtgodbe/syncNativeBins
William Godbe [Tue, 31 Jan 2017 21:33:34 +0000 (13:33 -0800)]
Merge pull request dotnet/coreclr#9217 from wtgodbe/syncNativeBins

Download native binaries into a folder named 'RID'

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

7 years agoMake SpinLock.TryEnter(ref bool) fail faster
Stephen Toub [Tue, 31 Jan 2017 19:50:44 +0000 (14:50 -0500)]
Make SpinLock.TryEnter(ref bool) fail faster

One uses SpinLock.TryEnter(ref bool) when they want to do a quick test to either acquire the lock or know it's held by someone else.  We can make the latter path much faster so that it fails faster.

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

7 years agoMerge pull request dotnet/coreclr#9222 from wtgodbe/fileNameTooLong
William Godbe [Tue, 31 Jan 2017 21:12:35 +0000 (13:12 -0800)]
Merge pull request dotnet/coreclr#9222 from wtgodbe/fileNameTooLong

Remove all '.requires_signing' files before zipping tests

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

7 years agoRemove all '.requires_signing' files before zipping tests
wtgodbe [Tue, 31 Jan 2017 20:09:36 +0000 (12:09 -0800)]
Remove all '.requires_signing' files before zipping tests

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

7 years agoDownload native binaries into a folder named 'RID'
wtgodbe [Tue, 31 Jan 2017 18:56:32 +0000 (10:56 -0800)]
Download native binaries into a folder named 'RID'

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

7 years agoMerge pull request dotnet/coreclr#9207 from adityamandaleeka/ci_dump_improvements
Aditya Mandaleeka [Tue, 31 Jan 2017 18:26:49 +0000 (10:26 -0800)]
Merge pull request dotnet/coreclr#9207 from adityamandaleeka/ci_dump_improvements

Switch to a newer version of the dump management service we use

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

7 years agoMerge pull request dotnet/coreclr#9206 from dotnet-bot/master-UpdateDependencies
Gaurav Khanna [Tue, 31 Jan 2017 16:55:02 +0000 (08:55 -0800)]
Merge pull request dotnet/coreclr#9206 from dotnet-bot/master-UpdateDependencies

Update CoreFx to beta-24931-02 (master)

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

7 years agoMerge pull request dotnet/coreclr#9127 from BruceForstall/FixSimdFieldMorphing
Bruce Forstall [Tue, 31 Jan 2017 16:51:09 +0000 (08:51 -0800)]
Merge pull request dotnet/coreclr#9127 from BruceForstall/FixSimdFieldMorphing

Fix morphing of GT_FIELD of SIMD in IND context

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

7 years agoUpdate CoreFx to beta-24931-02
dotnet-bot [Tue, 31 Jan 2017 14:58:57 +0000 (14:58 +0000)]
Update CoreFx to beta-24931-02

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

7 years agoUse -O1 optimization for arm and armel
Hyung-Kyu Choi [Tue, 31 Jan 2017 04:36:36 +0000 (13:36 +0900)]
Use -O1 optimization for arm and armel

Because there are bugs for -O3 optimization in clang (<=3.8) for arm,
let's use -O1 instead of -O3 for a while.

Related github issue: https://github.com/dotnet/core-setup/issues/790

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

7 years agoEnable EECodeManager::GetGSCookieAddr when CROSSGEN_COMPILE is not defined (dotnet...
Jonghyun Park [Tue, 31 Jan 2017 09:43:27 +0000 (18:43 +0900)]
Enable EECodeManager::GetGSCookieAddr when CROSSGEN_COMPILE is not defined (dotnet/coreclr#9209)

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

7 years agoFix morphing of GT_FIELD of SIMD in IND context
Bruce Forstall [Tue, 24 Jan 2017 01:40:57 +0000 (17:40 -0800)]
Fix morphing of GT_FIELD of SIMD in IND context

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

7 years agoMerge pull request dotnet/coreclr#9183 from BruceForstall/FixBlockOpMorphing
Bruce Forstall [Tue, 31 Jan 2017 07:19:28 +0000 (23:19 -0800)]
Merge pull request dotnet/coreclr#9183 from BruceForstall/FixBlockOpMorphing

Fix morphing of block op assignments

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

7 years agoSwitch to a newer version of the dump management service we use.
Aditya Mandaleeka [Thu, 26 Jan 2017 23:25:10 +0000 (15:25 -0800)]
Switch to a newer version of the dump management service we use.

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

7 years agoMerge pull request dotnet/coreclr#9199 from BruceForstall/FixBadIfCondition
Bruce Forstall [Mon, 30 Jan 2017 23:46:39 +0000 (15:46 -0800)]
Merge pull request dotnet/coreclr#9199 from BruceForstall/FixBadIfCondition

Fix misspelling of FEATURE_MULTIREG_ARGS

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

7 years agoSupport cross-building CoreCLR for arm64 Android (dotnet/coreclr#9173)
Frederik Carlier [Mon, 30 Jan 2017 23:21:49 +0000 (00:21 +0100)]
Support cross-building CoreCLR for arm64 Android (dotnet/coreclr#9173)

* Support cross-building CoreCLR for arm64 Android

* Link gcc_s before libunwind

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

7 years agoFix Thread constructor with stack size argument (dotnet/coreclr#9186)
Koundinya Veluri [Mon, 30 Jan 2017 22:47:29 +0000 (14:47 -0800)]
Fix Thread constructor with stack size argument (dotnet/coreclr#9186)

Fix Thread constructor with stack size argument

Functional fix for dotnet/coreclr#9158 and dotnet/coreclr#9167

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

7 years agoMerge pull request dotnet/coreclr#9200 from wtgodbe/FixPublish
William Godbe [Mon, 30 Jan 2017 22:30:43 +0000 (14:30 -0800)]
Merge pull request dotnet/coreclr#9200 from wtgodbe/FixPublish

Change '.' to '-' in publishing test native binaries

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

7 years agoChange '.' to '-' in publishing test native binaries
wtgodbe [Mon, 30 Jan 2017 21:24:16 +0000 (13:24 -0800)]
Change '.' to '-' in publishing test native binaries

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

7 years agoFix misspelling of FEATURE_MULTIREG_ARGS
Bruce Forstall [Mon, 30 Jan 2017 20:26:25 +0000 (12:26 -0800)]
Fix misspelling of FEATURE_MULTIREG_ARGS

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

7 years agoMerge pull request dotnet/coreclr#9188 from justinvp/fixed_addressof
Dan Moseley [Mon, 30 Jan 2017 19:47:31 +0000 (12:47 -0700)]
Merge pull request dotnet/coreclr#9188 from justinvp/fixed_addressof

Avoid unnecessary branches when fixing non-null/empty arrays

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

7 years agoMerge pull request dotnet/coreclr#9197 from dotnet-bot/master-UpdateDependencies
Dan Moseley [Mon, 30 Jan 2017 19:47:04 +0000 (12:47 -0700)]
Merge pull request dotnet/coreclr#9197 from dotnet-bot/master-UpdateDependencies

Update CoreClr to beta-24930-03 (master)

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