Jonghyun Park [Mon, 6 Feb 2017 02:15:23 +0000 (11:15 +0900)]
[x86/Linux] Add Assertion on pvControlPc (dotnet/coreclr#9356)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a702f3f0a4a178ec1f1597c7cb47a35c0940d57b
dotnet bot [Sun, 5 Feb 2017 20:05:59 +0000 (12:05 -0800)]
Update CoreClr, CoreFx to beta-25005-03, beta-25004-01, respectively (dotnet/coreclr#9350)
Commit migrated from https://github.com/dotnet/coreclr/commit/
df659fc58c602eb079d3620e9e9925d3c78318f4
Frederik Carlier [Sun, 5 Feb 2017 19:54:37 +0000 (20:54 +0100)]
Port dotnet/coreclr@
121d095ed0b0076fb1c7ff59e6446fd19d506b32 from Windows to Linux (dotnet/coreclr#9346)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b71f447ce5c5c5423654f38df1bdcc6bf9970787
Frederik Carlier [Sun, 5 Feb 2017 19:50:28 +0000 (20:50 +0100)]
Port dotnet/coreclr#5821 to Linux (dotnet/coreclr#9347)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e01f1e164e8704bdbcbb26442961d94db11d8152
Frederik Carlier [Sun, 5 Feb 2017 19:49:49 +0000 (20:49 +0100)]
Port dotnet/coreclr#5339 to Linux (dotnet/coreclr#9348)
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5fe383d22fa36b1f30ef3bd93bca192ad096225
Stephen Toub [Sun, 5 Feb 2017 17:18:09 +0000 (12:18 -0500)]
Merge pull request dotnet/coreclr#9342 from stephentoub/tasks_inlining
Remove NoInlining/StackCrawlMarks from Tasks
Commit migrated from https://github.com/dotnet/coreclr/commit/
a8c08f3eff7a6e9d9391816006ad2121c0f5b9b2
Stephen Toub [Sun, 5 Feb 2017 14:27:53 +0000 (09:27 -0500)]
Address PR feedback and other cleanup
Addressed PR comment about removing ExecutionContext.Capture(ref StackCrawlMark, ...), which led me to remove NoInlining/StackCrawlMarks from some other places in Timer, Thread, ThreadPool, and Overlapped.
In doing so, I found several other unnecessary members on ExecutionContext that could be removed with minor tweaks elsewhere in the source, e.g.
- Dispose is a nop, so we can remove explicit try/finally's to clean it up
- ExecutionContext.Run(..., bool) just ignores the bool arg, so it can be removed and all call sites redirected (but I've left it in EC, as it appears it's used via internals visible from a library in corefx)
- FastCapture() just calls Capture, so the call sites can be changed (but I've left it in EC for a similar reason)
- PreAllocatedDefault can be removed in favor of Default; etc.
- ExecutionContext.Capture itself checks whether flow is suppressed; doing a check before it adds a TLS lookup and in doing so optimizes for an uncommon case in exchange for making the common case more expensive. I've removed those checks.
And in the process, I also noticed that several lazily initialized delegates that no longer need to be, and cleaned those up. These were lazy due to needing to be for security checks that aren't relevant in coreclr.
Commit migrated from https://github.com/dotnet/coreclr/commit/
b72fc3aa651ffdeb9136f785fc7631663a92685f
Stephen Toub [Sat, 4 Feb 2017 19:10:34 +0000 (14:10 -0500)]
Remove NoInlining/StackCrawlMarks from Tasks
These crawl marks in Tasks aren't relevant in coreclr (they're passed down to ExecutionContext, which in coreclr just ignores them), yet they required NoInlining, which does impact coreclr. Removing them all from tasks.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f338eaae1d696e414632ba8f630457f7a0d562ab
Stephen Toub [Sun, 5 Feb 2017 14:46:32 +0000 (09:46 -0500)]
Merge pull request dotnet/coreclr#9343 from stephentoub/tasks_selfreplicating
Remove internal self-replicating support from Tasks
Commit migrated from https://github.com/dotnet/coreclr/commit/
d676fc37699e4e4cbf629da87f8600eacaae7f2b
Stephen Toub [Sat, 4 Feb 2017 21:35:14 +0000 (16:35 -0500)]
Remove internal self-replicating support from Tasks
In the initial TPL prototype, Tasks had a feature that allowed them to "replicate", meaning to schedule a copy of themselves. Prior to shipping the initial version, this feature was made internal, as it was deemed unnecessary, but by then the Parallel loops constructs had already been built on top of them. Now that Parallel no longer depends on this feature (and isn't in CoreLib), we can entirely rip it out.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d433a7b4443c7a6eee389c6cb57a21c7e307630a
Jan Kotas [Sun, 5 Feb 2017 11:56:42 +0000 (03:56 -0800)]
Rename internal CoreLib Console to LowLevelConsole (dotnet/coreclr#9341)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5a885fa087396974b728d8af6320da8a271dbbbc
Jan Kotas [Sun, 5 Feb 2017 08:55:10 +0000 (00:55 -0800)]
Merge pull request dotnet/coreclr#9338 from jkotas/against-packages
Add mscorlib.dll back to Microsoft.TargetingPack.Private.CoreCLR
Commit migrated from https://github.com/dotnet/coreclr/commit/
c4a89fe2d82e00f683f486afe5347c9e5ef1f94b
Ben Adams [Sun, 5 Feb 2017 08:08:56 +0000 (08:08 +0000)]
Use StringBuilderCache for Enum.InternalFlagsFormat (dotnet/coreclr#9340)
Commit migrated from https://github.com/dotnet/coreclr/commit/
bb8c87648f47940f7924e249c34b620bc19a9165
Dan Moseley [Sun, 5 Feb 2017 06:36:42 +0000 (22:36 -0800)]
Remove stripped code (dotnet/coreclr#9269)
Delete essentially all the code that the BCL rewriter is removing.
Added back some code it shouldn't have been removing, eg., serialization code, debugger visualizers, and some changing of 'protected' to 'protected internal'
Commit migrated from https://github.com/dotnet/coreclr/commit/
ee5862c6a257e60e263537d975ab6c513179d47f
Bruce Forstall [Sun, 5 Feb 2017 01:08:45 +0000 (17:08 -0800)]
Merge pull request dotnet/coreclr#9240 from BruceForstall/FixSimdFieldMorphingDeadCode
Remove SIMD dead code
Commit migrated from https://github.com/dotnet/coreclr/commit/
43dfb0b289978f408dcb1aa008395fe9b90db062
Jan Kotas [Sat, 4 Feb 2017 15:38:41 +0000 (07:38 -0800)]
Add mscorlib.dll back to Microsoft.TargetingPack.Private.CoreCLR
Removing it broke BuildFromPackages flavor of test build
Commit migrated from https://github.com/dotnet/coreclr/commit/
9856edcb9cd2dc762e770d8de93a44277715fe13
Jan Kotas [Sat, 4 Feb 2017 15:38:05 +0000 (07:38 -0800)]
Revert "Update CoreClr, CoreFx to beta-25004-01, beta-25004-01, respectively (dotnet/coreclr#9330)"
This reverts commit dotnet/coreclr@
e8dff5550c022d2854914dc534f9ec3d7fe623ac.
Commit migrated from https://github.com/dotnet/coreclr/commit/
ac2da9ca851eb9a494ef617d02b3bafbf0c7da3b
Gaurav Khanna [Sat, 4 Feb 2017 06:19:25 +0000 (22:19 -0800)]
Merge pull request dotnet/coreclr#9324 from gkhanna79/Fix9030
Use fallback load context as binding context for dynamic parent assembly
Commit migrated from https://github.com/dotnet/coreclr/commit/
7916a9a4e45a8d880d3b2af52ed9fe069663e7fc
Faizur Rahman [Sat, 4 Feb 2017 05:55:57 +0000 (21:55 -0800)]
Remove duplicate attributes from CoreLib (dotnet/coreclr#9327)
Commit migrated from https://github.com/dotnet/coreclr/commit/
622aa57cb2a702b69fdb9c7537a23c35f1a1913e
dotnet bot [Sat, 4 Feb 2017 05:48:31 +0000 (21:48 -0800)]
Update CoreClr, CoreFx to beta-25004-01, beta-25004-01, respectively (dotnet/coreclr#9330)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e8dff5550c022d2854914dc534f9ec3d7fe623ac
Tarek Mahmoud Sayed [Sat, 4 Feb 2017 02:27:43 +0000 (18:27 -0800)]
Remove cross appdomains cultures checks (dotnet/coreclr#9328)
* Remove cross appdomains cultures checks
In the ful framework, CultureInfo and other globalization objects are marked as agile which means it can cross the appdomains. In coreclr we don't have multiple appdomains anymore so these checks are not really needed.
removing these checks will make coreclr consistent when running on Windows and other OS's
* Remove un-needed resource entry
Commit migrated from https://github.com/dotnet/coreclr/commit/
748d467b1cbc759c23d94de0b559d9a437623b38
Tarek Mahmoud Sayed [Sat, 4 Feb 2017 02:04:06 +0000 (18:04 -0800)]
Fix legacy Globalization tests to work on Linux (dotnet/coreclr#9322)
* Fix legacy Globalization tests to work on Linux
* Delete globalization tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
e2f7e206f8d4f6e21213baadd2fad33340f2005c
Gaurav Khanna [Fri, 3 Feb 2017 23:43:15 +0000 (15:43 -0800)]
Use fallback load context as binding context for dynamic parent assembly
Commit migrated from https://github.com/dotnet/coreclr/commit/
04c698ec434618ee2a0cef36be9b1829355dc64e
Jan Kotas [Fri, 3 Feb 2017 21:50:01 +0000 (13:50 -0800)]
Delete mscorlib from packages (dotnet/coreclr#9313)
Commit migrated from https://github.com/dotnet/coreclr/commit/
4fe623c9235e4df42be810d09ca7f282956e3cec
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Bruce Forstall [Wed, 1 Feb 2017 01:55:29 +0000 (17:55 -0800)]
Remove SIMD dead code
Fixes dotnet/coreclr#9089
Commit migrated from https://github.com/dotnet/coreclr/commit/
089dbccdc74f4eef2e4dc69a76800f0b8c692467
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
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
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
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
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
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
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