Levi Broderick [Tue, 30 Apr 2019 04:37:58 +0000 (21:37 -0700)]
Add more span-based Vector<T> ctors and CopyTo methods (dotnet/coreclr#23333)
Commit migrated from https://github.com/dotnet/coreclr/commit/
003bf857ea8a89e9eedd913f8b095f8fa01fd0b4
Egor Bogatov [Tue, 30 Apr 2019 02:21:04 +0000 (05:21 +0300)]
Move DefaultBinder.CanConvert.cs to shared (dotnet/coreclr#23931)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b169f91d204e2b9e6e760d1b46579556bd20f492
Michal Strehovský [Tue, 30 Apr 2019 02:16:10 +0000 (04:16 +0200)]
Move NativeLibrary to the shared partition (dotnet/coreclr#24143)
I'm taking the LibraryNameVariation helper from System.Runtime.Loader for the ride as well because it's a general purpose probing logic that is useful in a managed implementation of NativeLibrary.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8f54d67f5f5a451ce43f1a70a1fc5fd0e4e469f9
dotnet-maestro-bot [Mon, 29 Apr 2019 21:37:20 +0000 (14:37 -0700)]
Update CoreClr to preview6-27629-72
Commit migrated from https://github.com/dotnet/coreclr/commit/
11ec7592f44c2a7ad9dc19f64196268f9943772a
Mukul Sabharwal [Tue, 30 Apr 2019 00:42:13 +0000 (17:42 -0700)]
Fix GetObjectReferences API when caller doesn't zero the param (dotnet/coreclr#24299)
Commit migrated from https://github.com/dotnet/coreclr/commit/
00a853313ee2943ce2e97e4e9e7a114e0e7bc689
dschinde [Tue, 30 Apr 2019 00:38:49 +0000 (19:38 -0500)]
Improve pref of `Array.IndexOf()` for certain `T`. (dotnet/coreclr#24293)
Applies changes to `Array.IndexOf()` and `Array.LastIndexOf()` similar
to the changes made in dotnet/coreclr#20855, so that types other than `byte` and
`char` can use use the fast vectorized path.
Also allows 32-bit and 64-bit types for which
`RuntimeHelpers.IsBitwiseEquatable<T>()` returns `true` to use the
faster implementation of `IndexOf` and `LastIndexOf` from
`MemoryExtensions`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
2551753281ce89be4321c3d23111db6c6b7e77c0
Jan Kotas [Tue, 30 Apr 2019 00:38:04 +0000 (17:38 -0700)]
Workaround memset alignment sensitivity (dotnet/coreclr#24302)
* Workaround memset alignment sensitivity
memset is up to 2x slower on misaligned block on some types of hardware. The problem is uneven performance of "rep stosb"
used to implement the memset in some cases. The exact matrix on when it is slower and by how much is very complex.
This change workarounds the issue by aligning the memory block before it is passed to memset and filling in the potential misaligned
part manually. This workaround will regress performance by a few percent (<10%) in some cases, but we will gain up to 2x improvement
in other cases.
Fixes dotnet/coreclr#24300
Commit migrated from https://github.com/dotnet/coreclr/commit/
3661584ffcdeac6f35fa9e2485796a482ebbf7b3
Tanner Gooding [Mon, 29 Apr 2019 21:39:19 +0000 (14:39 -0700)]
Resolves an assert around Sse41.ConvertToVector128Int* and Avx2.ConvertToVector256Int* (dotnet/coreclr#24289)
* Adding tests for the overloads of Sse41.ConvertToVector128Int* and Avx2.ConvertToVector256Int* that take a pointer
* Fixing the handling of Sse41.ConvertToVector128* and Avx2.ConvertToVector256*
Commit migrated from https://github.com/dotnet/coreclr/commit/
54af92b34fc18ee9d8adada35d1f527c67224be7
Brian Sullivan [Mon, 29 Apr 2019 21:15:31 +0000 (14:15 -0700)]
Merge pull request dotnet/coreclr#24283 from briansull/ibc-linux-new
Updated fixes for IBC profile data on Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3f602bb27a5798115a016b282ae6ab87c0decdc
Anirudh Agnihotry [Mon, 29 Apr 2019 20:56:48 +0000 (13:56 -0700)]
Improve Precision to 10 microseconds in timespan (dotnet/coreclr#24279)
* Increasing precision properly and leaving the rounding of to casting operator
* disabling corefx tests in coreclr and addressing feedback
* correcting test project name
* Fix json
Commit migrated from https://github.com/dotnet/coreclr/commit/
6bca031ae0e612c5d9dbe350e435cce9d9d1919a
Steve MacLean [Mon, 29 Apr 2019 19:37:28 +0000 (15:37 -0400)]
Fix Satellite Assembly loading (dotnet/coreclr#24191)
* Fix Satellite Assembly loading
When loading satellite assemblies, we should probe next to the parent
assembly and load into the same AssemblyLoadContext as the parent
assembly.
Disable fallback probing for satellite assemblies.
Add AssemblyLoadContext.Resolving handler to probe for satellite
assemblies next to parent
Fixes dotnet/coreclr#20979
* Call ResolveSatelliteAssembly from native
Only call ResolveSatelliteAssembly from native when
resolving a satellite assembly
* PR Feedback
Minimize string creation
Remove unnecessary if null checks
Eliminate corner cases by only allowing one case insensitive matching directory.
* ResolveSatelliteAssembly should ...
ResolveSatelliteAssembly should always be called on the ALC which loaded parentAssembly
Simplify code.
Add Debug.Assert
* Remove case insensitive culture search
* PR Feedback
* Fix parentAssembly logic
* Fixes from initial testing
* Add probe for lower case culture name
* PR feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
a65e2b9f1fe36d9b4dd0c850ec71984919547e18
Eugene Rozenfeld [Mon, 29 Apr 2019 19:09:07 +0000 (12:09 -0700)]
Merge pull request dotnet/coreclr#24282 from erozenfeld/Fix24253
Fix for a jit liveness bug.
Commit migrated from https://github.com/dotnet/coreclr/commit/
78f53be46063ccaf31e23c8d8160793756490ed4
Brian Sullivan [Mon, 29 Apr 2019 16:43:03 +0000 (09:43 -0700)]
Removed method ReleaseManagedCommandLine()
jkotas - We are intentionally not doing any cleanup that is just releasing memory.
We depend on the OS to take care of releasing the memory.
Commit migrated from https://github.com/dotnet/coreclr/commit/
663ce255b2d236d1b8075f635a9d5b0d20b45c7a
Jeremy Koritzinsky [Mon, 29 Apr 2019 16:27:10 +0000 (09:27 -0700)]
Restore IBCMerge using an authenticated service connection (dotnet/coreclr#24284)
* Add separate build steps to do the IBCMerge restore.
* Attempt 1 to get config picked up.
* Attempt 2 getting ibcmerge restore working.
* Fix invalid MSBuild syntax.
* Fix getting IBC package version.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9cf8b4b5c7d43c4352823ad57493dc91640a4fe2
Ludovic Henry [Mon, 29 Apr 2019 14:45:43 +0000 (07:45 -0700)]
Fix running JitBench on Linux (dotnet/coreclr#24248)
* Fix running JitBench on Linux
* Bump to head of aspnet/JitBench:rel/2.0.0
Commit migrated from https://github.com/dotnet/coreclr/commit/
64b5ddd69e979c84e54c1fe278c94feaee3fbabf
Levi Broderick [Sat, 27 Apr 2019 21:21:08 +0000 (14:21 -0700)]
Add missing check for UTF-16 low surrogate char at start of buffer (dotnet/coreclr#24286)
Commit migrated from https://github.com/dotnet/coreclr/commit/
b7fc495f951ced0c6fa1207353bf5c2aa2d058df
Sergey Andreenko [Sat, 27 Apr 2019 20:01:09 +0000 (13:01 -0700)]
Merge pull request dotnet/coreclr#24261 from sandreenko/fixRegressionCoreFXx86
Fix optAssertionProp_Update.
Commit migrated from https://github.com/dotnet/coreclr/commit/
46a064d2ff514fa9c68226dbc8a64fb539c9a5fd
Jan Kotas [Sat, 27 Apr 2019 03:52:48 +0000 (20:52 -0700)]
Fix CoreLib build breaks
Commit migrated from https://github.com/dotnet/coreclr/commit/
bf657dfda9b61fdde81f871305b73730f1128ea7
Eric StJohn [Fri, 26 Apr 2019 05:05:19 +0000 (22:05 -0700)]
Add System.Resources.Extensions (dotnet/corefxdotnet/coreclr#36906)
* Add System.Resources.Binary.Reader|Writer
* Fix ResourceWriter tests
* Test fixes and PR feedback
* More test fixes
* Add packages for System.Resources.Binary.*
* Suppress duplicate types in System.Resources.Binary.*
* Test refactoring and adding RuntimeResourceSet
It turns out me must have our own ResourceSet since the CoreLib resource set doesn't
expose a constructor that takes an IResourceReader.
I've shared the code since it does a bit of non-trivial caching.
* Don't use auto-property initializers for platfrom sensitive test data
For some reason I thought these lazy-initialized the properties but they don't.
As a result we were hitting the platform sensitive code even when we never
called the getter. Switch to an expression instead.
* Only use Drawing converters on Windows
* Fix test failures
* Don't leak System.Private.CoreLib into resources
* Make sure RuntimeResourceSet doesn't call ResourceReader(IResourceReader)
* WIP
* Rename types in System.Resources.Extensions
Leave RuntimeResourceSet internal as it doesn't need to be public.
* Update packages
* Respond to API review feedback
Remove abstraction for ResourceReader/Writer: just reuse the source.
Remove non-essential members.
* Clean up
* Further cleanup
* Further cleanup
* Review feedback
* Ensure we have stable type names in Resources.Extensions
We don't want to use the runtime type identity when doing type checks or writing
types as this may change. Instead, check-in hard-coded strings that match the
type identity.
Add a test case to ensure the resources we generate match what we
test the reader against in the resource manager case (also to track any
change to the binary format).
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
ae6c7a9a7ddfa43f30450fa4085d952a1aaf3723
Russ Keldorph [Fri, 26 Apr 2019 13:36:31 +0000 (06:36 -0700)]
Switch to non-Int Azure pool providers
Commit migrated from https://github.com/dotnet/coreclr/commit/
a011bafd661919f67eff1532563ce95f2f57ce19
John Doe [Sat, 27 Apr 2019 02:45:22 +0000 (19:45 -0700)]
Typos (dotnet/coreclr#24280)
* thier -> their
* exeption -> exception
* Estbalisher -> Establisher
* neeed -> need
* neeed -> need
* neeeded -> needed
* neeeded -> needed
* facilitiate -> facilitate
* extremly -> extremely
* extry -> extra
Commit migrated from https://github.com/dotnet/coreclr/commit/
2832f54a6602cd4c0dff4fa65163345ab3ad953c
Andy Hanson [Sat, 27 Apr 2019 02:33:26 +0000 (19:33 -0700)]
Improve LOH heap balancing (dotnet/coreclr#24081)
* Improve LOH heap balancing
Previously in `balance_heaps_loh`, we would default to `org_hp` being
`acontext->get_alloc_heap()`.
Since `alloc_large_object` is an instance method, that ultimately came
from the heap instance this was called on. In `GCHeap::Alloc` that came
from `acontext->get_alloc_heap()` (this is a different acontext). That
variable is set when we allocate a small object. So the heap we were
allocating large objects on was affected by the heap we were allocating
small objects on. This isn't necessary as small object heap and large
object heaps have separate areas. In scenarios with limited memory, we
can unnecessarily run out of memory by refusing to move away from that
hea. However, we do want to ensure that the large object heap accessed
is not on a different numa node than the small object heap.
I experimented with adding a `get_loh_alloc_heap()` to acontext similar
to the SOH alloc heap, but performance tests showed that it was usually
better to just start from the home heap. The chosen policy was:
* Start searching from the home heap -- this is the one corresponding to
our processor.
* Have a low (but non-zero) preference for that heap (dd_min_size(dd) /
2), as long as we stay within the same numa node.
* Have a higher cost of switching to a different numa node. However,
this is still much less than before; it was dd_min_size(dd) * 4, now
dd_min_size(dd) * 3 / 2.
This showed big performance improvements (over 30% less time) in a
scenario with lots of LOH allocation where there were fewer allocating
threads than GC heaps. The changes were more pronounced the more we
allocated large objects vs small objects. There was usually slight
improvement (1-2%) when there were 48 constantly allocating threads and
48 heaps. The one place we did see a slight regression was in an 800MB
container and 4 allocating threads on a 48 processor machine; however,
similar tests with less memory or more threads were prone to running out
of memory or running very slow on the master branch, so we've improved
stability. Previously the gc could get lucky by having the SOH choice
happen to be a good choice for LOH, but we shouldn't be relying on it as
it failed in some container scenarios.
One more change is in joined_generation_to_condemn: If there is a memory
limit and we are about to OOM, we should always do a compacting GC. This
helps avoid the OOM and feeds into the next change.
This PR also adds a *second* balance_heaps_loh function for when there
is a memory limit and we previously failed to allocate into the chosen
heap. `balance_heaps_loh` works based on allocation budgets, whereas
`balance_heaps_loh_hard_limit_retry` works on the actual space available
at the end of the segment. Thanks to the change to
joined_generation_to_condemn the heaps should be compact, so not looking
at free space here.
* Fix uninitialized variable
* In a container, use space available instead of budget
* Fix duplicate semicolon
Commit migrated from https://github.com/dotnet/coreclr/commit/
141926d90c54bb358cfe8d9eb641c88e94639a8c
Jan Vorlicek [Sat, 27 Apr 2019 00:38:37 +0000 (02:38 +0200)]
Merge pull request dotnet/coreclr#24270 from janvorli/fix-gc-numa-to-heap-map-creation
Fix creation of the NUMA node to heap number map
Commit migrated from https://github.com/dotnet/coreclr/commit/
4452efd309d40d4bc7fc1fa48bf1b6e615ee6755
Eugene Rozenfeld [Fri, 26 Apr 2019 23:16:05 +0000 (16:16 -0700)]
Clean up fgRemoveDeadStore.
Remove duplication and a couple of goto's from `fgRemoveDeadStore`.
This part was very confusing:
`
/* If this is GT_CATCH_ARG saved to a local var don't bother */
JITDUMP("removing stmt with no side effects\n");
if (asgNode->gtFlags & GTF_ORDER_SIDEEFF)
{
if (rhsNode->gtOper == GT_CATCH_ARG)
{
goto EXTRACT_SIDE_EFFECTS;
}
}
`
The `goto` was to the preceding `if` and was useless since the call
to `gtExtractSideEffList(rhsNode, &sideEffList);` couldn't possibly find
side effects because we already checked that
`rhsNode->gtFlags & GTF_SIDE_EFFECT == 0`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dc389a8a3378972b42200ce9644fb482ec477543
Brian Sullivan [Fri, 26 Apr 2019 23:59:03 +0000 (16:59 -0700)]
Added check for GetManagedCommandLine() returning a nullptr in ProfileDataAllocateScenarioInfo
Moved call to ReleaseManagedCommandLine() to EEShutDownHelper
Commit migrated from https://github.com/dotnet/coreclr/commit/
d360e7cb82d2b0bcec37fc9d06bb88fe7d87e2ae
Brian Sullivan [Fri, 26 Apr 2019 23:21:51 +0000 (16:21 -0700)]
Commits from dotnet/coreclr#24229 - Fixes for IBC profile data on Linux
Added public static function GetManagedCommandLine() and SaveManagedCommandLine()
Moved GetManagedCommandLine and SaveManagedCommandLine to ceeload to link
Disabled the setup for BBSweep on Linux as the PAL doesn’t support process named objects
Commit migrated from https://github.com/dotnet/coreclr/commit/
36e4846e9053cf966b7c07d28fdb47b983afbfca
Bruce Forstall [Fri, 26 Apr 2019 23:09:15 +0000 (16:09 -0700)]
Merge pull request dotnet/coreclr#24281 from BruceForstall/CleanCorefxRuns
Disable failing corefx tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
08bad50dc319c74f8f6efdd59565f3b2c3c39e12
Bruce Forstall [Fri, 26 Apr 2019 23:02:26 +0000 (16:02 -0700)]
Disable failing corefx tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
77c0e27c0e5d56aeb4e6c1e06f60477f61395011
Brian Sullivan [Fri, 26 Apr 2019 22:58:31 +0000 (15:58 -0700)]
Merge pull request dotnet/coreclr#24276 from briansull/revert-24229
Revert 24229
Commit migrated from https://github.com/dotnet/coreclr/commit/
72e450b5d4eb6cc8fd9e99e0202b538b795350e8
Sergey Andreenko [Fri, 26 Apr 2019 22:50:37 +0000 (15:50 -0700)]
Fix the case when we replace `stmt->gtStmtExpr`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
3e271954768ec502d1827c18d911d046f234c5a1
Eugene Rozenfeld [Fri, 26 Apr 2019 22:22:53 +0000 (15:22 -0700)]
Fix for a jit liveness bug.
`fgRemoveDeadStore` has special logic for removing dead assignments
whose rhs was of type `TYP_STRUCT`:
https://github.com/dotnet/coreclr/blob/dotnet/coreclr@
311b5e2fe413c6c74a2a3680ab54d8a978651472/src/jit/liveness.cpp#L2264-L2274
That logic was applied to "normal"
assignments (i.e., direct children of `GT_STMT`) but not to "internal"
assignments (e.g., children of `GT_COMMA`).
The test case has an internal assignment and, because this logic wasn't
applied, we ended up with a standalone `GT_IND` of type `TYP_STRUCT`
that the register allocator can't handle.
This change apples the missing logic to "internal" assignments.
Fixes dotnet/coreclr#24253.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e6ee8a2c075ac906f4d86d831cac124f2f22a504
Brian Sullivan [Fri, 26 Apr 2019 21:08:01 +0000 (14:08 -0700)]
Revert "Fix for IBC profile data on Linux - Build the full command line for FEATURE_PAL"
This reverts commit dotnet/coreclr@
08422af33fa2026953c2e720cecf000ed4345a32.
Commit migrated from https://github.com/dotnet/coreclr/commit/
1a30173f2fb4e6cf427dfbd962ab4f80a36583a3
Brian Sullivan [Fri, 26 Apr 2019 21:07:29 +0000 (14:07 -0700)]
Revert "Added method ReleaseManagedCommandLine to release memory"
This reverts commit dotnet/coreclr@
1f2435763926f6068fc88a36a2b8dc49c263f271.
Commit migrated from https://github.com/dotnet/coreclr/commit/
78bfc4fbd634f34870e4c11f280c36b7ed696c9f
Sergey Andreenko [Fri, 26 Apr 2019 20:53:26 +0000 (13:53 -0700)]
Use `ReplaceOperand`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
0bf52e4304b5e13aaa40ec248a16f06db8d892ae
José Rivero [Fri, 26 Apr 2019 00:37:59 +0000 (17:37 -0700)]
Undo a change where we ignore the specified EventPipe sessionType.
Commit migrated from https://github.com/dotnet/coreclr/commit/
c3e404425f9f03088f0e7106914190634baef619
Andrew Au [Thu, 25 Apr 2019 21:03:01 +0000 (14:03 -0700)]
Refactored the duplicated code into a template method pattern
Commit migrated from https://github.com/dotnet/coreclr/commit/
3a559ad43022df53c0f1426c828a6c21f79dd5dd
Gleb Balykov [Fri, 26 Apr 2019 14:04:38 +0000 (17:04 +0300)]
Add config value for jit host slab cache maximum size (dotnet/coreclr#24254)
Commit migrated from https://github.com/dotnet/coreclr/commit/
f3a932ad6ebcb1135562843a53476e373f7b5de3
Jan Vorlicek [Fri, 26 Apr 2019 09:53:41 +0000 (11:53 +0200)]
Fix creation of the NUMA node to heap number map
The current implementation assumes that the NUMA nodes of CPUs
used for GC threads form a zero based continous range. However that
doesn't have to be true for cases when user selects only a subset of the
available CPUs for the GC heap threads using the
COMPlus_GCHeapAffinitizeMask or COMPlus_GCHeapAffinitizeRanges. The
selected CPUs may belong only to a subset of NUMA nodes that don't
necessarily start at node 0 or form a continuous range.
This change fixes the algorithm that initializes the
numa_node_to_heap_map lookup array so that it works correctly even in
such cases.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9733c30b27ca90d3eeb07928df6e6e5861c203bb
Brian Sullivan [Fri, 26 Apr 2019 05:51:14 +0000 (22:51 -0700)]
Merge pull request dotnet/coreclr#24229 from briansull/ibc-linux
Fixes for IBC profile data on Linux
Commit migrated from https://github.com/dotnet/coreclr/commit/
03e79408df6b14d36467cfc7eb30bd699f8d3849
Sergey Andreenko [Thu, 25 Apr 2019 17:42:54 +0000 (10:42 -0700)]
Add a repro test.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e5decb744c05dcce3f23ec0757517711a0ecb900
Sergey Andreenko [Thu, 25 Apr 2019 23:07:37 +0000 (16:07 -0700)]
Fix parent's links in fgArgInfo in optAssertionProp_Update.
Commit migrated from https://github.com/dotnet/coreclr/commit/
6418fcf88c7014d564dbb38ea0d459d2da2645af
Sergey Andreenko [Thu, 25 Apr 2019 23:05:51 +0000 (16:05 -0700)]
Change gtFindLink to return parent as well.
Commit migrated from https://github.com/dotnet/coreclr/commit/
332bd2ec8a6bad66e1fb9b2dc3cf37e9e4d77727
Sergey Andreenko [Thu, 25 Apr 2019 21:59:33 +0000 (14:59 -0700)]
Add comments and format `gtGetThisArg`.
Commit migrated from https://github.com/dotnet/coreclr/commit/
736291405ac4daf4fa84d11183e8be2bdf294425
Russ Keldorph [Sat, 20 Apr 2019 00:02:16 +0000 (17:02 -0700)]
Helix telemetry fixes
- Enable telemetry unconditionally
- Set the `_BuildConfig` variable in `xplat-job.yml` so it is available to
both product and test builds.
- Set the Helix `Type` parameter explicitly to distinguish product and test builds
- Set the Helix `Source` parameter for builds as well as test jobs
This includes a fix to job.yml from dotnet/arcadedotnet/coreclr#2620.
Commit migrated from https://github.com/dotnet/coreclr/commit/
9957d039a2ac69bf42fac51b45abae48c1c212d0
Filip Navara [Thu, 25 Apr 2019 23:42:30 +0000 (01:42 +0200)]
[System.Globalization.Native] Fix small issues in CloneCollatorWithOptions and GetCollatorFromSortHandle (dotnet/coreclr#24100)
* Fix allocation size calculation when resizing array
Allocate initial array using malloc to avoid needlessly zeroing it
Reinstate optimization for empty array returned from GetCustomRules lost in dotnet/coreclr#22378
* Avoid resizing arrays in GetCustomRules by preallocating the maximum size we can consume (5648 bytes)
* Avoid creating a binary search tree for something that could be easily stored as 32-entry lookup table
* Remove obsolete comment
Commit migrated from https://github.com/dotnet/coreclr/commit/
a59ead8f8b31f836ea551807eef77b77281848e2
Omair Majid [Thu, 25 Apr 2019 23:40:19 +0000 (19:40 -0400)]
Null-terminate buffers that strncpy writes to (dotnet/coreclr#24095)
It is possible that the string being copied is so large that strncpy
fills up the destination array and does not write any null characters to
it. That will lead to buffer overflows. Work around that by always
writing a null character at the end of the destination array.
Commit migrated from https://github.com/dotnet/coreclr/commit/
dea615bfbeff6b8769e6d162aea33862e676fadb
Russ Keldorph [Thu, 25 Apr 2019 23:34:57 +0000 (16:34 -0700)]
Remove redundant tests (dotnet/coreclr#24255)
Tests are technically flaky and have been determined largely redundant with CoreFx.
Fixes dotnet/coreclr#24212
Commit migrated from https://github.com/dotnet/coreclr/commit/
37957f427e324448152fb6e75795b876967cfe55
Brian Sullivan [Thu, 25 Apr 2019 22:56:32 +0000 (15:56 -0700)]
Added method ReleaseManagedCommandLine to release memory
Commit migrated from https://github.com/dotnet/coreclr/commit/
1f2435763926f6068fc88a36a2b8dc49c263f271
Mukul Sabharwal [Thu, 25 Apr 2019 22:34:19 +0000 (15:34 -0700)]
Add IsFrozenObject Profiler API (dotnet/coreclr#24239)
Commit migrated from https://github.com/dotnet/coreclr/commit/
14458204d17a47eff4323f1f8102eb222b157637
José Rivero [Thu, 25 Apr 2019 22:13:03 +0000 (15:13 -0700)]
Removing EventPipe file polling (EventPipeController+Timer) (dotnet/coreclr#24225)
* Remove file polling only, and leave the COMPlus_* functionality.
* Fix bug/typo introduced with https://github.com/dotnet/coreclr/pull/21718
Commit migrated from https://github.com/dotnet/coreclr/commit/
e30263455e930b63c0f311cf28d4f73a8abb504c
Brian Sullivan [Tue, 23 Apr 2019 21:52:04 +0000 (14:52 -0700)]
Fix for IBC profile data on Linux - Build the full command line for FEATURE_PAL
Added public static function GetManagedCommandLine() andSaveManagedCommandLine()
Add helper method Append_Next_Item
Moved GetManagedCommandLine and SaveManagedCommandLine to ceeload to link crossgen
Cleanup, codereview feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
08422af33fa2026953c2e720cecf000ed4345a32
Jan Vorlicek [Thu, 25 Apr 2019 21:49:48 +0000 (23:49 +0200)]
Merge pull request dotnet/coreclr#24242 from janvorli/fix-numa-node-for-disabled-numa
Fix NUMA node for heap when NUMA is not available
Commit migrated from https://github.com/dotnet/coreclr/commit/
58a26dfea967eee422cffe487ffff4c1a2546da6
Andrew Au [Thu, 25 Apr 2019 17:20:30 +0000 (10:20 -0700)]
Using SList<SListElem<T>> to store the EventPipeProviderCallbackData
Commit migrated from https://github.com/dotnet/coreclr/commit/
4449737e3e25d57f3fb1e4bb7aa8f16110a27538
Jeremy Koritzinsky [Thu, 25 Apr 2019 20:16:35 +0000 (13:16 -0700)]
Add IBCMerge restore source to the restore command. (dotnet/coreclr#24250)
Commit migrated from https://github.com/dotnet/coreclr/commit/
bb24f926d7b0c001b75d4fcb4d64c2d7572c1d38
Anirudh Agnihotry [Thu, 25 Apr 2019 18:47:22 +0000 (11:47 -0700)]
Nullable System.Collections.EmptyReadOnlyDictionaryInternal, System.Collections.ObjectModel.* (dotnet/coreclr#24221)
* annotating collections
* annotated collection.cs and readonlycollection.cs
* adding tkey constraint and comments
Commit migrated from https://github.com/dotnet/coreclr/commit/
ebb717431b79c6d6c83a32983b5819a13eb62cef
Jan Vorlicek [Thu, 25 Apr 2019 18:19:50 +0000 (20:19 +0200)]
Merge pull request dotnet/coreclr#24232 from janvorli/fix-large-version-bubble-2
Fix crossgen with large version bubble enabled
Commit migrated from https://github.com/dotnet/coreclr/commit/
b5bb75ec39a501bde4089ba754bb717e1d52fe0d
David Wrighton [Thu, 25 Apr 2019 17:57:09 +0000 (10:57 -0700)]
Improve the performance of the type loader (dotnet/coreclr#24177)
Improve the performance of the type loader
- Disable interface ambiguity checks in Corelib
- Improve StackingAllocator perf
- Increase size of allocation blocks
- Cleanup allocation blocks comletely on gc suspension
- Check for presence of generic parameters to methods in a more efficient manner
- Querying the count of GenericParameter records requires a binary search in the GenericParams table
- Checking the generic flag on the method signature is effectively free
- Skip unnecessary checks in EnumerateClassMethods for corelib
- Use Sanity check flag where appropriate
- Use slightly faster hashtable functions in StringLiteralMap
- Remove pointless string literal entry hash table search
- Change stacking allocator to not be allocated for the lifetime of a thread, but instead its allocated/destroyed around the first frame on the thread that needs the allocator.
- Allocate at most 1 stacking allocator per thread
- The allocation is on the stack via _alloca (as managed by the ACQUIRE_STACKING_ALLOCATOR macro
- This will put an 8KB buffer on the stack, and if there is need for a larger buffer it will allocate off of the heap.
- Stacking allocator initial block is always present, so the allocation routine for the allocator can be somewhat simpler
- More logic has been move the the cpp file, to reduce header bloat, and improve iteration when modifying StackingAllocator code
- Avoid use of alloca for StackingAllocator when less than 512KB of stack is available
Commit migrated from https://github.com/dotnet/coreclr/commit/
713091f4e504b9a194dcb2cfda180baa21572c58
Levi Broderick [Thu, 25 Apr 2019 15:22:39 +0000 (08:22 -0700)]
Fix verification of 3-byte UTF-8 sequence followed by non-ASCII byte (dotnet/coreclr#24235)
Commit migrated from https://github.com/dotnet/coreclr/commit/
e3d7d212a4d5350227c1fcc6949e9a379e9162c5
Carol Eidt [Thu, 25 Apr 2019 14:26:21 +0000 (07:26 -0700)]
Return null for unexpected HW intrinsic (dotnet/coreclr#24219)
Fix dotnet/coreclr#17815
Commit migrated from https://github.com/dotnet/coreclr/commit/
9cd5658f969f503127e2a40991989976c72f866d
Fadi Hanna [Thu, 25 Apr 2019 14:17:19 +0000 (07:17 -0700)]
Fixing 23941 (dotnet/coreclr#24199)
* Fixing 23941
The issue here is that in R2R code, unlike jitted IL code, the pinvoke calls are wrapped by a pair of calls to the JIT_PInvokeBegin and JIT_PInvokeEnd helpers, which link and unlink the InlinedCallFrame to the current thread. We do not initialize and link the ICF in the method prolog, and unlink it in the epilog, like jitted code does. We do this in the JIT helpers, right before/after the pinvoke call.
When an exception is thrown, the JIT_PInvokeEnd helper will be skipped since execution will resume at the nearest valid catch block, and the ICF will remain linked to the thread, which poses a problem if the method attempts another pinvoke operation (it will try to link the ICF which is already the top frame, and we'll end up in an infinite loop). Therefore, for the R2R case, we need to pop the ICF from the chain during exception unwinding.
Commit migrated from https://github.com/dotnet/coreclr/commit/
e966022128c67163e04be4ab2360d314d7d9c062
Stephen Toub [Thu, 25 Apr 2019 14:06:02 +0000 (10:06 -0400)]
Nullable: Contract.cs and more interop (dotnet/coreclr#24193)
* Nullable: Contract.cs and more interop
* Address PR feedback
Commit migrated from https://github.com/dotnet/coreclr/commit/
4dc324887a85bc90ef6830b2d27ba49c31058d72
Jan Vorlicek [Thu, 25 Apr 2019 09:32:31 +0000 (11:32 +0200)]
Fix NUMA node for heap when NUMA is not available
The recent refactoring of the GCToOSInterface::GetProcessorForHeap has
accidentally changed the NUMA node returned in case NUMA is disabled
(either via the COMPlus_GCNumaAware or due to the fact that there is
just a single NUMA node on the system) and the CPU groups are disabled.
Before that refactoring, the code was incorrectly returning 0 as the
NUMA node when CPU groups were disabled no matter whether NUMA was
enabled or disabled. The refactoring fixed that by returning the
current CPU group number for the case when NUMA was enabled, however
it still returned incorrect value, this time GroupProcNo::NoGroup as
the NUMA node number in case NUMA was disabled.
This change fixes it by returning the current group number in this case.
Commit migrated from https://github.com/dotnet/coreclr/commit/
8d93bd9080f47efd87dc5420a6e600f8dc432659
Andrew Au [Fri, 29 Mar 2019 00:07:16 +0000 (17:07 -0700)]
Postponing the managed callback so that they are called after the lock acquistion
Commit migrated from https://github.com/dotnet/coreclr/commit/
e6034d903f2608445a3f66e3694f461fad7b8b88
Ludovic Henry [Thu, 25 Apr 2019 04:38:57 +0000 (21:38 -0700)]
Switch to workstation GC in case of constrained CPU resources (dotnet/coreclr#24194)
* Switch to workstation GC in case of constrained CPU resources
Right now, if the user sets the configuration so that the server GC is
used, the server GC will be loaded even in conditions where we know the
workstation GC would fare better. An example of such conditions is
constrained environment where there is only 1 or less CPU or with very
low memory.
This can be harmful if users deploy the same projects on different kind
of platforms: deploying to a 20+ cores server and to Azure Functions
will require largely different configurations for the runtime.
There are already multiple ways for the user to specify to use the
server GC or not:
- setting `COMPlus_gcServer` as an environment variable
- setting `gcServer` in the configuration file
- setting `System.GC.Server` passed to `coreclr_initialize`
Fix https://github.com/dotnet/coreclr/issues/23949
* Address review
* Address review
Remove GCToOSInterface::GetCurrentProcessCpuLimit in favor of
GCToOSInterface::GetCurrentProcessCpuCount because the CpuLimit is taken
into account in the CpuCount again.
* Address review
Do the work in src/vm/ceemain.cpp otherwise there will be a disparity
between what the VM and the GC are running. Before, only the GC would be
aware of the switch from server to workstation GC, but not the VM.
Commit migrated from https://github.com/dotnet/coreclr/commit/
a9b6851ad1a9551f3f654b654b094147b50e5999
Jim [Thu, 25 Apr 2019 02:50:47 +0000 (05:50 +0300)]
Added optional/default parameters for StreamWriter/StreamReader (dotnet/coreclr#24056)
* Added optional/default parameters for StreamWriter/StreamReader
* Disabled outdated test
* Changed default encoding to UTF8NoBOM
* Made encoding parameter nullable
Commit migrated from https://github.com/dotnet/coreclr/commit/
57a40b91ce8d340f60717b73ab5d779e9f6a53be
Jan Kotas [Thu, 25 Apr 2019 00:06:30 +0000 (17:06 -0700)]
Unify WIN32_FIND_DATA (dotnet/corefxdotnet/coreclr#37158)
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
6d0ea2a67116907dc7e3e9213d3270944142e7f5
Mukul Sabharwal [Thu, 25 Apr 2019 00:27:06 +0000 (17:27 -0700)]
Add Medium GC Profiling Mode & ICorProfilerInfo::GetObjectReferences (dotnet/coreclr#24156)
Commit migrated from https://github.com/dotnet/coreclr/commit/
c2dacd2025145c586a5569408c1427899a3767cc
David Wrighton [Thu, 25 Apr 2019 00:01:31 +0000 (17:01 -0700)]
More multi-appdomain support removal (dotnet/coreclr#23921)
More multi-appdomain support removal
- Remove DomainLocalBlock
- Remove DomainModule
- Remove FindDomain(File/Module/Assembly)
- Remove GetDomainModule
- Remove variants of GetDomain(File/Assembly) that take AppDomain parameter
- Adjust contracts to be less strict
- GetDomainFile/Assembly no longer need a complex contract as multi-domain support does not exist
- Eliminiate uses of encoded ModuleID
Commit migrated from https://github.com/dotnet/coreclr/commit/
4a2654124ecf38300a717db79926334703abeb70
Jan Vorlicek [Wed, 24 Apr 2019 23:07:42 +0000 (01:07 +0200)]
Fix crossgen with large version bubble enabled
This change fixes about 1483 failing Pri-1 tests when they are
crossgen-ed with large version bubble enabled. Only one failing test
remains.
60% of the test cases were failing due to a failure to find generic
interface in an interface map due to the fact that the interface type
was being passed in canonical form.
The remaining 40% were tests using constrained calls. We were missing
the ENCODE_METHOD_SIG_Constrained in the method flags.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f0ef156828d607c8eb79e9dc104a10de6b5ece9a
Bruce Forstall [Wed, 24 Apr 2019 22:50:59 +0000 (15:50 -0700)]
Merge pull request dotnet/coreclr#24226 from BruceForstall/Disable24224
Disable mandelbrot-7 against dotnet/coreclr#24224
Commit migrated from https://github.com/dotnet/coreclr/commit/
e9691546d308fde4e56cc821f8c9bfda7e9a8b91
Bruce Forstall [Wed, 24 Apr 2019 22:50:21 +0000 (15:50 -0700)]
Merge pull request dotnet/coreclr#24227 from BruceForstall/Disable24173
Disable _il_dbgu_fld under GCStress against dotnet/coreclr#24173
Commit migrated from https://github.com/dotnet/coreclr/commit/
efad71804278957d556930ce978dec1ce285911d
Sung Yoon Whang [Wed, 24 Apr 2019 21:00:31 +0000 (14:00 -0700)]
Fixing issue where LTTng probe check disables GC events (dotnet/coreclr#24198)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8c979b75e59815bcc1c7a9a1acdfda4e143f1a66
Bruce Forstall [Wed, 24 Apr 2019 19:57:32 +0000 (12:57 -0700)]
Disable _il_dbgu_fld under GCStress against dotnet/coreclr#24173
Commit migrated from https://github.com/dotnet/coreclr/commit/
34b35a56f24d20e9aae076a67bf8481b6cb631dd
Bruce Forstall [Wed, 24 Apr 2019 19:42:57 +0000 (12:42 -0700)]
Disable mandelbrot-7 against dotnet/coreclr#24224
Commit migrated from https://github.com/dotnet/coreclr/commit/
df0c12d5ec4f7832245dd5a6cbd5a9bc5f021183
Michal Strehovský [Wed, 24 Apr 2019 13:24:31 +0000 (15:24 +0200)]
Fix ProjectN build breaks (dotnet/corertdotnet/coreclr#7343)
Porting changes from the non-WinRT files.
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
8eb913402071a6c6c9bd56768d0fd6f68f41d745
Bruce Forstall [Wed, 24 Apr 2019 18:59:52 +0000 (11:59 -0700)]
Merge pull request dotnet/coreclr#24222 from BruceForstall/AddCorefxExclusions
Expand corefx exclusions
Commit migrated from https://github.com/dotnet/coreclr/commit/
377be0e800b3a0e1ebd855de779f3af2e00d5360
Bruce Forstall [Wed, 24 Apr 2019 18:58:38 +0000 (11:58 -0700)]
Expand corefx exclusions
Commit migrated from https://github.com/dotnet/coreclr/commit/
7b7eaccdab4aeb756a873f76ff76e99e8318050b
Jeremy Koritzinsky [Wed, 24 Apr 2019 18:50:14 +0000 (11:50 -0700)]
Update IBCMerge and ensure that it runs when in a release build and ibcoptimize is set. (dotnet/coreclr#24205)
* Update IBCMerge and ensure that it runs when in a release build and ibcoptimize is set.
* Add major rollforward for ibcmerge.
Commit migrated from https://github.com/dotnet/coreclr/commit/
78f21fa4e3bec511249b230f52b24d1b9bff5285
William Godbe [Wed, 24 Apr 2019 18:49:32 +0000 (11:49 -0700)]
Merge pull request dotnet/coreclr#24206 from dotnet-maestro-bot/master-UpdateDependencies
Update CoreClr to preview6-27624-71 (master)
Commit migrated from https://github.com/dotnet/coreclr/commit/
8705f11f78377ad926479087a9589a7277957239
Bruce Forstall [Wed, 24 Apr 2019 17:22:28 +0000 (10:22 -0700)]
Merge pull request dotnet/coreclr#24218 from BruceForstall/FixLinuxX64CorefxTesting
Remove extraneous percent character in Linux/x64 corefx testing command
Commit migrated from https://github.com/dotnet/coreclr/commit/
edfd95518ace718388d4ef2396b4233635b2d26b
Bruce Forstall [Wed, 24 Apr 2019 17:21:00 +0000 (10:21 -0700)]
Remove extraneous percent character in Linux/x64 corefx testing command
Commit migrated from https://github.com/dotnet/coreclr/commit/
f3db0557c898c346c3f48da825fc2c8c522e5063
dotnet-maestro-bot [Wed, 24 Apr 2019 13:05:02 +0000 (06:05 -0700)]
Update CoreClr to preview6-27624-71
Commit migrated from https://github.com/dotnet/coreclr/commit/
cc7d630fb782f0436946fd68a16018684c8c892a
Jeremy Koritzinsky [Wed, 24 Apr 2019 05:01:47 +0000 (22:01 -0700)]
Match managed DetermineLibraryNameVariations implementation to native DetermineLibNameVariations implementation. (dotnet/coreclr#24203)
* Match managed DetermineLibraryNameVariations implementation to native DetermineLibNameVariations implementation.
* Update AssemblyDependencyResolver.cs
* Use ordinal comparison instead of culture-specific comparison
Commit migrated from https://github.com/dotnet/coreclr/commit/
8808f4eab10d1760182590cad4964f566b9c88ca
Jan Kotas [Wed, 24 Apr 2019 03:21:09 +0000 (20:21 -0700)]
Delete unnecessary static and update GCSample to VS2019 (dotnet/coreclr#24204)
Commit migrated from https://github.com/dotnet/coreclr/commit/
3f21a0f6cc8e0036ad536c791d7877a35d22cd01
Bruce Forstall [Tue, 23 Apr 2019 23:34:57 +0000 (16:34 -0700)]
Merge pull request dotnet/coreclr#24201 from BruceForstall/AllowFineGrainedCorefxTestExclusions
Enable fine-grained and universal exclusions for CoreFX tests
Commit migrated from https://github.com/dotnet/coreclr/commit/
22c467297d0d537c2e647ec5c5b4256ab42b18bb
dotnet-maestro-bot [Tue, 23 Apr 2019 23:28:07 +0000 (16:28 -0700)]
Update CoreClr to preview6-27623-73 (dotnet/coreclr#24200)
Commit migrated from https://github.com/dotnet/coreclr/commit/
2167c422f96027dc826fa9eb7006babb122923c8
Anirudh Agnihotry [Tue, 23 Apr 2019 22:39:32 +0000 (15:39 -0700)]
Revert "Dummy commit" (dotnet/coreclr#24197)
Commit migrated from https://github.com/dotnet/coreclr/commit/
14af2765d0a4837bd017b9716e6405a3b778bb78
Bruce Forstall [Tue, 23 Apr 2019 21:12:32 +0000 (14:12 -0700)]
Enable fine-grained and universal exclusions for CoreFX tests
One problem we've had in coreclr Jenkins when running corefx
tests (in the coreclr outerloop runs -- the ones using the
run-corefx-tests.py harness) is the inability to exclude
failing tests for x86 or x64, and the inability to have
fine-grained exclusions. This has led to problems like
https://github.com/dotnet/coreclr/issues/22442 where
virtually all Windows x86 and x64 corefx runs fail due to
timeouts. And issues like https://github.com/dotnet/coreclr/issues/24159
where all corefx test legs fail, and we have no control
over exclusions to get them all passing again quickly.
Now that the corefx RunTests.cmd/sh wrapper scripts
parse named arguments, including a response file that
is passed on to xunit, and also that the corefx used
xunit has support for this response file as well as
fine-grained exclusions (per-method/per-class/per-namespace),
we can take advantage of it.
This change adds a single, global, corefx xunit exclusion
response file, that will be used for all platforms. Since this
run-corefx-tests.py mechanism is not expected to live much longer,
this seems sufficient.
Commit migrated from https://github.com/dotnet/coreclr/commit/
612a568e9177c0f126a6fc211a54c70d67bf8773
Tarek Mahmoud Sayed [Tue, 23 Apr 2019 20:58:54 +0000 (13:58 -0700)]
Fix failures caused by ICU regression (dotnet/coreclr#24190)
Fixes https://github.com/dotnet/corefx/issues/37098
.NET Core depends on ICU when running on Linux/OSX. Recently some people raised some failure on the framework stack. After investigation we found a regression in ICU which is the root cause of this failure. The regression is, when calling ICU to get some date patterns/properties, in some cases ICU return error code U_MISSING_RESOURCE_ERROR. Although the framework code written to fallback to some invariant values at that time, but we had some wrong line of code which assumed we never fail and trying to access the returned value without checking. That cause the framework to throw NullReferenceException.
The fix here is to make the framework resilient against such cases and continue to run nicely. I have contact ICU support members and I learned there is similar issue tracked in ICU repo https://unicode-org.atlassian.net/browse/ICU-20558
Commit migrated from https://github.com/dotnet/coreclr/commit/
cbc358d9617816d38109df5a40fb677ce69c840f
Brian Sullivan [Tue, 23 Apr 2019 20:22:16 +0000 (13:22 -0700)]
Merge pull request dotnet/coreclr#23932 from briansull/zero-offset-map
Fixes for tracking struct field sequences
Commit migrated from https://github.com/dotnet/coreclr/commit/
e7ecfecc3b8a35e645e9f2a5b5ebb10889ca956b
Jan Vorlicek [Tue, 23 Apr 2019 20:14:58 +0000 (22:14 +0200)]
Fix crash after unload with server GC (dotnet/coreclr#24196)
When server GC is on, the DomainAssembly::EnumStaticGCRefs is called to
enumerate GC statics. For collectible assemblies, the GC statics are
stored in managed arrays and so there is no need for a special
enumeration of the GC statics. Attempt to do that was causing a crash
due to the fact that the corresponding DomainLocalModule::m_pGCStatics
is always NULL for collectible assemblies and we were trying to access
it.
Commit migrated from https://github.com/dotnet/coreclr/commit/
f0a244953fae71378dc707289773edc509288fcc
Anirudh Agnihotry [Tue, 23 Apr 2019 19:56:09 +0000 (12:56 -0700)]
Nullable : System.Diagnostics.Eventing (Directory) (dotnet/coreclr#24192)
* Eventing directory done
* adding comment and fixing unix build
Commit migrated from https://github.com/dotnet/coreclr/commit/
8b35a2bbfbe79713505bd96b80476bafb3c40bdd
Michal Strehovský [Tue, 23 Apr 2019 19:18:25 +0000 (21:18 +0200)]
Add test coverage for static members on interfaces (dotnet/coreclr#23928)
This has been supported since v1 but we don't have much test coverage.
C# is going to enable interfaces to have static members and static constructors so we better start testing it.
Commit migrated from https://github.com/dotnet/coreclr/commit/
d5f569771f8dfda895867f5a1309afbe384ebf51
Anirudh Agnihotry [Tue, 23 Apr 2019 18:21:57 +0000 (11:21 -0700)]
Merge pull request dotnet/coreclr#24195 from Anipik/temp
Dummy commit
Commit migrated from https://github.com/dotnet/coreclr/commit/
6c09b4c6f39727abcf2780f1ae4334ca9352bef4
Anipik [Tue, 23 Apr 2019 18:20:03 +0000 (11:20 -0700)]
Dummy commit
Commit migrated from https://github.com/dotnet/coreclr/commit/
67d1bfbc149db36896de845855cfe5893d75baab
Brian Sullivan [Tue, 23 Apr 2019 17:00:42 +0000 (10:00 -0700)]
Added additional comment explaining ChnageOper(GT_LCL_FLD) and NotAField
Commit migrated from https://github.com/dotnet/coreclr/commit/
dbf2f74ded4310025d0ce6d74d137ed2bc64727e
dotnet-maestro-bot [Tue, 23 Apr 2019 15:14:44 +0000 (08:14 -0700)]
Update CoreClr to preview6-27623-71 (dotnet/coreclr#24152)
Commit migrated from https://github.com/dotnet/coreclr/commit/
6cde974215e97f95178a1f20886e8a5734b9d388
Stephen Toub [Tue, 23 Apr 2019 14:18:46 +0000 (10:18 -0400)]
Fix handling of negative numbers in ThreadPool.SetMin/MaxThreads (dotnet/coreclr#24163)
* Fix handling of negative numbers in ThreadPool.SetMin/MaxThreads
* Fix disabled test name
Commit migrated from https://github.com/dotnet/coreclr/commit/
efe39f35933d89bb8f82472333810fddb78480b2
Koundinya Veluri [Tue, 23 Apr 2019 06:31:37 +0000 (23:31 -0700)]
Implement APIs for some threading metrics (CoreRT) (dotnet/corertdotnet/coreclr#7066)
* Implement APIs for some threading metrics (CoreRT)
- API review: https://github.com/dotnet/corefx/issues/35500
- May depend on https://github.com/dotnet/coreclr/pull/22754
* Use thread-locals for counting, use finalizer instead of runtime to detect thread exit
* Don't let the count properties throw OOM
* Remove some flushes
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Commit migrated from https://github.com/dotnet/coreclr/commit/
447b6554f393f3fa02f3d697cdf7c56612a0fa1a
Bruce Forstall [Mon, 22 Apr 2019 23:32:22 +0000 (16:32 -0700)]
Merge pull request dotnet/coreclr#24176 from BruceForstall/Fix24175
Disable 2 GC tests under HeapVerify for arm64
Commit migrated from https://github.com/dotnet/coreclr/commit/
c0cae0a041549edd759366eb3e732f8348b466b3