Jeremy Koritzinsky [Thu, 7 May 2020 17:24:20 +0000 (10:24 -0700)]
Use C++11 alias templates instead of macro-defined types to implement specialized holder wrappers. (#35863)
Stephen Toub [Thu, 7 May 2020 16:38:33 +0000 (12:38 -0400)]
Fix crashes when tracing enabled and Socket disposed during connect (#35964)
Given the right (wrong) sequence of events, if tracing is enabled and a Socket is disposed of during a connect operation, the tracing code might try to access properties on the Socket that throw ObjectDisposedException, and these exceptions may propagate and crash the process.
Matt Warren [Thu, 7 May 2020 16:38:13 +0000 (17:38 +0100)]
Fix broken links on Botr doc (#35973)
Sorry, I messed these up in my previous PR
Alois-xx [Thu, 7 May 2020 16:31:56 +0000 (18:31 +0200)]
Remove superflous CheckReleased call which will slow down Event Log Reading up to 20x times. (#35911)
Co-authored-by: Alois Kraus <alois.kraus@siemens-healthineers.com>
Sung Yoon Whang [Thu, 7 May 2020 16:02:02 +0000 (09:02 -0700)]
Fix a potential memory leak due to EventPipe buffer allocation (#35924)
* simplest fix
* make the buffer size page-aligned
* CR feedback
* Add comment about memset
Stephen Toub [Thu, 7 May 2020 15:26:51 +0000 (11:26 -0400)]
Remove FromAsync usage from UDPClient (#35719)
Vlad Brezae [Thu, 7 May 2020 15:22:33 +0000 (18:22 +0300)]
[interp] Remove unnecessary code (#35952)
param_count is always 1 and it doesn't need to be computed at runtime.
Carol Eidt [Thu, 7 May 2020 15:12:26 +0000 (08:12 -0700)]
Fix buffer overflow in assert (#35902)
Koundinya Veluri [Thu, 7 May 2020 14:27:08 +0000 (10:27 -0400)]
Skip processing async operations from epoll thread (#35940)
Fixes https://github.com/dotnet/runtime/pull/35330#discussion_r420749150 by skipping state transitions when an async operation needs to be processed.
Steve Pfister [Thu, 7 May 2020 14:11:42 +0000 (10:11 -0400)]
Fix build issue w/ libs.tests subset on mono (#35905)
Resolves local issue building mono+lib+libs.tests where we didn't copy hostpolicy/libhostpolicy into testhost/shared.
dotnet-maestro[bot] [Thu, 7 May 2020 14:00:09 +0000 (14:00 +0000)]
[master] Update dependencies from 3 repositories (#35890)
* Update dependencies from https://github.com/mono/linker build
20200506.1
- Microsoft.NET.ILLink.Tasks: 5.0.0-preview.3.20254.2 -> 5.0.0-preview.3.20256.1
* Update dependencies from https://github.com/dotnet/runtime-assets build
20200506.1
- System.ComponentModel.TypeConverter.TestData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
- System.Drawing.Common.TestData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
- System.IO.Compression.TestData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
- System.IO.Packaging.TestData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
- System.Net.TestData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
- System.Private.Runtime.UnicodeData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
- System.Security.Cryptography.X509Certificates.TestData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
- System.Windows.Extensions.TestData: 5.0.0-beta.20251.1 -> 5.0.0-beta.20256.1
* Update dependencies from https://github.com/dotnet/xharness build
20200505.4
- Microsoft.DotNet.XHarness.Tests.Runners: 1.0.0-prerelease.20255.2 -> 1.0.0-prerelease.20255.4
* Update dependencies from https://github.com/mono/linker build
20200506.5
- Microsoft.NET.ILLink.Tasks: 5.0.0-preview.3.20254.2 -> 5.0.0-preview.3.20256.5
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Egor Bogatov [Thu, 7 May 2020 13:36:10 +0000 (16:36 +0300)]
[mono] Fix 32bit Android build (#35907)
Stephen Toub [Thu, 7 May 2020 10:08:20 +0000 (06:08 -0400)]
Improve HTTP/2 scaling performance (#35694)
* Rearrange Http2Connection.SendHeadersAsync to increase scale
Many concurrent streams are currently bottlenecking in SendHeadersAsync. They:
- take the headers serialization lock
- request a stream credit
- serialize all their headers to a buffer stored on the connection
- take the write lock
- write out the headers
- release the write lock
- release the headers serialization lock
Instead of using a header buffer pooled on the connection, we can instead temporarily grab ArrayPool buffers into which we serialize the headers, which allows us to eliminate the headers serialization lock. With that, we get:
- request a stream credit
- serialize the headers to a pooled buffer
- take the write lock
- write out the headers
- release the write lock
This has a significant impact on the ability for many concurrent streams to scale, as all of the header serialization work happens outside of the lock.
* Use ContinueWith instead of async/await in Ignore/LogExceptions
The current implementation will always invoke the continuation, even in the majority case where there's no failure (and if there is a failure, it's cheaper not to throw it again). We can avoid that and decrease both overhead and allocation in the common case.
* Remove CopyToAsync wrapping task from SendRequestBodyAsync
* Reduce contention on semaphore locks
We're seeing a lot of contention trying to acquire the monitors inside of semaphore slims, even when the contention is to release the semaphore, which should entail minimal contention (and delay of a release will just cause more contention). We can use a small interlocked gate to add a fast path.
* Stop clearing ArrayBuffer's pooled byte arrays
We already weren't clearing as the array grew, nor are we clearing in most other places in the library. It's not clear why we were clearing in this one spot, but the zero'ing is showing up meaningfully in profiles.
* Add several gRPC known headers
* Avoid dictionary lookup in HttpMethod.Normalize
* Avoid allocating strings for known Content-Types
* Combine AcquireWriteLockAsync into StartWriteAsync
There's not a good reason to keep them separate, and StartWriteAsync is AcquireWriteLockAsync's only caller.
* Remove GetCancelableWaiterTask async method
We can achieve the same thing without the extra async method by putting the cleanup logic into the awaiter's GetResult.
* Address PR feedback
Cédric Luthi [Thu, 7 May 2020 09:12:29 +0000 (11:12 +0200)]
Simplify build on macOS (#35570)
* Check for OpenSSL (and pkg-config) in the check_prereqs() function
* Simplify OpenSSL installation instructions
* Automatically pick the OpenSSL version installed by Homebrew by exporting the proper PKG_CONFIG_PATH environment variable
* Improve the error message if cmake can't find OpenSSL
The previous instructions were asking the user to add symbolic links inside /usr/local/lib/ and /usr/local/lib/pkgconfig/ for OpenSSL related files. There is no need for a complicated setup with symbolic links when the PKG_CONFIG_PATH environment variable points to the right pkgconfig, which is now done in build-commons.sh.
Co-Authored-By: Jan Kotas <jkotas@microsoft.com>
Co-Authored-By: Jeremy Barton <jbarton@microsoft.com>
Aaron Robinson [Thu, 7 May 2020 05:10:52 +0000 (22:10 -0700)]
Reenable unmanagedcallersonly related tests (#35926)
* Reenable UnmanagedCallersOnlyAttribute tests
* Reenable Vector2_3_4 tests.
* Reenable MarshalSeqStruct/ReversePInvoke tests.
Anirudh Agnihotry [Thu, 7 May 2020 05:10:09 +0000 (22:10 -0700)]
using the new sdk hook (#35799)
* using the new sdk home
* moving file to eng
Santiago Fernandez Madero [Thu, 7 May 2020 01:09:52 +0000 (18:09 -0700)]
Add app-local support for ICU (#35383)
* Add app-local support for ICU
* Fix android build
* Fix Unix distros with an old ICU version
* PR Feedback
* PR Feedback
* Add ICU data validation when initializing
* Fix linux build
Stephen Toub [Thu, 7 May 2020 01:02:49 +0000 (21:02 -0400)]
Stop spamming System.Net.Http.Tests output with HTTP/2 skipped tests (#35913)
There are a bunch of tests that don't make sense on HTTP/2, but end up executing because of how our tests are structured. As a result, the test itself checks whether HTTP/2 is applicable and bails if it isn't. Currently some of these are bailing by throwing a SkipTestException, which results in a message being output on the console. Such messages are meant for tests that can be run in some circumstances, e.g. a stress test that needs an environment variable set. They aren't needed when a test is never going to run.
I also marked the stress tests as outerloop so they don't spam the console when just running innerloop.
Tanner Gooding [Thu, 7 May 2020 00:54:39 +0000 (17:54 -0700)]
Have SIMDIntrinsicUpperSave and SIMDIntrinsicUpperRestore set a baseType if one can't otherwise be determined (#35899)
Tanner Gooding [Thu, 7 May 2020 00:54:27 +0000 (17:54 -0700)]
Ensure we account for intrinsics which have gtType=TYP_SIMD16 but gtSIMDSize=32 (#35904)
Santiago Fernandez Madero [Wed, 6 May 2020 22:00:17 +0000 (15:00 -0700)]
Disable JIT.HardwareIntrinsics NotSupported runtime tests on Mono (#35901)
* Disable JIT.HardwareIntrinsics NotSupported runtime tests
* Only disable on Mono
Sung Yoon Whang [Wed, 6 May 2020 20:45:39 +0000 (13:45 -0700)]
Fix ETWFireEvent macro to emit events correctly (#35737)
David Wrighton [Wed, 6 May 2020 20:26:53 +0000 (13:26 -0700)]
Reduce allocated object cost of debug info (#35873)
Reduce allocated object cost of debug info, by converting it into its final form as its extracted from the JIT and not as its emitted into the file. Also has a small benefit of increased parallelization as its now created in a parallel portion of the build instead of a sequential portion of the build. Overall size win of 0.5% observed.
David Wrighton [Wed, 6 May 2020 20:26:14 +0000 (13:26 -0700)]
Add methods to the compilation graph without a full Entrypoint (#35879)
* Add methods to the compilation graph without a full Entrypoint
- There is quite a lot of content needed to provide an actual entrypoint for a method
- These cases don't actually require the entrypoint, they simple express a desire for the method to be compiled if possible
- This change both reduces the final file size substantially as well as reduces the memory footprint of the compiler
Egor Bogatov [Wed, 6 May 2020 19:00:31 +0000 (22:00 +0300)]
RyuJIT: x*2 -> x+x; x*1 -> x (fp) (#33024)
* Optimize "x * 2" to "x + x" for floats
* Add tests
* Fix typo
* Address feedback
* Move to morph.cpp, also add "x*1" optimization
* clean up
* clean up
* update op2
* Fix incorrect "fgMakeMultiUse" usage
* update op1
* Address feedback
* Add opts.OptimizationEnabled()
Gleb Balykov [Wed, 6 May 2020 18:35:03 +0000 (21:35 +0300)]
Fix Linux x86 build error related to #35552 (#35892)
Anton Lapounov [Wed, 6 May 2020 18:24:13 +0000 (11:24 -0700)]
Fix GC hole in ReadyToRun code on ARM64 (#35858)
TransitionBlock.IsRetBuffPassedAsFirstArg must return false for ARM64.
Egor Bogatov [Wed, 6 May 2020 18:13:33 +0000 (21:13 +0300)]
Add basic OpenSSL support to Android (#35893)
Temp solution to enable `System.Security.Cryptography.Native` for Android while we figure out how to build/consume it properly.
#### Steps to enable:
1) Download and unzip `https://maven.google.com/com/android/ndk/thirdparty/openssl/1.1.1g-alpha-1/openssl-1.1.1g-alpha-1.aar`
2) Set these env variables:
```
export AndroidOpenSslHeaders="/Users/egorbo/prj/openssl-1.1.1g-alpha-1.aar/prefab/modules/ssl/include"
export AndroidOpenSslCryptoLib="/Users/egorbo/prj/openssl-1.1.1g-alpha-1.aar/prefab/modules/crypto/libs/android.x86_64/libcrypto.so"
export AndroidOpenSslLib="/Users/egorbo/prj/openssl-1.1.1g-alpha-1.aar/prefab/modules/ssl/libs/android.x86_64/libssl.so"
```
(make sure you use the right ABI in the paths, e.g. `android.x86_64` for `-arch x64` or `android.arm64-v8a` for `-arch arm64`)
3) build repo normally, e.g.
```
./build.sh -os Android -subset Mono+Libs
```
I am preparing a PR to update the docs and will include these temp hints.
Marie Píchová [Wed, 6 May 2020 18:06:19 +0000 (20:06 +0200)]
Moved NoWriteNoSeekStreamContent to WinHttpHandler. (#35898)
imhameed [Wed, 6 May 2020 17:49:13 +0000 (10:49 -0700)]
Enable more formerly-failing-on-mono tests. (#35849)
See:
- https://github.com/dotnet/runtime/issues/34387,
- https://github.com/dotnet/runtime/issues/34384, and
- https://github.com/dotnet/runtime/issues/34386.
David Wrighton [Wed, 6 May 2020 17:35:48 +0000 (10:35 -0700)]
Improve Crossgen2 performance via sorting improvements (#35870)
* Improve Crossgen2 performance
- Crossgen2 makes extensive use of sorting to achieve determinism
- Replace most signifcant sort operations with a parallel mergesort
- These sorts use rather expensive comparison functions and as such the standard sort algorithm which is tuned more to reduce memory usage than reduce comparisons is not ideal, and merge sort works better
- Primarily sorting is performed during the previously single threaded portions of the product. Adding parallelism yields easy wins
- In a large benchmark overall compilation performance improved from 106 seconds to 82 seconds
- Implementation makes extensive use of generics to share the implementation across the various apis that are used for sorting in crossgen2
- Add Detection on of duplicates in sort algorithm
- Perf result compiling a large set of assemblies
- Using standard sorts 121.6 seconds
- Using parallel merge sort 96.9 seconds
Carol Eidt [Wed, 6 May 2020 17:31:29 +0000 (10:31 -0700)]
More SuperPmi Tweaks (#35875)
* Add more queries for SuperPmi
* Support crossgen collection
Viktor Hofer [Wed, 6 May 2020 17:03:55 +0000 (19:03 +0200)]
Re-enable xunit.console code coverage (#35894)
Re-enable xunit console code coverage measurement until
https://github.com/coverlet-coverage/coverlet/issues/834 is fixed.
Alexis Christoforides [Wed, 6 May 2020 15:14:06 +0000 (11:14 -0400)]
[mono] Reintroduce an internal Marshal class method used by the runtime (#34900)
* [mono] Reintroduce an internal Marshal method used by the runtime
* Reenable test that is failing for a different reason now
See https://github.com/dotnet/runtime/issues/34374
Egor Bogatov [Wed, 6 May 2020 12:43:57 +0000 (15:43 +0300)]
[mono] Enable XHarness CLI for Android tests (#35786)
Stephen Toub [Wed, 6 May 2020 11:55:15 +0000 (07:55 -0400)]
Fix nullable warnings in HttpStress (#35862)
Stephen Toub [Wed, 6 May 2020 11:54:17 +0000 (07:54 -0400)]
Remove duplicate tests from System.Linq.Tests (#35840)
Stephen Toub [Wed, 6 May 2020 11:53:42 +0000 (07:53 -0400)]
Remove duplicate tests from System.IO.FileSystem.Tests (#35842)
Viktor Hofer [Wed, 6 May 2020 11:53:21 +0000 (13:53 +0200)]
Change netcoreapp5.0 to net5.0 (#35176)
* Change netcoreapp5.0 to net5.0
* Remove tfm downgrades
* Rename S.R.CS.Unsfae include folder
Santiago Fernandez Madero [Wed, 6 May 2020 10:30:53 +0000 (03:30 -0700)]
Update arcade from build
20200505.6 (#35871)
* Update arcade from build
20200505.6
* Fix package testing, settings.targets where not found due to updated tfm
* Stop invoking test target if SkipTests is false in installer
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
monojenkins [Wed, 6 May 2020 09:53:12 +0000 (05:53 -0400)]
[interpreter] Fix incorrect arg storage for arm softfp interpreter (#35643)
In get_call_info, IS_HARD_FLOAT is checked to switch between using the FP registers and the GP registers. This was not done in arg_get_storage, which was always using the hard float registers. This would mean parameters to the native trampoline wouldn't get copied correctly, and return values would be incorrect as well.
I can't find a way to add this to tests, since no softfp test systems seem to be built. I'm working on testing the use cases I can think of on my softfp system just to be sure.
Any assignments to type RegTypeHFA were locked behind a IS_HARD_FLOAT check as well, so I think its safe to modify that case too.
Fixes mono/mono#14591
Peter Sollich [Wed, 6 May 2020 09:37:03 +0000 (02:37 -0700)]
Fixes to EtwCallback and EtwCallbackCommon: (#35793)
* Fixes to EtwCallback and EtwCallbackCommon:
- Windows only: only call GCHeapUtilities::RecordEventStateChange for EVENT_CONTROL_CODE_ENABLE_PROVIDER or EVENT_CONTROL_CODE_DISABLE_PROVIDER, *not* for EVENT_CONTROL_CODE_CAPTURE_STATE.
- Only call GCHeapUtilities::RecordEventStateChange for DotNETRuntime and DotNETRuntimePrivate providers
- Windows only: Consolidate level and keywords between EventPipe and ETW, so that disabling an event on one side does not disable it for the other side, if the other side is still interested in it.
Steve MacLean [Wed, 6 May 2020 05:47:14 +0000 (01:47 -0400)]
Revert "Restore Seperate test builds, but fix broken pipe (#35378)" (#35868)
* Revert "Restore Seperate test builds, but fix broken pipe (#35378)"
This reverts commit
6d64040a3a577e097e8d06ef72c10f700a17bf9c.
* Add issues related to CI coverage outage
Tanner Gooding [Wed, 6 May 2020 04:01:42 +0000 (21:01 -0700)]
Adding a clarifying comment as to why HWIntrinsicInfo::lookupIval returns an inverted comparison op (#35867)
Vladimir Sadov [Wed, 6 May 2020 01:05:50 +0000 (18:05 -0700)]
Build an apphost with hostfxr and hostpolicy linked in (#35368)
* hostfxr: Build most of hostfxr as a static library
This is part of the work to create an apphost that bundles both hostfxr
and hostpolicy. The main distinction between the static and shared
versions of hostfxr is that the static version contains a hostpolicy
resolver that references the hostpolicy symbols directly rather than
loading them from a DLL.
* hostpolicy: Build as a static library
This change is part of the work to enable an apphost that bundles both
hostfxr and hostpolicy. There's no distinction between hostpolicy
that's built as a shared library and as a static library: the shared
library is built by linking an empty object file with the static
library.
* corehost: Allow linking of hostfxr and hostpolicy with apphost
Provide a hostfxr_iface class, that abstracts how the hostfxr functions called
by the early stage in the hosting layer is resolved.
* dotnet: Teach the muxer binary about hostfxr_iface
* apphost: Teach apphost about hostfxr_iface
This provides two implementations of hostfxr_iface: one for the static
apphost, which bundles hostfxr and hostpolicy, and another for the
conventional apphost, which loads them dynamically on startup.
* Add exports for hostfxr and policy
* Exports for unix
* EXPORTS_LINKER_OPTION
* use generateversionscript.awk from ENG
* Move fxr files out of static
* Fixes for Linux
* Fix for win-x86
* move HEADERS next to SOURCES similarly to other files.
* PR feedback (simplifying hostpolicy_resolver::try_get_dir for static host)
* Publish static_apphost to Microsoft.NETCore.App.Host
* bind to entry points without probing, when in a static host.
* Add a test case
* renamed hostfxr_iface --> hostfxr_resolver_t
* renamed shared --> standalone
* rename static_apphost --> singlefilehost
* Signing exclusions for singlefilehost
* switched StaticHost tst to a different asset (mostly a copy of StandaloneApp)
Co-authored-by: Leandro Pereira <leandro.pereira@microsoft.com>
Co-authored-by: Swaroop Sridhar <swaroop.sridhar@microsoft.com>
Nathan Ricci [Wed, 6 May 2020 00:57:26 +0000 (20:57 -0400)]
Create CI Lane for Mono in Interpreter Mode running the runtime tests (#35648)
Add CI lane for mono interpreter.
Kunal Pathak [Tue, 5 May 2020 23:44:43 +0000 (16:44 -0700)]
ARM64 intrinsic support for Vector64.Create() and Vector128.Create() (#35590)
* Make Vector64.Create() that takes multiple arguments use ARM64 intrinsic
* Make Vector128.Create() that takes multiple arguments use ARM64 intrinsic
* Intrinsify Vector64.Create() that takes single argument
* Intrinsify Vector64.Create() that takes single argument
* Fix edge case where int.MaxValue was failing if used as immediate
Santiago Fernandez Madero [Tue, 5 May 2020 20:36:55 +0000 (13:36 -0700)]
Disable NonDisposedSocket_SafeHandlesCollected test (#35847)
Stephen Toub [Tue, 5 May 2020 18:22:13 +0000 (14:22 -0400)]
Reduce unnecessary Regex match attempts for expressions beginning with atomic loops (#35824)
* Reduce unnecessary Regex match attempts for expressions beginning with atomic loops
* Fix corner-case overflows in ComputeMinLength
Aaron Robinson [Tue, 5 May 2020 18:03:02 +0000 (11:03 -0700)]
UnmanagedCallersOnlyAttribute in load_assembly_and_get_function_pointer (#35763)
* Add support for UnmanagedCallersOnlyAttribute in the load_assembly_and_get_function_pointer API.
* Handle x86 of UnmanagedCallersOnly in managed GetFunctionPointer() API.
Eirik Tsarpalis [Tue, 5 May 2020 17:55:22 +0000 (18:55 +0100)]
Migrate CBOR classes to System.Formats.Cbor namespace (#35808)
* Migrate CBOR classes to System.Formats.Cbor solution
* move cbor source files back S.Security.Cryptography.Encoding
* address feedback
* remove all diffs from product csproj
* move files to original locations
* make cbor production classes public
Stephen Toub [Tue, 5 May 2020 17:22:46 +0000 (13:22 -0400)]
Remove duplicate tests from System.Linq.Parallel.Tests (#35838)
Stephen Toub [Tue, 5 May 2020 16:58:29 +0000 (12:58 -0400)]
Disable preEnumerateTheories for running tests (#35837)
dotnet-maestro[bot] [Tue, 5 May 2020 15:50:54 +0000 (15:50 +0000)]
[master] Update dependencies from mono/linker dotnet/xharness (#35833)
* Update dependencies from https://github.com/mono/linker build
20200504.2
- Microsoft.NET.ILLink.Tasks: 5.0.0-preview.3.20230.3 -> 5.0.0-preview.3.20254.2
* Update dependencies from https://github.com/dotnet/xharness build
20200505.2
- Microsoft.DotNet.XHarness.Tests.Runners: 1.0.0-prerelease.20254.1 -> 1.0.0-prerelease.20255.2
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Kevin Jones [Tue, 5 May 2020 14:42:20 +0000 (10:42 -0400)]
Fix duplicate theories warning in S.S.C.Algorithms
Larry Ewing [Tue, 5 May 2020 14:01:53 +0000 (09:01 -0500)]
Merge pull request #35813 from monojenkins/sync-pr-19704-from-mono
[wasm][debugger] Fix type argument
Stefan Nikolei [Tue, 5 May 2020 13:51:22 +0000 (15:51 +0200)]
removed unused vars from System.DirectoryServices (#34161)
* removed unused vars from System.DirectoryServices
removed unused vars. added _ to unused return values
* use discard in GlobalCatalog instead of deleting
* removed unused var in ConfigSet
dotnet-maestro[bot] [Tue, 5 May 2020 13:37:21 +0000 (09:37 -0400)]
Update dependencies from https://github.com/dotnet/llvm-project build
20200504.1 (#35834)
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: 6.0.1-alpha.1.20224.3 -> 6.0.1-alpha.1.20254.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: 6.0.1-alpha.1.20224.3 -> 6.0.1-alpha.1.20254.1
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: 6.0.1-alpha.1.20224.3 -> 6.0.1-alpha.1.20254.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: 6.0.1-alpha.1.20224.3 -> 6.0.1-alpha.1.20254.1
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: 6.0.1-alpha.1.20224.3 -> 6.0.1-alpha.1.20254.1
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: 6.0.1-alpha.1.20224.3 -> 6.0.1-alpha.1.20254.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Michal Strehovský [Tue, 5 May 2020 13:34:14 +0000 (15:34 +0200)]
Synchronize SR.cs (#35830)
Ports .NET Native change https://github.com/dotnet/corert/commit/
0ac83cb8d6f9ab10df616a608fcf6fdfa6eabe2b to the Runtime repo.
Vladimir Sadov [Tue, 5 May 2020 12:50:50 +0000 (05:50 -0700)]
Enable test for MemoryBarrierProcessWide on arm64. Update comments. (#35817)
Linux kernels that we run in the lab should have reliable implementation of MemoryBarrierProcessWide now
Viktor Hofer [Tue, 5 May 2020 11:44:41 +0000 (13:44 +0200)]
Move test results into TestResults directory (#35829)
and avoid unique test results name as VSTest has issues with that.
Disabling capturing blame mode dumps at the moment until we have
cross-plat support for it.
Cleaning the results directory if the code coverage data collector is
used as there's currently not an easy way to distinguish between a new
and an old coverage results file. See tracking issue.
Zoltan Varga [Tue, 5 May 2020 11:33:23 +0000 (07:33 -0400)]
Preserve fields of AssemblyLoadContext since its accessed by runtime code through the MonoManagedAssemblyLoadContext structure. (#35792)
monojenkins [Tue, 5 May 2020 09:04:50 +0000 (05:04 -0400)]
Add soft debugger support to s390x (#35781)
* Add soft debugger support to s390x
- Implement the sdb trampoline
- Big-endian fixes for ppdb debugger:
- Fix utf16 strings
- Fix decoding of ImageDebugDirectory structures
- New implementation of OP_SEQ_POINT
- Enable successful unwind by defining markpoints
- Implement mono_arch_setup_resume_sighandler_ctx
- Implement unwind ops in epilog
* Fix delegate-invoke processing
- Handle up to 10 parameters
- Use sigparam information to correctly "slide" parameters
* Fix floating point negative zero for s390x
- Add a new instruction for use in OP_RxCONST -0
- Check for -0 in constant
* Minor indentation fixes
* Fix atomic add implementation
* Check for additional hardware facilities
Jan Vorlicek [Tue, 5 May 2020 08:31:41 +0000 (10:31 +0200)]
Merge pull request #35794 from janvorli/mark-event-test-unloadability-incompatible
Mark eventsourceerror test as unloadability incompatible
Swaroop Sridhar [Tue, 5 May 2020 06:33:34 +0000 (23:33 -0700)]
BundleProbe: Disable a test to keep rolling builds green. (#35828)
BundleProbe() neagtive tests are failing on Linux-musl-x64-release. #35755
Temporarily disable the tests to keep rolling builds green until the bug is fixed.
Simon Nattress [Tue, 5 May 2020 05:55:27 +0000 (22:55 -0700)]
Compile SERP (#35729)
Add R2RTest support for compiling specific larger applications.
Bruce Forstall [Tue, 5 May 2020 05:46:56 +0000 (22:46 -0700)]
Fix error with superpmi.py if `-output_mch_path` not used (#35822)
Sergey Andreenko [Tue, 5 May 2020 05:18:33 +0000 (22:18 -0700)]
Don't retype struct as primitive types in import. (#33225)
* Add two tests.
* Don't retype struct returns x64 windows.
* Turn on for Windows x64 by default for tests.
* fix a few typos/leftovers.
* Disable for Win64 by default.
There are 2 issues that prevent it from being enbaled by default. They are causing significant asm regressions.
Levi Broderick [Tue, 5 May 2020 04:59:46 +0000 (21:59 -0700)]
Address some new Roslyn nullability warnings (#35782)
Mike McLaughlin [Tue, 5 May 2020 04:00:10 +0000 (21:00 -0700)]
Fix a couple of Windows createdump issues (#35820)
* Fix ERROR_PARTIAL_COPY retry. MiniDumpWriteDump sets the last error to the HRESULT instead of win32 error code
* Fix createdump crash triggering on x86 runtime. The initialization code
was in the wrong place and not being called on the x86 coreclr.dll. Moved
it to early in EEStartupHelper.
Elinor Fung [Tue, 5 May 2020 01:57:40 +0000 (18:57 -0700)]
Separate registration for global ComWrappers instance for tracker support and marshalling (#35681)
Swaroop Sridhar [Tue, 5 May 2020 01:36:10 +0000 (18:36 -0700)]
BundleProbe: Disable a test to keep rolling builds green. (#35811)
BundleProbe("hostpolicy.dll") test is failing on Linux-musl-x64-release.
https://github.com/dotnet/runtime/issues/35755
Temporarily disable the test to keep rolling builds green until the bug is fixed.
Santiago Fernandez Madero [Tue, 5 May 2020 01:34:15 +0000 (18:34 -0700)]
Reduce usage of Win7 and Win8 queues, move to CI and add CI runs in Win arm/arm64 (#35690)
* Reduce usage of Win7 and Win8 queues, move to CI and add CI runs in Win arm/arm62
* Disable tests blocking clean rolling build
* Disable more failing tests
* Disable more failing tests
Matt Galbraith [Tue, 5 May 2020 00:27:31 +0000 (17:27 -0700)]
Move FreeBSD builds to DncEng Pool provider builds (#35537)
* Move FreeBSD builds to DncEng Pool provider builds
* PR feedback
* Update xplat-setup.yml
From reading @wfurt 's commit it looks like osGroup is actually FreeBSD here. FreeBSD_x64 seems to be ignored.
Tanner Gooding [Tue, 5 May 2020 00:01:36 +0000 (17:01 -0700)]
Adding basic support for recognizing and handling SIMD intrinsics as HW intrinsics (#35421)
* Adding basic support for recognizing and handling SIMD intrinsics as HW intrinsics
* Applying formatting patch
* Fixing a preprocessor concatenation for non windows
* Add a default case to workaround a compiler warning on FreeBSD
* Fixing a noway_assert to include GT_HWINTRINSIC
* Fixing some asserts that were being triggered
* Use getSIMDVectorRegisterByteLength
* Applying formatting patch
* Fixing ARM64 to use the actual type size
* Removing the [Intrinsic] attribute from some Vector2/3/4 methods which aren't intrinsic
* Updating SSE/SSE2 CompareGreaterThan and related functions to be table driven
* Fixing the SimdAsHWIntrinsic relational operations to match the GT_SIMD behavior
* Ensure that GT_HWINTRINSIC fixes the type for certain TYP_SIMD8
* Fixing the SimdAsHWIntrinsic Vector<int>.op_Multiply support to match the GT_SIMD behavior
* Fixing the SimdAsHWIntrinsic Vector2/3 Division to match the GT_SIMD behavior
* Porting Abs, Min, and Max to use the SimdAsHWIntrinsic support
* Minor fixups to the SSE2 codepath
* Applying formatting patch
* Fixing a check in lowering
* Mark SimdAsHWIntrinsic nodes so we can lookup the correct handle
* Adding the 3 operand overload for gtNewSimdAsHWIntrinsicNode
* Fixing BuildHWIntrinsic to properly take RMW into account
* Fixing the rationalize handling of GT_HWINTRINSIC to account for SIMD vs non-SIMD nodes
* Fixing the importer to not create SIMD nodes if featureSIMD is disabled
* Fixing the SSE4.2 implementation of CompareLessThan<long>
* Preserve the base type for subtraction/addition operations
* Applying formatting patch
* Responding to PR feedback
* Fixing a copy/paste error under reinterpret cast
* Fixing abs to expect 1 argument
* Adding method comment headers that were missing
* Removing unused table entries from SimdAsHWIntrinsic for Vector2/3/4
* Ensure we catch intrinsics from the Vector static class
* Fixing SSSE3_Abs and AVX2_Abs to get the base type from the first argument
* Ensure we adjust the class handle used for intrinsics from the Vector static class
* Ensure we populate the handle cache for clsHnd even if it isn't used
* Fix where we grab the base type from for the static Vector class
* Fixing ConditionalSelect and improving the messages used for impCloneExpr in SimdAsHWIntrinsic
* Ensure we clone the constVectorDup before using it
* Applying formatting patch
Maoni Stephens [Mon, 4 May 2020 23:05:20 +0000 (16:05 -0700)]
fix a regression introduced by Refactor handling of non-SOH generations (#1688)
this is supposed to get the user allocations, before #1688 it was getting gen0 and gen3. with the refactor it should get gen0 and all UOH allocations.
Miha Zupan [Mon, 4 May 2020 22:47:24 +0000 (00:47 +0200)]
Remove dead field in Uri (#33044)
* Remove dead _dnsSafeHost field on Uri
* Make Uri._iriParsing a property
* Simplify Uri OriginalString getter
* Simplify Uri.ToString()
* Remove duplicate IriParsing checks
* Remove UseOrigUncdStrOffset flag
* Cache IriParsing lookup to a local in CheckCanonical
* Update comments referring to m_ fields
* Remove more redundant checks
* Sort usings
* Remove unnecesarry AggressiveInlining attribute
Nathan Ricci [Mon, 4 May 2020 22:18:45 +0000 (18:18 -0400)]
Disable failing stack overflow test on mono. (#35812)
Santiago Fernandez Madero [Mon, 4 May 2020 22:17:14 +0000 (15:17 -0700)]
CultureInfo and CultureData use OS information to initialize culture routines on Windows (#35680)
* CultureInfo and CultureData use OS information to initialize culture routines on Windows
* PR Feedback
* Bring back removed assert
* Remove non meaninful asserts
* PR Feedback
Andrew Au [Mon, 4 May 2020 21:26:20 +0000 (14:26 -0700)]
Make corerun exit code more useful (#35684)
Egor Bogatov [Mon, 4 May 2020 21:06:17 +0000 (00:06 +0300)]
Optimize Vector4.Lerp (#35525)
* Optimize Vector4.Lerp
* Implement for Vector2 and Vector4
* Rollback Vector3
lewing [Mon, 4 May 2020 21:02:48 +0000 (21:02 +0000)]
[wasm][debugger] Fix type argument
fix numbers inspection in js
Matt Warren [Mon, 4 May 2020 20:24:51 +0000 (21:24 +0100)]
Fix-up styling to make the doc more readable (#35803)
Also remove unneeded '\' characters
Ganbarukamo41 [Mon, 4 May 2020 17:25:37 +0000 (02:25 +0900)]
Insert missing break (#35713)
Jan Vorlicek [Mon, 4 May 2020 15:14:06 +0000 (17:14 +0200)]
Mark eventsourceerror test as unloadability incompatible
This test was recently added and it has the same problem with
unloadability as the other tests marked as incompatible with
unloadability in https://github.com/dotnet/coreclr/pull/25954.
Anirudh Agnihotry [Mon, 4 May 2020 15:12:23 +0000 (08:12 -0700)]
Remove TargetsNet* from the runtime repo (#35589)
* feedbacl from previous time
* remove TargetsNet* from ItemGroup
* removing targetFramework from .targets
Ryan Lucia [Mon, 4 May 2020 14:56:03 +0000 (10:56 -0400)]
[runtime] Mono ALC embedding: use public types, correct hook signature (#35515)
dotnet-maestro[bot] [Mon, 4 May 2020 14:44:19 +0000 (14:44 +0000)]
Update dependencies from https://github.com/dotnet/xharness build
20200504.1 (#35787)
- Microsoft.DotNet.XHarness.Tests.Runners: 1.0.0-prerelease.20230.6 -> 1.0.0-prerelease.20254.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Jeremy Koritzinsky [Mon, 4 May 2020 14:13:50 +0000 (07:13 -0700)]
Remove deprecated build scripts. (#35115)
Jan Vorlicek [Mon, 4 May 2020 13:02:40 +0000 (15:02 +0200)]
Merge pull request #35667 from janvorli/fix-stackoverflow-report-at-native
Fix Unix stack overflow trace logging for native failure locations
Viktor Hofer [Mon, 4 May 2020 09:57:51 +0000 (11:57 +0200)]
Enable dotnet test in libraries (#35285)
* Enable dotnet test
* Update docs
* Use vstest in F5 scenarios
* Make dotnet test without framework switch work
* Code cleanup
* Only run code coverage conditionally
* Fix F5 condition for netcoreapp
* Downgrade sdk to check for helix submission failures
* Fix wrong conditions
* Add blame data collector
Viktor Hofer [Mon, 4 May 2020 09:45:15 +0000 (11:45 +0200)]
Update SDK and remove RID calculation in favor of RuntimeInformation (#35538)
* Remove GetTargetMachineInfo from runtime
* Update bootstrapped SDK
* Remove unused prop
* Rename RuntimeRID to HostRuntimeIdentifier
* Remove yml tmp copying
* Update SDK
* Move RuntimeOS into libraries
* Fix RuntimeOS move
Vlad Brezae [Mon, 4 May 2020 09:23:59 +0000 (12:23 +0300)]
[interp] Move label outside of main loop (#35778)
Wasm has control flow limitations which don't go well with gotos. Move label outside of main loop because it translates to very poor wasm code. Other gotos don't seem to negatively impact instruction dispatch code, so leave them alone, for now ..
Vladimir Sadov [Mon, 4 May 2020 00:10:09 +0000 (17:10 -0700)]
Incomplete read ordering in CastCache::Get (#35597)
* Incomplete read ordering in CastCache::Get
* Use LoadBarrier on the managed side as well.
* Rename to ReadMemoryBarrier
* PR feedback in the JIT
Stephen Toub [Sun, 3 May 2020 21:49:22 +0000 (17:49 -0400)]
Fix ManagedWebSocket.CloseAsync cancellation (#35715)
We allow at most one pending receive operation on a web socket, and CloseAsync needs to both send and receive, so if there's a pending receive already, it just reuses / waits for that existing one, which records if it sees a close frame. However, if the close operation is initiated with a cancellation token that's different from the cancellation token the receive operation was initiated with, the close won't respect the supplied cancellation token because it's just waiting on the existing receive. The fix is simply to register with this new cancellation token as well when there's an existing receive that we wait on.
Viktor Hofer [Sun, 3 May 2020 19:28:25 +0000 (21:28 +0200)]
Add error handling in build.sh (#35774)
Also pass help subset if it isn't set to invoke the help message.
Tarek Mahmoud Sayed [Sun, 3 May 2020 19:18:19 +0000 (12:18 -0700)]
Address the System.Diagnostics Feedback (#35582)
* Address the System.Diagnostics Feedback
* Address the feedback of the feedback :-)
* Use lock instead of InterlockedExchange+SpinWait
* Remove System.Linq usage
* More feedback addressing
* Fix compilation
Ben Adams [Sun, 3 May 2020 18:41:25 +0000 (19:41 +0100)]
SpanHelpers use nuint rather than byte* and IntPtr (#35765)
* SpanHelpers use nuint rather than byte* and IntPtr
* uint cast BitOperations
* Cast to uint before casting to nuint
Koundinya Veluri [Sun, 3 May 2020 18:13:19 +0000 (14:13 -0400)]
Parallelize epoll events on thread pool and process events in the same thread (#35330)
* Parallelize epoll events on thread pool and process events in the same thread
* Use interlocked write instead of volatile write
* Upon epoll notification for reads and writes to a socket, queue read work and process write work in same thread
* Readonly for Event struct and rename struct to SocketIOEvent
* Track and speculatively handle epoll events for synchronous operations on the epoll thread
* Prevent event scheduling threads from becoming long-running
* Non-speculatively schedule a work item to process epoll events upon first dequeue, delegating scheduling of more work items to other threads
monojenkins [Sun, 3 May 2020 17:14:33 +0000 (13:14 -0400)]
[Wasm] Additional signatures for SkiaSharp interop (#35595)
This change adds the set of signatures required for SkiaSharp to work untouched using the signatures already provided for the existing platform.
This change should not be required, as it is very specific to a library set. The m2n generator should allow for an external set of cookies, provided by the additional libraries linked by the packager. See https://github.com/mono/mono/issues/19670 for a more detailed issue on a possible solution.
/cc @mattleibow
---
Here's the list of enabled methods by this change:
```
VIIFFII :
System.Void SkiaSharp.SkiaApi::sk_canvas_draw_arc(System.IntPtr,SkiaSharp.SKRect*,System.Single,System.Single,System.Boolean,System.IntPtr)
VIFFFI :
System.Void SkiaSharp.SkiaApi::sk_canvas_draw_circle(System.IntPtr,System.Single,System.Single,System.Single,System.IntPtr)
VIFFFFI :
System.Void SkiaSharp.SkiaApi::sk_canvas_draw_line(System.IntPtr,System.Single,System.Single,System.Single,System.Single,System.IntPtr)
VIFFI :
System.Void SkiaSharp.SkiaApi::sk_canvas_draw_point(System.IntPtr,System.Single,System.Single,System.IntPtr)
VIFI :
System.Void SkiaSharp.SkiaApi::sk_codec_get_scaled_dimensions(System.IntPtr,System.Single,SkiaSharp.SKSizeI*)
IIIIIFII :
System.IntPtr SkiaSharp.SkiaApi::sk_font_break_text(System.IntPtr,System.Void*,System.IntPtr,SkiaSharp.SKTextEncoding,System.Single,System.Single*,System.IntPtr)
FII :
System.Single SkiaSharp.SkiaApi::sk_font_get_metrics(System.IntPtr,SkiaSharp.SKFontMetrics*)
VIIIIF :
System.Void SkiaSharp.SkiaApi::sk_font_get_xpos(System.IntPtr,System.UInt16*,System.Int32,System.Single*,System.Single)
FIIIIII :
System.Single SkiaSharp.SkiaApi::sk_font_measure_text(System.IntPtr,System.Void*,System.IntPtr,SkiaSharp.SKTextEncoding,SkiaSharp.SKRect*,System.IntPtr)
VIIIFFII :
System.Void SkiaSharp.SkiaApi::sk_text_utils_get_path(System.Void*,System.IntPtr,SkiaSharp.SKTextEncoding,System.Single,System.Single,System.IntPtr,System.IntPtr)
IFFFFIIII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_arithmetic(System.Single,System.Single,System.Single,System.Single,System.Boolean,System.IntPtr,System.IntPtr,System.IntPtr)
IIIFFII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_distant_lit_diffuse(SkiaSharp.SKPoint3*,System.UInt32,System.Single,System.Single,System.IntPtr,System.IntPtr)
IIIFFFII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_distant_lit_specular(SkiaSharp.SKPoint3*,System.UInt32,System.Single,System.Single,System.Single,System.IntPtr,System.IntPtr)
IFFFFIIII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_drop_shadow(System.Single,System.Single,System.Single,System.Single,System.UInt32,SkiaSharp.SKDropShadowImageFilterShadowMode,System.IntPtr,System.IntPtr)
IIIFFIIIII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_matrix_convolution(SkiaSharp.SKSizeI*,System.Single*,System.Single,System.Single,SkiaSharp.SKPointI*,SkiaSharp.SKMatrixConvolutionTileMode,System.Boolean,System.IntPtr,System.IntPtr)
IIIFFII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_point_lit_diffuse(SkiaSharp.SKPoint3*,System.UInt32,System.Single,System.Single,System.IntPtr,System.IntPtr)
IIIFFFII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_point_lit_specular(SkiaSharp.SKPoint3*,System.UInt32,System.Single,System.Single,System.Single,System.IntPtr,System.IntPtr)
IIIFFIFFII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_spot_lit_diffuse(SkiaSharp.SKPoint3*,SkiaSharp.SKPoint3*,System.Single,System.Single,System.UInt32,System.Single,System.Single,System.IntPtr,System.IntPtr)
IIIFFIFFFII :
System.IntPtr SkiaSharp.SkiaApi::sk_imagefilter_new_spot_lit_specular(SkiaSharp.SKPoint3*,SkiaSharp.SKPoint3*,System.Single,System.Single,System.UInt32,System.Single,System.Single,System.Single,System.IntPtr,System.IntPtr)
FIFFF :
System.Single SkiaSharp.SkiaApi::sk_3dview_dot_with_normal(System.IntPtr,System.Single,System.Single,System.Single)
VIFFF :
System.Void SkiaSharp.SkiaApi::sk_3dview_translate(System.IntPtr,System.Single,System.Single,System.Single)
VIFFI :
System.Void SkiaSharp.SkiaApi::sk_matrix_map_vector(SkiaSharp.SKMatrix*,System.Single,System.Single,SkiaSharp.SKPoint*)
VIFFI :
System.Void SkiaSharp.SkiaApi::sk_matrix_map_xy(SkiaSharp.SKMatrix*,System.Single,System.Single,SkiaSharp.SKPoint*)
FIII :
System.Single SkiaSharp.SkiaApi::sk_matrix44_get(System.IntPtr,System.Int32,System.Int32)
VIFFF :
System.Void SkiaSharp.SkiaApi::sk_matrix44_post_scale(System.IntPtr,System.Single,System.Single,System.Single)
VIFFF :
System.Void SkiaSharp.SkiaApi::sk_matrix44_post_translate(System.IntPtr,System.Single,System.Single,System.Single)
VIFFF :
System.Void SkiaSharp.SkiaApi::sk_matrix44_pre_scale(System.IntPtr,System.Single,System.Single,System.Single)
VIFFF :
System.Void SkiaSharp.SkiaApi::sk_matrix44_pre_translate(System.IntPtr,System.Single,System.Single,System.Single)
VIIIF :
System.Void SkiaSharp.SkiaApi::sk_matrix44_set(System.IntPtr,System.Int32,System.Int32,System.Single)
VIFFF :
System.Void SkiaSharp.SkiaApi::sk_matrix44_set_scale(System.IntPtr,System.Single,System.Single,System.Single)
VIFFF :
System.Void SkiaSharp.SkiaApi::sk_matrix44_set_translate(System.IntPtr,System.Single,System.Single,System.Single)
IIIIIF :
System.Boolean SkiaSharp.SkiaApi::sk_paint_get_fill_path(System.IntPtr,System.IntPtr,System.IntPtr,SkiaSharp.SKRect*,System.Single)
VIIFF :
System.Void SkiaSharp.SkiaApi::sk_path_add_arc(System.IntPtr,SkiaSharp.SKRect*,System.Single,System.Single)
VIFFFI :
System.Void SkiaSharp.SkiaApi::sk_path_add_circle(System.IntPtr,System.Single,System.Single,System.Single,SkiaSharp.SKPathDirection)
VIFFFIIFF :
System.Void SkiaSharp.SkiaApi::sk_path_arc_to(System.IntPtr,System.Single,System.Single,System.Single,SkiaSharp.SKPathArcSize,SkiaSharp.SKPathDirection,System.Single,System.Single)
VIFFFIIFF :
System.Void SkiaSharp.SkiaApi::sk_path_rarc_to(System.IntPtr,System.Single,System.Single,System.Single,SkiaSharp.SKPathArcSize,SkiaSharp.SKPathDirection,System.Single,System.Single)
IFI :
System.IntPtr SkiaSharp.SkiaApi::sk_path_effect_create_2d_line(System.Single,SkiaSharp.SKMatrix*)
IFFI :
System.IntPtr SkiaSharp.SkiaApi::sk_path_effect_create_discrete(System.Single,System.Single,System.UInt32)
IFFI :
System.IntPtr SkiaSharp.SkiaApi::sk_path_effect_create_trim(System.Single,System.Single,SkiaSharp.SKTrimPathEffectMode)
VIIFFFF :
System.Void SkiaSharp.SkiaApi::sk_rrect_set_nine_patch(System.IntPtr,SkiaSharp.SKRect*,System.Single,System.Single,System.Single,System.Single)
VIIFF :
System.Void SkiaSharp.SkiaApi::sk_rrect_set_rect_xy(System.IntPtr,SkiaSharp.SKRect*,System.Single,System.Single)
IFIII :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_lerp(System.Single,System.IntPtr,System.IntPtr,SkiaSharp.SKMatrix*)
IFFIFI :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_perlin_noise_fractal_noise(System.Single,System.Single,System.Int32,System.Single,SkiaSharp.SKSizeI*)
IFFIF :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_perlin_noise_improved_noise(System.Single,System.Single,System.Int32,System.Single)
IFFIFI :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_perlin_noise_turbulence(System.Single,System.Single,System.Int32,System.Single,SkiaSharp.SKSizeI*)
IIFIIIII :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_radial_gradient(SkiaSharp.SKPoint*,System.Single,System.UInt32*,System.Single*,System.Int32,SkiaSharp.SKShaderTileMode,SkiaSharp.SKMatrix*)
IIFIIIIII :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_radial_gradient_color4f(SkiaSharp.SKPoint*,System.Single,SkiaSharp.SKColorF*,System.IntPtr,System.Single*,System.Int32,SkiaSharp.SKShaderTileMode,SkiaSharp.SKMatrix*)
IIIIIIFFI :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_sweep_gradient(SkiaSharp.SKPoint*,System.UInt32*,System.Single*,System.Int32,SkiaSharp.SKShaderTileMode,System.Single,System.Single,SkiaSharp.SKMatrix*)
IIIIIIIFFI :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_sweep_gradient_color4f(SkiaSharp.SKPoint*,SkiaSharp.SKColorF*,System.IntPtr,System.Single*,System.Int32,SkiaSharp.SKShaderTileMode,System.Single,System.Single,SkiaSharp.SKMatrix*)
IIFIFIIIII :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_two_point_conical_gradient(SkiaSharp.SKPoint*,System.Single,SkiaSharp.SKPoint*,System.Single,System.UInt32*,System.Single*,System.Int32,SkiaSharp.SKShaderTileMode,SkiaSharp.SKMatrix*)
IIFIFIIIIII :
System.IntPtr SkiaSharp.SkiaApi::sk_shader_new_two_point_conical_gradient_color4f(SkiaSharp.SKPoint*,System.Single,SkiaSharp.SKPoint*,System.Single,SkiaSharp.SKColorF*,System.IntPtr,System.Single*,System.Int32,SkiaSharp.SKShaderTileMode,SkiaSharp.SKMatrix*)
VIIIFFII :
System.Void SkiaSharp.SkiaApi::sk_textblob_builder_alloc_run(System.IntPtr,System.IntPtr,System.Int32,System.Single,System.Single,SkiaSharp.SKRect*,SkiaSharp.SKRunBufferInternal*)
VIIIFII :
System.Void SkiaSharp.SkiaApi::sk_textblob_builder_alloc_run_pos_h(System.IntPtr,System.IntPtr,System.Int32,System.Single,SkiaSharp.SKRect*,SkiaSharp.SKRunBufferInternal*)
VIIIFFIII :
System.Void SkiaSharp.SkiaApi::sk_textblob_builder_alloc_run_text(System.IntPtr,System.IntPtr,System.Int32,System.Single,System.Single,System.Int32,SkiaSharp.SKRect*,SkiaSharp.SKRunBufferInternal*)
VIIIFIII :
System.Void SkiaSharp.SkiaApi::sk_textblob_builder_alloc_run_text_pos_h(System.IntPtr,System.IntPtr,System.Int32,System.Single,System.Int32,SkiaSharp.SKRect*,SkiaSharp.SKRunBufferInternal*)
```
Co-authored-by: jeromelaban <jeromelaban@users.noreply.github.com>