Jan Vorlicek [Wed, 10 Apr 2019 13:18:03 +0000 (15:18 +0200)]
Fix few issues discovered by testing
Jan Vorlicek [Wed, 10 Apr 2019 10:08:27 +0000 (12:08 +0200)]
Fix RecycledLists size on Unix
The list size was set to g_SystemInfo.dwNumberOfProcessors which is a
number of processors the current process is allowed to run on, but not
the total number of processors in the system. Fixed to use
PAL_GetTotalCpuCount.
Also revert a change to the mbind node mask length computation I've
incorrectly made in my last commit and make it clear that the value is
a number of used bits in the node mask, which is the highest numa node
plus 1. And finally, re-reading the mbind doc, I've found that the
maxnode parameter is in fact "number of nodes" in the mask, so fixing
that too.
Jan Vorlicek [Tue, 9 Apr 2019 00:50:28 +0000 (02:50 +0200)]
Fix several issues
* Fix build on OSX and Linux machines without NUMA installed - there were
couple of places where I was missing ifdefs
* Fix bug in nodeMaskLength computation
* Remove testing change in eeconfig.cpp that has leaked into the PR
* Fix GCToOSInterface::GetTotalProcessorCount for embedded GC to return
all processors on the system, not just the ones enabled for the current
process.
Jan Vorlicek [Fri, 5 Apr 2019 00:53:32 +0000 (02:53 +0200)]
Remove Unix CPU groups emulation
This change removes CPU groups emulation from Unix PAL and modifies the
GC and thread pool code accordingly.
Jan Vorlicek [Mon, 8 Apr 2019 20:48:20 +0000 (22:48 +0200)]
Merge pull request #23251 from mjsabby/largePagesInGC
Add Large pages support in GC
William Godbe [Mon, 8 Apr 2019 19:04:16 +0000 (12:04 -0700)]
Merge pull request #23813 from wtgodbe/PrevAgain
Re-update branding to preview5
José Rivero [Mon, 8 Apr 2019 18:54:19 +0000 (11:54 -0700)]
Remove the MultiFileSec option from EventPipe. (#23777)
This option was a pseudo mechanism to fake "streaming" events out-of-proc.
The idea was to have EventPipe creating files every N seconds, with event data up to that point. Thus, external processes could read these files in an attempt to get "read-time" data.
Now, we actually have streaming of event through IPC channels, so this option is not needed.
Bruce Forstall [Mon, 8 Apr 2019 18:13:09 +0000 (11:13 -0700)]
Merge pull request #23715 from BruceForstall/FixArmStackProbing
Fix ARM32/ARM64 large frame stack probing
Mukul Sabharwal [Fri, 29 Mar 2019 04:33:24 +0000 (21:33 -0700)]
Add Large pages support in GC
wtgodbe [Mon, 8 Apr 2019 16:28:55 +0000 (09:28 -0700)]
Re-update branding to preview5
Sergiy Kuryata [Mon, 8 Apr 2019 15:07:07 +0000 (08:07 -0700)]
Merge pull request #23801 from sergiy-k/enabler2rtestingonunix
Enable running tests in the ReadyToRun mode on Linux on OSX
dotnet-maestro[bot] [Mon, 8 Apr 2019 14:59:23 +0000 (10:59 -0400)]
[master] Update dependencies from dotnet/arcade (#23797)
* Update dependencies from https://github.com/dotnet/arcade build
20190406.5
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19206.5
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19206.5
* Update dependencies from https://github.com/dotnet/arcade build
20190407.1
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19207.1
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19207.1
dotnet-maestro[bot] [Mon, 8 Apr 2019 14:59:11 +0000 (10:59 -0400)]
[master] Update dependencies from dotnet/corefx (#23798)
* Update dependencies from https://github.com/dotnet/corefx build
20190406.5
- Microsoft.NETCore.Platforms - 3.0.0-preview5.19206.5
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview5.19206.5
* Update dependencies from https://github.com/dotnet/corefx build
20190408.1
- Microsoft.NETCore.Platforms - 3.0.0-preview5.19208.1
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview5.19208.1
Jan Vorlicek [Mon, 8 Apr 2019 11:24:35 +0000 (13:24 +0200)]
Merge pull request #23605 from franksinankaya/gcc_cleanup_17
Fix conversion warning
Michal Strehovský [Mon, 8 Apr 2019 11:14:39 +0000 (13:14 +0200)]
Allow reabstraction of default interface methods (#23313)
Allow the runtime to load types with incomplete interface implementations. With this change, we allow (in pseudo-C#):
```csharp
interface IFoo { void Frob() { } }
interface IBar : IFoo { abstract void IFoo.Frob() }
class Fooer : IBar { }
```
Calling IFoo.Frob on an instance of `Fooer` will result in new exception being thrown because the default implementation of `IFoo.Frob` was re-abstracted by `IBar`.
dotnet-maestro-bot [Mon, 8 Apr 2019 03:22:20 +0000 (20:22 -0700)]
Update CoreClr to preview5-27607-72 (#23799)
Sergiy Kuryata [Sun, 7 Apr 2019 23:12:20 +0000 (16:12 -0700)]
Enable running tests in the ReadyToRun mode on Linux on OSX
Egor Chesakov [Wed, 3 Apr 2019 21:33:52 +0000 (14:33 -0700)]
Add Alpine.38.Arm64.Open Helix queue
Egor Chesakov [Wed, 3 Apr 2019 21:30:58 +0000 (14:30 -0700)]
Update image coreclr uses for arm64 musl crossbuild
Stephen Toub [Sun, 7 Apr 2019 00:17:57 +0000 (20:17 -0400)]
Fix two new nullable warnings with latest compiler
dotnet-maestro-bot [Sat, 6 Apr 2019 17:00:48 +0000 (10:00 -0700)]
Update BuildTools, CoreClr to preview4-03906-01, preview5-27606-71, respectively
Sergey Andreenko [Sun, 7 Apr 2019 04:00:29 +0000 (21:00 -0700)]
Merge pull request #23775 from sandreenko/reenableFixedCoreFX
Reenable System.Runtime.Tests. for arm64.
Jeremy Koritzinsky [Sun, 7 Apr 2019 00:47:13 +0000 (17:47 -0700)]
Normalize directory separators before calling LoadLibrary (#23776)
* Normalize directory separators when loading native library via ALC.LoadUnmanagedDllFromPath
Hugh Bellamy [Sun, 7 Apr 2019 00:17:01 +0000 (01:17 +0100)]
Remove remaining devdocs and cleanup ComponentModel code (#23175)
* Remove remaining devdocs and cleanup ComponentModel code
Sergiy Kuryata [Sat, 6 Apr 2019 18:36:31 +0000 (11:36 -0700)]
Merge pull request #23781 from sergiy-k/addcrossgenforcoreroot1
Add crossgen option to build-test.sh
dotnet-maestro[bot] [Sat, 6 Apr 2019 18:07:01 +0000 (11:07 -0700)]
Update dependencies from https://github.com/dotnet/arcade build
20190405.6 (#23784)
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19205.6
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19205.6
dotnet-maestro[bot] [Sat, 6 Apr 2019 18:06:17 +0000 (11:06 -0700)]
[master] Update dependencies from dotnet/corefx (#23785)
* Update dependencies from https://github.com/dotnet/corefx build
20190405.9
- Microsoft.NETCore.Platforms - 3.0.0-preview5.19205.9
- Microsoft.Private.CoreFx.NETCoreApp - 4.6.0-preview5.19205.9
* System.Data.DataSetExtensions is not a package anymore
Vladimir Sadov [Sat, 6 Apr 2019 13:34:12 +0000 (06:34 -0700)]
Make GCToOSInterface::FlushProcessWriteBuffers use MEMBARRIER_CMD_PRIVATE_EXPEDITED if available (#23778)
Basically a port of https://github.com/dotnet/coreclr/pull/20949 to GCToOSInterface
dotnet-maestro-bot [Sat, 6 Apr 2019 13:31:53 +0000 (06:31 -0700)]
Update CoreClr to preview5-27605-73 (#23782)
Jeremy Koritzinsky [Sat, 6 Apr 2019 03:23:36 +0000 (20:23 -0700)]
Match PtrToStringUTF8 to the other PtrToString* families. (#23731)
* Match PtrToStringUTF8 to the other PtrToString* families.
* Make PtrToString*(IntPtr,int) exceptions consistent.
* Exclude out-of-date tests in CoreFX.
* Update exclusions to cover tests that are now throwing ArgumentOutOfRangeExceptions instead of ArgumentExceptions.
* Fix parameter order for exception.
* Pass value to exception.
Egor Bogatov [Sat, 6 Apr 2019 01:48:16 +0000 (04:48 +0300)]
Fix typo in Buffer.BlockCopy (#23636)
Gergely Kalapos [Sat, 6 Apr 2019 01:47:18 +0000 (03:47 +0200)]
Fix broken links (#23748)
Sergiy Kuryata [Sat, 6 Apr 2019 00:55:42 +0000 (17:55 -0700)]
Add crossgen option to build-test.sh
This option will cause the script to call crossgen to precompile the
managed assemblies in CORE_ROOT after generating layout.
Most of this code has been transferred from tests/bringup_runtest.sh.
Bruce Forstall [Thu, 4 Apr 2019 06:23:39 +0000 (23:23 -0700)]
WIP Fix ARM32/ARM64 large frame stack probing
Tomas Weinfurt [Fri, 5 Apr 2019 22:56:21 +0000 (15:56 -0700)]
Fedora.28.Amd64 queue is dead. Use container instead (#23765)
* Fedora.28.Amd64 queue is dead. Use container instead
* udpate ubuntu to Ubuntu
* do not escape () as rest of the coreclr does not do it either.
Sergey Andreenko [Fri, 5 Apr 2019 22:14:42 +0000 (15:14 -0700)]
Reenable System.Runtime.Tests. for arm64.
Brian Sullivan [Fri, 5 Apr 2019 21:48:13 +0000 (14:48 -0700)]
Merge pull request #23728 from briansull/FixConstByref
Fix for Issue #23538
William Godbe [Fri, 5 Apr 2019 21:46:53 +0000 (14:46 -0700)]
Merge pull request #23770 from wtgodbe/Preview5
Update branding to preview5
Fadi Hanna [Fri, 5 Apr 2019 21:46:02 +0000 (14:46 -0700)]
Replacing some calls to GetThread with an inlined version (#23771)
Steve MacLean [Fri, 5 Apr 2019 21:10:09 +0000 (17:10 -0400)]
Whitespace (#23772)
Ludovic Henry [Fri, 5 Apr 2019 21:07:57 +0000 (14:07 -0700)]
Fix rounding to UINT32_MAX (#23764)
In case you would have UINT32_MAX - 1 CPUs, you would round up to return UINT32_MAX CPUs.
Fadi Hanna [Fri, 5 Apr 2019 21:05:17 +0000 (14:05 -0700)]
Fix issue 23713: handle TypeDesc field handles (#23767)
dotnet-maestro[bot] [Fri, 5 Apr 2019 21:04:57 +0000 (14:04 -0700)]
[master] Update dependencies from dotnet/arcade (#23718)
* Update dependencies from https://github.com/dotnet/arcade build
20190404.16
- Microsoft.DotNet.Arcade.Sdk - 1.0.0-beta.19204.16
- Microsoft.DotNet.Helix.Sdk - 2.0.0-beta.19204.16
dotnet-maestro-bot [Fri, 5 Apr 2019 21:04:30 +0000 (14:04 -0700)]
Update CoreClr to preview4-27605-71 (#23710)
dotnet-maestro[bot] [Fri, 5 Apr 2019 21:04:10 +0000 (14:04 -0700)]
[master] Update dependencies from dotnet/core-setup (#23719)
* Update dependencies from https://github.com/dotnet/core-setup build
20190404.13
- Microsoft.NETCore.App - 3.0.0-preview4-27604-13
Tanner Gooding [Fri, 5 Apr 2019 20:58:18 +0000 (13:58 -0700)]
Update the JIT to recognize the IsSupported property for all HWIntrinsics (#23751)
* Moving some JITDUMP calls into Compiler::lookupNamedIntrinsic
* Marking the IsSupported methods as Intrinsic for all HWIntrinsic ISAs
* Updating the hwintrinsic importation to more generally handle IsSupported and ThrowPNSE
* Applying formatting patch.
* Adding using System.Runtime.CompilerServices to the various x86 PlatformNotSupported HWIntrinsic files
Jeremy Koritzinsky [Fri, 5 Apr 2019 19:52:00 +0000 (12:52 -0700)]
Enable return buffers on Windows ARM64 for struct-returning member functions (#23625)
* Enable return buffers on Windows ARM64 for struct-returning member functions. Fixes #23577.
* Update comment to match new condition.
* Enable byref return on all Windows (excluding arm64 HFA. Add more test cases for ThisCall.
* On x86, if we have a normalized return value in an instance method, get back the actual type so that we correctly marshal it via a return buffer.
* Fix param ordering.
* Clean up based on PR feedback.
* Fix accidental variable shadowing.
wtgodbe [Fri, 5 Apr 2019 19:45:25 +0000 (12:45 -0700)]
Update branding to preview5
Sinan Kaya [Sat, 30 Mar 2019 14:14:20 +0000 (14:14 +0000)]
Fix conversion warning
Stephen Toub [Fri, 5 Apr 2019 18:30:28 +0000 (14:30 -0400)]
Don't null out references in Stream/BinaryReader/Writer (#23725)
These types null out some fields on Dispose, and some of those fields are accessible directly via exposed properties, which means that nulling them out would either force us to annotate those properties as being nullable or would require us to lie about them being nullable. Nulling them out also makes it easier to accidentally null ref in the implementation, and prevents us from making the fields readonly.
It should be exceedingly rare that you dispose of one of these objects and then keep it alive while also being concerned about keeping alive the other helper objects the type uses. So this change just uses a separate flag to track disposal, and avoids nulling out the fields, which is not a common practice elsewhere in the framework.
This will be a visible change in that after Dispose, properties like StreamWriter.BaseStream/Encoding will now return the stream/encoding rather than null. In theory that could break someone if they were using those properties to determine whether the writer had been disposed, but that seems unlikely / similar fallout from most any bug fix, and objects generally aren't supposed to be touched after Dispose, anyway.
Brian Sullivan [Thu, 4 Apr 2019 16:56:00 +0000 (09:56 -0700)]
Change the backing storage for Byref constants in ValueNumber-ing to use size_t.
Fixes #23538
Ludovic Henry [Fri, 5 Apr 2019 16:42:47 +0000 (09:42 -0700)]
Partially improve support for `--cpus` from Docker CLI (#23747)
* Round up the value of the CPU limit
In the case where `--cpus` is set to a value very close to the smaller
integer (ex: 1.
499999999), it would previously be rounded down. This
would mean that the runtime would only try to take advantage of 1 CPU in
this example, leading to underutilization.
By rounding it up, we augment the pressure on the OS threads scheduler,
but even in the worst case scenario (`--cpus=1.
000000001` previously
being rounded to 1, now rounded to 2), we do not observe any
overutilization of the CPU leading to performance degradation.
* Teach the ThreadPool of CPU limits
By making sure we do take the CPU limits into account when computing the
CPU busy time, we ensure we do not have the various heuristic of the
threadpool competing with each other: one trying to allocate more
threads to increase the CPU busy time, and the other one trying to
allocate less threads because there adding more doesn't improve the
throughput.
Let's take the example of a system with 20 cores, and a docker container
with `--cpus=2`. It would mean the total CPU usage of the machine is
2000%, while the CPU limit is 200%. Because the OS scheduler would never
allocate more than 200% of its total CPU budget to the docker container,
the CPU busy time would never get over 200%. From `PAL_GetCpuBusyTime`,
this would indicate that we threadpool threads are mostly doing non-CPU
bound work, meaning we could launch more threads.
Aaron Robinson [Fri, 5 Apr 2019 16:28:48 +0000 (09:28 -0700)]
Fix invalid use of stack memory (#23758)
* Fix invalid use of stack memory
Grant [Fri, 5 Apr 2019 14:02:23 +0000 (07:02 -0700)]
Revert optimization (#23759)
Jeremy Koritzinsky [Fri, 5 Apr 2019 05:56:56 +0000 (22:56 -0700)]
Disable marshalling delegates as _Delegate and enable marshalling delegates as IDispatch. (#23738)
* Disable marshalling delegates as _Delegate and enable marshalling delegates as IDispatch.
* ifdef out the new IDispatch marshalling on non-COM-supporting platforms.
* PR feedback.
Levi Broderick [Fri, 5 Apr 2019 05:46:23 +0000 (22:46 -0700)]
Improve performance of Memory<T>.Span property getter (#23750)
Koundinya Veluri [Fri, 5 Apr 2019 04:52:38 +0000 (21:52 -0700)]
Disable a couple of S.R.InteropServices tests (#23697)
Disabled the two tests that were fixed in PR https://github.com/dotnet/corefx/pull/34968
Santiago Fernandez Madero [Fri, 5 Apr 2019 04:47:31 +0000 (21:47 -0700)]
Merge pull request #23633 from dotnet/NullableFeature
Nullable feature into master
Santiago Fernandez Madero [Fri, 5 Apr 2019 01:38:02 +0000 (18:38 -0700)]
Fix Debug.Assert in GenericDelegateCache (#23755)
Jeremy Koritzinsky [Fri, 5 Apr 2019 01:37:57 +0000 (18:37 -0700)]
Fix SystemV AMD64 Explicit structure classification (#22041)
* Don't bail out on enregistering explicit structs if there are no overlapping fields.
* Don't enregister if any unaligned fields.
* Enable passing explicit structs by-value by enregistering on systemv. Some edge cases are likely still broken, but just removing our blanket opt-out makes the current tests pass.
* Enable MarshalstructAsLayoutExp off-Windows.
* Start adding additional tests for explicit layout to try to catch edge cases in SystemV classification.
* Added a test that spans across multiple eightbytes and has an overlap in the second eightbyte.
* Change repro to use an array of floats and an int field in managed and use a float array for padding in native to force an SSE classification on the first byte.
* New algorithm to calculate eightbyte classification by going throw the structure byte-by-byte instead of field-by-field.
* Fix updating eightbyte classifications in the loop to actually used the iterated-upon variable.
* Consider each element of a fixed array as a separate field (to match native implementations).
* Implement correct SystemV classification for fixed buffers in non-blittable structures. Fixed buffers in blittable structures have the managed layout assign classifications, which still is buggy.
* Add tests.
* Correctly classify blittable fixed buffers. Move "is this field a fixed buffer" tracking into one of the unused bits in FieldDesc as code that isn't in marshalers needs to know about it.
* Handle the case where we have a struct that has no fields in an eightbyte that contains (i.e. no fields in the first eight bytes of the structure).
* PR feedback.
* Only look up FixedBufferAttribute when the type is a value class and the type of the field is a value type.
* Use heuristic to determine if a type is a fixed buffer for SystemV classification.
* Revert tracking if a field is a fixed buffer in the FieldDesc.
* Update comments.
* Classify aligned, nonoverlapping, float/double only structures as HFAs even if explicitly laid out
* Enable overlapping fields in HFAs. Update NativeType HFA to check for alignment.
I checked Godbolt to verify that HFAs for overlapping fields are allowed.
* Add HFA tests.
* Fix compile errors from HFA alignment check.
* Non-valuetypes will never have their managed layout used to classify SystemV eightbytes.
* Don't classify a struct with no zero-offset field as an HFA.
* Remove duplicate semicolon.
* PR feedback.
* Add test with 2-field double HFA.
* Clean up and add static asserts for struct size.
* Add define for static_assert_no_msg to the native test headers
* Fix build breaks.
* Remove unneeded "size = X bytes" comments. They were holdovers from the .NET Framework test tree.
* Use GetNumInstanceFieldBytes instead of GetLayoutInfo()->GetManagedSize()
* Fix build break.
* Centralize FieldMarshaler offsettting in ClassifyEightBytesWithNativeLayout.
* Fix signed/unsigned mismatch
* Fix condition to also detect arm64.
* Change ifdef to if defined.
* Remove duplicate declaration (broken in rebase)
* Add some logging in one of the unreproable OSX test failures.
* Mark System.Numerics.Vector as intrinsic and don't use the eightbyte classifier to enregister it.
* Also explicitly opt-out of HFAs for System.Numerics.Vector`1 for consistency.
* Update R2R required version to 3.0.
* Remove debugging prints.
Jan Vorlicek [Thu, 4 Apr 2019 22:36:34 +0000 (00:36 +0200)]
Merge pull request #23537 from janvorli/remove-gc-cpu-group-knowledge
Remove CPU groups notion from the gc.cpp
Stephen Toub [Thu, 4 Apr 2019 20:19:55 +0000 (16:19 -0400)]
Merge pull request #23735 from safern/merge-master-nullable
Pull master changes into NullableFeature
Egor Chesakov [Thu, 4 Apr 2019 19:07:00 +0000 (12:07 -0700)]
Run on Ubuntu.1604.Arm32.Open in pull requests and scheduled builds (#23729)
Egor Chesakov [Thu, 4 Apr 2019 19:05:34 +0000 (12:05 -0700)]
Use BYOC pools in "Publish to BAR" job (#23733)
Santiago Fernandez Madero [Thu, 4 Apr 2019 18:53:14 +0000 (11:53 -0700)]
Fix merge conflicts on Delegate and String.resx
Santiago Fernandez Madero [Thu, 4 Apr 2019 18:51:36 +0000 (11:51 -0700)]
Merge remote-tracking branch 'dotnet/master' into merge-master-nullable
Jeremy Koritzinsky [Thu, 4 Apr 2019 18:04:13 +0000 (11:04 -0700)]
Runtime support for upcoming .NET Core WinRT Host (#23402)
* First pass at adding winrt host entry-point.
* There's no way to specify HResult-swapping on a function called via hosted-interop so just return the HResult instead.
* Use the WindowsRuntimeMarshal class to create the activation factory and initialize it.
* Implement loading the dependent assemblies of a WinRT assembly into an isolated load context.
* PR Feedback.
* Fail to get the activation factory if the found type is not a managed type exported from a winmd.
* Rearrange parameters based on PR feedback.
* Remove unneeded include.
* Make ActivationFactoryLoader internal.
* Fix null-ref in WinRT-dependent-assembly loading
* Remove extraneous "System."
Jan Kotas [Thu, 4 Apr 2019 17:52:33 +0000 (10:52 -0700)]
Support simple assembly name in startup hook (#23517)
* Add support for specifying only assembly name for startup hook.
* Implement checking for simple assembly names in startuphook.
Also wrap load exceptions.
* Avoid global alloc
* Allow extra path separators in the startup hook variable
* Fixes for extra path separators
Jan Vorlicek [Thu, 4 Apr 2019 17:52:20 +0000 (19:52 +0200)]
Merge pull request #23721 from janvorli/fix-musl-arm64-crossbuild
Fix MUSL ARM64 cross build
Sung Yoon Whang [Thu, 4 Apr 2019 17:38:14 +0000 (10:38 -0700)]
Add Working Set runtime counter (#23717)
* Add cpu counter
* Fix windows build
* Make the counter just return current CPU usage as %
* Add Unix
* Fix unix build
* Some cleanup
* rename
* fixing some build errors
* some cleanup
* remove unused using
* more cleanup
* newline
* Add working set counter
* Remove old file
Stephen Toub [Thu, 4 Apr 2019 16:58:58 +0000 (12:58 -0400)]
Fix build break due to conflicting PRs (#23726)
Carol Eidt [Thu, 4 Apr 2019 16:53:02 +0000 (09:53 -0700)]
Improve Upper Vector Save/Restore (#23344)
Improve Upper Vector Save/Restore
In order to avoid saving and restore the upper half of large vectors around every
call even if they are not used, separately model the upper half of large vector
lclVars, and track whether the large vector lclVar is partially-spilled, in which
case its upper half resides in its upper half Interval's location.
Fix #18144
Jeremy Koritzinsky [Thu, 4 Apr 2019 16:33:12 +0000 (09:33 -0700)]
Fix prefix of mock hostpolicy on Unix (#23692)
Fixes #23682
Carol Eidt [Thu, 4 Apr 2019 16:31:30 +0000 (09:31 -0700)]
Handle local struct pointer arithmetic (#23704)
The assert introduced in #23570 was overly aggressive, and didn't account for the fact that pointer arithmetic can exist in the IL, not just introduced by morph.
Fix #23693
Marek Safar [Thu, 4 Apr 2019 16:05:08 +0000 (18:05 +0200)]
Move parts of delegate to shared partition (#23552)
Jan Vorlicek [Thu, 4 Apr 2019 14:53:06 +0000 (07:53 -0700)]
Fix MUSL ARM64 cross build
There were two issues:
* the cross/toolchain.cmake was unconditionally setting the linker to ld.gold.
This is not wanted in general and the ld.gold cannot link arm64 MUSL stuff
correctly (it leaves a couple of TLS symbols as undefined)
* the src/vm/arm64/asmhelpers.S was referencing a global variable using absolute
relocation, which is not allowed in shared libraries on MUSL based Linux distros.
Stephen Toub [Thu, 4 Apr 2019 13:23:40 +0000 (09:23 -0400)]
Don't null out buffer in MemoryStream on Capacity reset (#23700)
Jan Vorlicek [Thu, 4 Apr 2019 10:46:33 +0000 (12:46 +0200)]
Modify affinity range config format for Windows
Each entry has to be prefixed by group number followed by comma. There
is nothing like global CPU index on Windows, all the APIs that support
more than 64 processors use group, in-group index pair. So specifying
the affinity this way matches what users are used to.
Vitek Karas [Thu, 4 Apr 2019 10:37:46 +0000 (03:37 -0700)]
Fixes for extra path separators
Vitek Karas [Thu, 4 Apr 2019 07:25:35 +0000 (00:25 -0700)]
Allow extra path separators in the startup hook variable
Krzysztof Wicher [Thu, 4 Apr 2019 05:29:56 +0000 (22:29 -0700)]
Nullable: shared/System/Security (#23623)
* Nullable: shared/System/Security
* fix windows
* address feedback
* IIIIdentity.Identity?
* apply feedback
Sergey Andreenko [Thu, 4 Apr 2019 05:01:22 +0000 (22:01 -0700)]
Merge pull request #23706 from sandreenko/runCoreFXbaseileDaily
Run CoreFX baseline arm/arm64 Windows/Ubuntu daily.
Sung Yoon Whang [Thu, 4 Apr 2019 03:40:50 +0000 (20:40 -0700)]
Add CPU runtime counter (#23680)
* Add cpu counter
* Fix windows build
* Make the counter just return current CPU usage as %
* Add Unix
* Fix unix build
* Some cleanup
* rename
* fixing some build errors
* some cleanup
* remove unused using
* more cleanup
* newline
* Address PR feedback
* more pr feedback
* More feedback
Stephen Toub [Thu, 4 Apr 2019 02:33:29 +0000 (22:33 -0400)]
Nullable: Streams (#23703)
David Wrighton [Thu, 4 Apr 2019 02:11:00 +0000 (19:11 -0700)]
Fix resource loading (#23714)
- Some resources are generated without setting a Major/Minor version in the resource directory
- This is legal, and we shouldn't skip parsing the resource
Filip Navara [Thu, 4 Apr 2019 01:02:15 +0000 (03:02 +0200)]
Move null check into separate method to prevent unnecessary conversion of null into ReadOnlySpan (#23616)
Stephen Toub [Thu, 4 Apr 2019 01:00:16 +0000 (21:00 -0400)]
Nullable: System.Threading.Tasks (#23691)
* Nullable: System.Threading.Tasks
* Address PR feedback
Fei Peng [Thu, 4 Apr 2019 00:15:45 +0000 (17:15 -0700)]
Fix GitHub23672 (#23674)
Sergey Andreenko [Wed, 3 Apr 2019 23:15:14 +0000 (16:15 -0700)]
Run CoreFX baseline arm/arm64 Windows/Ubuntu daily.
David Wrighton [Wed, 3 Apr 2019 22:54:05 +0000 (15:54 -0700)]
Remove ADID and ADIndex from CoreCLR (#23588)
- Remove concept of AppDomain from object api in VM
- Various infrastructure around entering/leaving appdomains is removed
- Add small implementation of GetAppDomain for use by DAC (to match existing behavior)
- Simplify finalizer thread operations
- Eliminate AppDomain::Terminate
- Remove use of ADID from stresslog
- Remove thread enter/leave tracking from AppDomain
- Remove unused asm constants across all architectures
- Re-order header inclusion order to put gcenv.h before handletable
- Remove retail only sync block code involving appdomain index
vitek-karas [Tue, 2 Apr 2019 14:55:35 +0000 (07:55 -0700)]
Avoid global alloc
vitek-karas [Tue, 2 Apr 2019 13:28:09 +0000 (06:28 -0700)]
Implement checking for simple assembly names in startuphook.
Also wrap load exceptions.
Vitek Karas [Thu, 28 Mar 2019 12:12:47 +0000 (05:12 -0700)]
Add support for specifying only assembly name for startup hook.
Carol Eidt [Wed, 3 Apr 2019 21:33:58 +0000 (14:33 -0700)]
Fix Arm64 intrinsic lookup (#23673)
Fix #23669
Andy Ayers [Wed, 3 Apr 2019 21:22:07 +0000 (14:22 -0700)]
Fix interop test cases to pass doubles for native varargs. (#23690)
Remove these tests from the windows exclude list. Also move one
other exclude entry from its own section into the general exclude list.
Closes #22974
Jeremy Koritzinsky [Wed, 3 Apr 2019 21:08:06 +0000 (14:08 -0700)]
Change Auto charset to mean UTF-8 off-Windows (#23664)
Match Mono's behavior by changing the Auto character set to mean UTF-8 on non-Windows platforms (new behavior) and UCS-2/UTF-16 on Windows (current behavior).
Fixes #23464
Fixes dotnet/corefx#32442
Impact of breaking change: It is highly unlikely that anyone is actively using current behavior since it is inconsistent with Mono and doesn't match any native system APIs on non-Windows platforms (they're all UTF-8 based).
We will need to update our documentation to reflect this updated behavior.
Bruce Forstall [Wed, 3 Apr 2019 20:06:18 +0000 (13:06 -0700)]
Merge pull request #23671 from BruceForstall/ImproveJitFunctionTraceOutput
Improve COMPlus_JitFunctionTrace
Jan Vorlicek [Wed, 3 Apr 2019 18:02:18 +0000 (20:02 +0200)]
Fix flipped error codes
Jan Vorlicek [Tue, 2 Apr 2019 21:35:09 +0000 (23:35 +0200)]
Use the GCHeapAffinitizeRanges / GCHeapAffinitizeMask exclusively
The GCHeapAffinitizeRanges are now used only when CPU groups are enabled
and the GCHeapAffinitizeMask when CPU groups are disabled.
Jan Vorlicek [Fri, 29 Mar 2019 11:46:55 +0000 (12:46 +0100)]
Reflect PR feedback