SaeHie Park [Mon, 9 Jan 2017 01:39:54 +0000 (10:39 +0900)]
[x86/Linux] Stack align 16 bytes for JIT code
Change JIT code to align stack in 16 byte used in modern compiler
Commit migrated from https://github.com/dotnet/coreclr/commit/
5df45286968775ffccaf01669eba7c8baa9923e1
Stephen Toub [Mon, 6 Feb 2017 21:32:43 +0000 (16:32 -0500)]
Merge pull request dotnet/coreclr#9372 from dotnet-bot/master-UpdateDependencies
Update CoreClr, CoreFx to beta-25006-03, beta-25006-01, respectively (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
65b9cb35226c5395be531554e207bb4e2096092f
William Godbe [Mon, 6 Feb 2017 20:30:06 +0000 (12:30 -0800)]
Merge pull request dotnet/coreclr#9325 from wtgodbe/bashScripts
Add #!/bin/bash to beginning of shell test scripts
Commit migrated from https://github.com/dotnet/coreclr/commit/
83585ce21902048f6ad4b7b48cc9ba53cc72e752
Drew Scoggins [Mon, 6 Feb 2017 19:29:03 +0000 (11:29 -0800)]
Merge pull request dotnet/coreclr#9319 from DrewScoggins/X86PerfRuns
Add x86 perf runs to CoreCLR
Commit migrated from https://github.com/dotnet/coreclr/commit/
9f7adfcc30d3b9d3ecdb9927504cc2f028a3a65b
Bruce Forstall [Mon, 6 Feb 2017 19:26:34 +0000 (11:26 -0800)]
Merge pull request dotnet/coreclr#8644 from BruceForstall/SimdLongDecomp
Enable SIMD for RyuJIT/x86
Commit migrated from https://github.com/dotnet/coreclr/commit/
d05009a17e194d50726454f348e93890273e62f5
Jan Kotas [Mon, 6 Feb 2017 18:56:03 +0000 (10:56 -0800)]
Merge pull request dotnet/coreclr#9371 from jkotas/attributes
Delete COM and security transparency attributes
Commit migrated from https://github.com/dotnet/coreclr/commit/
80c30e7dfbe00ab30bb86ba2c0f883130766643e
William Godbe [Mon, 6 Feb 2017 18:40:04 +0000 (10:40 -0800)]
Change /bin/bash to usr/bin/env bash
Commit migrated from https://github.com/dotnet/coreclr/commit/
eff04fba8822d89892ad1d18e20f665e06feca8f
Gaurav Khanna [Mon, 6 Feb 2017 18:29:41 +0000 (10:29 -0800)]
Merge pull request dotnet/coreclr#8827 from hseok-oh/nuget_armel
Generate nuget package for armel (Tizen, Debian)
Commit migrated from https://github.com/dotnet/coreclr/commit/
a60c0648ed79f0678240eb7be4496b687fb3dbbe
dotnet-bot [Mon, 6 Feb 2017 17:51:33 +0000 (17:51 +0000)]
Update CoreClr, CoreFx to beta-25006-03, beta-25006-01, respectively
Commit migrated from https://github.com/dotnet/coreclr/commit/
89ec31faf6c4e3cca133a4fa8d897851b5a044b1
Jonghyun Park [Mon, 6 Feb 2017 16:25:37 +0000 (01:25 +0900)]
Clean up FillRegDisplay (dotnet/coreclr#9360)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c9978fc29ee207d4099faad2716d996bca0a7bbd
Jan Kotas [Mon, 6 Feb 2017 15:28:18 +0000 (07:28 -0800)]
Delete remaining security transparency annotations
Commit migrated from https://github.com/dotnet/coreclr/commit/
215fe870868f88f8566d53262c9924d58ea48f21
Jan Kotas [Mon, 6 Feb 2017 15:32:51 +0000 (07:32 -0800)]
Delete ClassInterface attributes
Commit migrated from https://github.com/dotnet/coreclr/commit/
345005de9521c34c0c023539d9afef48acead426
Jan Kotas [Mon, 6 Feb 2017 15:20:17 +0000 (07:20 -0800)]
Delete ComVisible attributes
Commit migrated from https://github.com/dotnet/coreclr/commit/
f705205bdeef23187011a65376a3c7dcb448f359
Frederik Carlier [Mon, 6 Feb 2017 15:25:36 +0000 (16:25 +0100)]
Android - Fix duplicate definitions of INT_MIN and PAGE_SIZE in unit tests (dotnet/coreclr#9172)
* Don't refdefine PAGE_SIZE on Android
* Don't re-declare INT_MIN on Android
* Fixup
Commit migrated from https://github.com/dotnet/coreclr/commit/
ec23bace223bf449a08bde2f1ec3e2c0135ce408
Stephen Toub [Mon, 6 Feb 2017 14:58:34 +0000 (09:58 -0500)]
Merge pull request dotnet/coreclr#9368 from stephentoub/cq_fixes
Two fixes to ConcurrentQueue
Commit migrated from https://github.com/dotnet/coreclr/commit/
f07a4ba427e9a83dc04c03eceb97bf33f0335461
Jan Kotas [Mon, 6 Feb 2017 14:53:42 +0000 (06:53 -0800)]
CAS Security cleanup (dotnet/coreclr#9355)
Commit migrated from https://github.com/dotnet/coreclr/commit/
5c47caa806e6907df81e7a96864984df4d0f38cd
Stephen Toub [Mon, 6 Feb 2017 12:35:11 +0000 (07:35 -0500)]
Merge pull request dotnet/coreclr#9367 from dotnet-bot/master-UpdateDependencies
Update CoreClr to beta-25006-02 (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
0b064eef415468f50e7360256e42737d247eb677
Stephen Toub [Mon, 6 Feb 2017 12:34:06 +0000 (07:34 -0500)]
Two fixes to ConcurrentQueue
- Changed comparisons to use subtraction to avoid overflow issues on sequence numbers.
- Added an exception message where a TODO was left in the code
Commit migrated from https://github.com/dotnet/coreclr/commit/
c51054c54fc0cc5e36e710a76ad41aba963c67fc
dotnet-bot [Mon, 6 Feb 2017 10:09:15 +0000 (10:09 +0000)]
Update CoreClr to beta-25006-02
Commit migrated from https://github.com/dotnet/coreclr/commit/
cb0546dc5ef7eb46425dbf55e9895d6ba2c3fd81
Bruce Forstall [Thu, 15 Dec 2016 02:03:20 +0000 (18:03 -0800)]
Enable SIMD for RyuJIT/x86
This change implements support for Vector<long>, handling
SIMDIntrinsicInit, which takes a LONG, and decomposition of
SIMDIntrinsicGetItem, which produces a LONG.
It also enables SIMD, including AVX, by default for RyuJIT/x86.
Commit migrated from https://github.com/dotnet/coreclr/commit/
cacb79692c4db6c4dded4d8f6a55e7fd8fa11d3a
Stephen Toub [Mon, 6 Feb 2017 04:42:49 +0000 (23:42 -0500)]
Delete dead code from ExecutionContext (dotnet/coreclr#9359)
Commit migrated from https://github.com/dotnet/coreclr/commit/
09a834c056db4bdfd7bcf202818e963e2506e58d
Gaurav Khanna [Mon, 6 Feb 2017 04:14:43 +0000 (20:14 -0800)]
Merge pull request dotnet/coreclr#9358 from dotnet-bot/master-UpdateDependencies
Update CoreClr to beta-25006-01 (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
66e381b37c6446607cd539443e3873066940fae2
Hyeongseok Oh [Mon, 6 Feb 2017 03:22:12 +0000 (12:22 +0900)]
Merge branch 'master' into nuget_armel
Commit migrated from https://github.com/dotnet/coreclr/commit/
f2efef85bd811169ccc2e1896fb9d689b1fb459b
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 [Mon, 6 Feb 2017 02:00:17 +0000 (02:00 +0000)]
Update CoreClr to beta-25006-01
Commit migrated from https://github.com/dotnet/coreclr/commit/
e5d6ecbfe30c1824134a290ed5f2f8fb1dc43e7a
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
Drew Scoggins [Sat, 4 Feb 2017 00:32:59 +0000 (16:32 -0800)]
Fix typo
Commit migrated from https://github.com/dotnet/coreclr/commit/
beb30ddc152e34aa453a892c36782254f1178668
wtgodbe [Fri, 3 Feb 2017 23:59:21 +0000 (15:59 -0800)]
Add #!\bin\bash to beginning of shell test scripts
Commit migrated from https://github.com/dotnet/coreclr/commit/
c0d55096cd86115c565b1c6379ed3a508be4e2ef
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
Drew Scoggins [Fri, 3 Feb 2017 23:08:19 +0000 (15:08 -0800)]
Add x86 perf runs to CoreCLR
This is a change to add x86 perf runs to the CoreCLR repo. This also
changes the command to launch a perf run from a PR to include the
architecture.
Commit migrated from https://github.com/dotnet/coreclr/commit/
36415889747eb4f59a657484530de92da8b86851
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