Tomáš Rylek [Fri, 13 Nov 2020 01:49:04 +0000 (02:49 +0100)]
Fix race conditions in CG2 runs (#44492)
While we do lock the test folder during CG2 compilation, we always
run the compilation which means that it can race with execution of
the already CG2-compiled executable which also locks the PE file.
While I'm not super happy about introducing more state, I believe
the easiest way to fix this is the same way CG1 works - compiling
opportunistically upon first build of the project and skipping the
compilation subsequently.
Thanks
Tomas
Santiago Fernandez Madero [Fri, 13 Nov 2020 01:27:41 +0000 (17:27 -0800)]
Fix trimming linker tests (#44613)
Egor Bogatov [Fri, 13 Nov 2020 00:12:28 +0000 (03:12 +0300)]
[Android] Split android_security.c into multiple files (#44603)
Tomáš Rylek [Thu, 12 Nov 2020 23:41:21 +0000 (00:41 +0100)]
Remove the experimental Utf8String type and tests from the runtime repo (#44574)
Stephen Toub [Thu, 12 Nov 2020 23:22:33 +0000 (18:22 -0500)]
Reduce Process test time (#44593)
Fix a test that was taking 30 seconds, and make another test outerloop.
Tarek Mahmoud Sayed [Thu, 12 Nov 2020 23:22:17 +0000 (15:22 -0800)]
Fix zh cultures parent chain (#44607)
Tomáš Rylek [Thu, 12 Nov 2020 22:33:54 +0000 (23:33 +0100)]
Mark R2RDumpTests as incompatible with GC stress (#44586)
The purpose of this test is not to stress the runtime, it's relatively
lengthy as it processes the entire System.Private.CoreLib framework
assembly and so it's timing in GC stress runs.
Thanks
Tomas
Steve MacLean [Thu, 12 Nov 2020 21:46:09 +0000 (16:46 -0500)]
OSX Add option -no_code_signature_warning (#44604)
When building on Apple Silicon the stripping pass warns about breaking signing
despite not having signed the binary yet. Disable the warning
Stephen Toub [Thu, 12 Nov 2020 20:31:12 +0000 (15:31 -0500)]
Override Read/Write for spans on ConsoleStream (#44597)
Console.WriteLine ends up calling Write(span) in some cases, which incurs unnecessary additional cost to call through to Write(byte[], ...).
Stephen Toub [Thu, 12 Nov 2020 18:12:10 +0000 (13:12 -0500)]
Special-case SocketsHttpHandler.MaxResponseDrainTime == 0 (#44568)
If the drain size is set to 0, any attempts to drain end up failing with a 1st-chance exception that's logged and eaten, when we should just be skipping all the associated work and failing immediately.
Eric StJohn [Thu, 12 Nov 2020 16:00:18 +0000 (08:00 -0800)]
Validate ref/src parameter names (#43838)
Ensure our reference assembly parameter names match implementation. Align all current mismatches.
Egor Bogatov [Thu, 12 Nov 2020 15:54:54 +0000 (18:54 +0300)]
[Android] Use Android SDK instead of OpenSSL where possible (#43740)
This PR redirects all RandomNumberGenerator, MD5, Sha1-512, HMAC and AES APIs to use Android SDK instead of OpenSSL.
Steve Harter [Thu, 12 Nov 2020 15:39:28 +0000 (09:39 -0600)]
Remove dependency on System.Linq from debug build (#44531)
Eric StJohn [Thu, 12 Nov 2020 15:16:18 +0000 (07:16 -0800)]
Make PhysicalFilesWatcher exclusively use polling when pollForChanges=true and no FSW is provided (#41426)
When a FileSystemWatcher is not passed to the PhysicalFileWatcher
we'll permit construction (if polling is enabled) and have it behave as
exclusively polling.
The PhysicalFileProvider will use this mode when both
UsePollingFileWatcher and UseActivePolling are set which is what happens
when the DOTNET_USE_POLLING_FILE_WATCHER environment variable is set.
Stephen Toub [Thu, 12 Nov 2020 14:33:57 +0000 (09:33 -0500)]
Remove LazyInitializer usage from corelib (#44409)
It's fine for higher layers, but in corelib we don't want to forcibly prevent LazyInitializer from being trimmed nor pay the overheads of additional cached delegates.
Stephen Toub [Thu, 12 Nov 2020 14:00:28 +0000 (09:00 -0500)]
Fix 5-minute hang in Process tests (#44571)
Marek Safar [Thu, 12 Nov 2020 13:13:23 +0000 (14:13 +0100)]
Use Dictionary for underlying cache of ResourceSet (#44521)
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Fan Yang [Thu, 12 Nov 2020 12:30:35 +0000 (07:30 -0500)]
Copy OpenSSL binaries (#44577)
This PR could resolve some failures mentioned in https://github.com/dotnet/runtime/issues/44306
Eric Erhardt [Thu, 12 Nov 2020 11:32:28 +0000 (05:32 -0600)]
Fix race condition in Hosting test (#44548)
Change Task.Delay(1) to Task.Yield() to avoid a super race condition.
Fix #43389
Sergey Andreenko [Thu, 12 Nov 2020 05:47:33 +0000 (19:47 -1000)]
Santiago's suggestion (#44554)
xtqqczze [Thu, 12 Nov 2020 05:32:06 +0000 (05:32 +0000)]
Fix RCS1049: Simplify boolean comparison (#44564)
Egor Bogatov [Thu, 12 Nov 2020 04:50:24 +0000 (07:50 +0300)]
[RyuJIT] Unroll single-iteration loops (#43947)
* Unroll empty loops
* Unroll single-iteration loops
* Update optimizer.cpp
* clean up
* Update optimizer.cpp
Aaron Robinson [Thu, 12 Nov 2020 03:16:53 +0000 (19:16 -0800)]
Remove unused RCW/CCW code paths (#44121)
* Remove unused checks for DCOM proxies.
* Remove empty API for WinRT scenarios.
* Remove unused static functions from runtimecallablewrapper.cpp.
* Remove unused functions in comcallablewrappers.
* Remove unused or irrelevant functions in interoputil.cpp.
Remove WinRT focused code path in ComInterfaceMarshaler.
- ICOMInterfaceMarshalerCallback usage
Aaron Robinson [Thu, 12 Nov 2020 03:14:15 +0000 (19:14 -0800)]
Remove unused Crst entries and regenerate header. (#44556)
* Remove unused Crst entries and regenerate header.
Steve MacLean [Thu, 12 Nov 2020 02:30:21 +0000 (21:30 -0500)]
Fix remote-unwind for TARGET_ARM crossdac (#44553)
谭九鼎 [Thu, 12 Nov 2020 02:20:25 +0000 (10:20 +0800)]
docs: fix MSBuild property InvariantGlobalization (#44572)
Tomáš Rylek [Thu, 12 Nov 2020 02:01:15 +0000 (03:01 +0100)]
Crossgen2 support for System.Private.CoreLib compilation in CoreCLR build (#44090)
This change moves the logic for crossgenning System.Private.CoreLib to the crossgen-corelib.proj script, no longer calling out to the OS-specific scripts crossgen-corelib.cmd / crossgen-corelib.sh, and adds the support for using Crossgen2 for the System.Private.CoreLib compilation. As of this commit Crossgen2 is not set as the default because the System.Utf8.Experimental libraries tests fail with Crossgen2-compiled CoreLib. I'm working on fixing this as the next step.
Thanks
Tomas
Dan Moseley [Thu, 12 Nov 2020 01:58:23 +0000 (17:58 -0800)]
Fix StartInfo test (#44392)
* Stabilize StartInfo_NotepadWithContent_withArgumentList
* Add state in failed SetApartmentState exception
* Same for other tests
* Extract common code
* Modify
* Extract common code
* Pass down throwOnError
* Apply suggestions from code review
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* feedback
* Add process for disposal
* Make slow test outer loop
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Andrew Au [Thu, 12 Nov 2020 01:39:29 +0000 (17:39 -0800)]
A couple of R2RDump fixes (#44558)
Bruce Forstall [Thu, 12 Nov 2020 00:36:24 +0000 (16:36 -0800)]
Fix arm64 disasm failures (#44547)
GTF_ICON_STATIC_HDL and GTF_ICON_FTN_ADDR can't be converted
to names using eeGetFieldName and eeGetMethodFullName, respectively.
So, just print out the type of the target.
Fixes #40354
Eric Erhardt [Wed, 11 Nov 2020 23:43:33 +0000 (17:43 -0600)]
Add Type.GetMethod overload that takes Name, BindingFlags, and Parameter Types (#44529)
* Add Type.GetMethod overload that takes Name, BindingFlags, and Parameter Types
Adding overloads to GetConstructor and GetMethod that don't take a Binder or parameter modifiers.
Fix #42753
David Cantú [Wed, 11 Nov 2020 23:27:39 +0000 (15:27 -0800)]
Use fcntl(F_FLUSHFSYNC) on OSX and make FlushAsync() to behave like Flush(false) on Unix (#44443)
* Use fcntl(F_FLUSHFSYNC) on OSX and make FlushAsync to behave like Flush on Unix
* Remove HAVE_F_FULLFSYNC from mono/cmake/config.h.in
* Address FlushAsyncInternal feedback
* Address feedback: use fcntl only for OSX
Steve MacLean [Wed, 11 Nov 2020 23:24:33 +0000 (18:24 -0500)]
Drop support for IID_ICorDebugProcess10 and fix thread suspend logic (#44549)
* Stop providing IID_ICorDebugProcess10
Prevent older VS versions from setting managed data breakpoints.
* Simplify the thread collision logic to prevent deadlock
This is a simplification of https://github.com/dotnet/runtime/pull/44539
as proposed by @kouvel
Matt Mitchell [Wed, 11 Nov 2020 23:15:31 +0000 (15:15 -0800)]
Add signing information to asset manifest (port #41889 and #42688) (#43896)
* Post build signing
* Add PostBuildSign flag
Levi Broderick [Wed, 11 Nov 2020 21:03:43 +0000 (13:03 -0800)]
Convert aka.ms links to https (#44501)
Santiago Fernandez Madero [Wed, 11 Nov 2020 18:42:09 +0000 (10:42 -0800)]
Remove internal NuGet.config that is not needed anymore (#44507)
Jan Jahoda [Wed, 11 Nov 2020 18:28:41 +0000 (19:28 +0100)]
Update buildtriage.md (#44538)
Elinor Fung [Wed, 11 Nov 2020 18:15:00 +0000 (10:15 -0800)]
Remove dead code in MarshalNative (#44506)
Steve MacLean [Wed, 11 Nov 2020 18:08:17 +0000 (13:08 -0500)]
Add ICorDebugHeapValue4 -- CreatePinnedHandle (#44471)
* Add ICorDebugHeapValue4
* Add EnableGCNotificationEvents deprecation comment
Tomas Weinfurt [Wed, 11 Nov 2020 17:21:57 +0000 (09:21 -0800)]
log exception if Timeout_SetTenMillisecondsOnLoopback_ThrowsWebException test fails (#44509)
* log exception if Timeout_SetTenMillisecondsOnLoopback_ThrowsWebException test fails
* check exception type before checking time range
Geoff Kizer [Wed, 11 Nov 2020 14:17:54 +0000 (06:17 -0800)]
add CancelWaiter assert (#44510)
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Stephen Toub [Wed, 11 Nov 2020 14:15:06 +0000 (09:15 -0500)]
Remove some allocation at "hello world" startup (#44469)
* Specialize `EqualityComparer<string>.Default`
Removes ~80 allocations at startup.
* Avoid loading Encoding.Unicode just for CodePage
* Use fixed instead of GCHandle.Alloc in EventSource.Initialize
* Remove lock / lock object from EncodingProvider.AddProvider
* Remove lock object from AppDomain.cs
* Lazily allocate EventSource's m_createEventLock
It's only used on an error path. We don't need to allocate it for each EventSource that's created.
* Avoid unnecessary CultureInfo access in derived TextWriters
SyncTextWriter already overrides FormatProvider, in which case the t.FormatProvider passed to the base will never be used, so this call is incurring a virtual dispatch for no benefit. And NullTextWriter needn't access InvariantCulture and force it into existence if it isn't yet, as the formatting should never actually be used, and if it is, its FormatProvider override can supply the culture.
* Avoid allocating AssemblyLoadContext's dictionary if no direct interaction with ALC
AssemblyLoadContext.OnProcessExit gets called by EventSource, which in turn forces s_allContexts into existence in order to lock on it in order to enumerate all active contexts, and if there's been no interaction with AssemblyLoadContext, there won't be any to enumerate. So delay allocate the object.
* Address PR feedback
* Call EventListener.DisposeOnShutdown from AppContext.OnProcessExit
Avoids the need to register with AppContext.ProcessExit, avoiding an EventHandler allocation, and avoids the need in the common case to fire AppContext.ProcessExit, which in turn avoids allocating an AppDomain and EventArgs if they weren't otherwise created, plus it avoids the delegate invocation.
* Update src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs
dotnet-maestro[bot] [Wed, 11 Nov 2020 13:12:39 +0000 (14:12 +0100)]
Update dependencies from https://github.com/mono/linker build
20201110.1 (#44499)
Microsoft.NET.ILLink.Tasks
From Version 6.0.0-alpha.1.20559.3 -> To Version 6.0.0-alpha.1.20560.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Stephen Toub [Wed, 11 Nov 2020 10:23:36 +0000 (05:23 -0500)]
Reduce StreamWriter allocation (#44495)
* Lazily-allocate StreamWriter's byte[] buffer
The byte[] buffer is used just when flushing to the underlying stream, to store the intermediate bytes as generated from the characters by the encoding. Currently the byte[] buffer is allocated in the constructor, but for relatively small strings written/flushed synchronously (such as those often used with Console.Write), we can avoid the buffer entirely via stack allocation (in Flush); for all other cases, we can allocate it on demand.
(I considered using ArrayPool to rent/return in each Flush{Async} call, but opted not to in this change. Someone could investigate that subsequently.)
* Undo use of static async helpers
In .NET Framework, there was a non-trivial penalty due to StreamWriter deriving from MarshalByRefObject and the impact that had on async methods accessing lifted locals on the state machine (it made them significantly more expensive). The workaround was to make the async methods be statics and pass in all of the relevant instance state needed. That workaround is no longer necessary on core, where MarshalByRefObjects are nops, leaving behind a workaround that is not just clunkier, but actually makes things more expensive because more state needs to be stored on the state machine objects (all of the arguments, which can instead just be accessed off of `this`). Undo that whole change.
* Address PR feedback
Zoltan Varga [Wed, 11 Nov 2020 07:11:57 +0000 (02:11 -0500)]
Use corlib instead of System.Private.CoreLib as a name prefix in AOT symbol names. (#44235)
Katelyn Gadd [Wed, 11 Nov 2020 04:46:06 +0000 (20:46 -0800)]
WASM Bindings optimizations and fixes (#41808)
* Fix MarshalTypedArrayByte and re-enable it. Re-enable TestFunctionApply
* Re-enable MarshalTypedArray
* Detect when the managed wrapper for a JS object has been collected and create a new one
* Remove debugging code
* Maintain a small pool of temporary root instances to minimize GC pressure. Improve benchmark
* Don't use release_roots in call_method due to varargs overhead
* Various call_method optimizations
* Checkpoint: Don't rely on finally block for teardown in call path, because it has a performance cost
* Checkpoint: Unboxing fast path for primitives
* Checkpoint: Fix unboxing fast path
* Update bindings to use bound static methods instead of call_method in various places
* Address PR feedback
* Revert sample and add separate proj for benchmark
* Fix benchmark
* Revert test change
* Fix passing mono object ptrs to bound functions
Fix passing strings across the boundary
Fix JS strings being truncated at the first null when passed to mono
* Implement unboxing for chars
Slightly optimize the unboxing slow path
* Don't allocate a root buffer for arguments if nothing needs to be rooted. Reuse scratch native buffer across calls unless re-entrant to avoid per-invoke malloc
* Fix whitespace damage from merge
* Tweaks to try and prevent boxing/gc
* Fix typo
* Add some tests
* Fix test failures
* Add more error handling and diagnostic messages
Fix a couple broken tests
* Repair merge damage
* Remove bindings benchmark
* Use TypedArray.fill 3-argument version to zero memory
* Checkpoint: Introduce format strings
* Fix interpolated strings
* Test refactoring
* Checkpoint: Add more test coverage for bindings and interop
* Checkpoint: Enum marshaling works
* Improve test coverage
* Checkpoint: Unify unboxing of primitive types
* Checkpoint: Unify unboxing of primitive types
* Checkpoint: Restore fn to satisfy runtime-test.js
* Checkpoint: Unify boxing for primitives
* Remove now-unused box methods
* Don't store names for null method IDs
* Fix indentation damage
* Add test
* Satisfy CI
* Accept weaker promises
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Andy Ayers [Wed, 11 Nov 2020 03:45:06 +0000 (19:45 -0800)]
JIT: preliminary version of profile-based inline policy (#44427)
Add a new inline policy that can be used when a method has profile data.
It uses the call site frequency to boost profitability. Size and per-call
benefit are currently using the estimates done by the model policy.
Not on by default. Set COMPlus_JitInlinePolicyProfile=1 to enable.
Add testing to weekly experimental runs.
Stephen Toub [Wed, 11 Nov 2020 03:33:05 +0000 (22:33 -0500)]
Implement internal ISpanFormattable on {U}IntPtr (#44496)
Allows nint and nuint to participate in the same optimizations in string building / formatting as do the other primitives.
Zoltan Varga [Wed, 11 Nov 2020 01:08:07 +0000 (20:08 -0500)]
Add libs.native subset when using the runtime helper target in the wasm makefile (#44450)
Ensures libSystem.Native.a/libSystem.IO.Compression.Native.a end up in the runtime pack.
Jan Kotas [Tue, 10 Nov 2020 22:40:57 +0000 (14:40 -0800)]
Revert "Use Dictionary for underlying cache of ResourceSet (#44104)" (#44482)
This reverts commit
a6835438581730da23fb3d4eea7ea7c4af1b00a3.
Tomáš Rylek [Tue, 10 Nov 2020 20:35:47 +0000 (21:35 +0100)]
Fix R2RDump test in CG2 pipelines (#44460)
Our scripts normally assume that all test projects are at least
two nesting levels deep under $(TestBinDir); the r2rdump test was
violating that and, in doing so, it was triggering a failure in
CG2 compilation.
After I decided to fix this by moving the r2rdump folder under
"readytorun" I found out that there already is a r2rdump folder
there - apparently Amy during her initial R2RDump implementation
authored a basic test suite even though it's disabled right now.
I have resolved this by moving the original test under
"readytorun/r2rdump" to "readytorun/r2rdump/BasicTests" and I moved
Andrew's new test under "readytorun/r2rdump/FrameworkTests".
I'm not super happy about the naming but I don't have any better
ideas at the moment, I'll be happy to improve this based on PR
feedback.
Thanks
Tomas
Aleksey Kliger (λgeek) [Tue, 10 Nov 2020 20:11:20 +0000 (15:11 -0500)]
[mono][jit] Emit profiler enter after jit attach; leave before detach (#44345)
* [jit] Emit profiler enter after jit attach; leave before detach
profiler enter code (such as mono_trace_enter_method) must not be
called before a thread attaches to the runtime - otherwise calls like
`mono_domain_get()` will return NULL unexpectedly and then crash.
When detaching, we should call the profiler leave code before the
detach, and suppress it on return.
Simple repro (that relies on pal_signal.c SignalHandlerLoop - which is
a background thread from System.Native that calls back into managed
when there's a SIGCHLD): compile and run this program with `MONO_ENV_OPTIONS=--trace`
```csharp
using System;
using System.Diagnostics;
namespace Repro
{
internal class Program
{
private static void Main(string[] args)
{
using (Process myProcess = new Process())
{
myProcess.StartInfo.UseShellExecute = true;
myProcess.StartInfo.FileName = "echo";
myProcess.StartInfo.Arguments = "hello from shell";
myProcess.StartInfo.CreateNoWindow = true;
myProcess.Start();
myProcess.WaitForExit();
}
Console.ReadKey ();
}
}
}
```
Santiago Fernandez Madero [Tue, 10 Nov 2020 19:57:49 +0000 (11:57 -0800)]
Update System.Drawing.Common stable versions to fix harvesting (#44481)
Přemek Vysoký [Tue, 10 Nov 2020 18:59:41 +0000 (19:59 +0100)]
Bump Helix SDK so that iOS simulators don't get rebooted before/after every Helix job (#44455)
Jeremy Koritzinsky [Tue, 10 Nov 2020 18:55:27 +0000 (10:55 -0800)]
Use commit parents instead of branch names to evaulate changed paths. (#44474)
monojenkins [Tue, 10 Nov 2020 17:02:16 +0000 (12:02 -0500)]
[runtime] Add some support for stack walks for AOT code on wasm. (#44431)
For methods which need to show up during stack walks, push/pop an LMF
frame and have mono_arch_unwind_frame () handle it.
This is needed to be able to support methods which do stack walks like
Type.GetType () or Assembly.Load () in the future.
Co-authored-by: vargaz <vargaz@users.noreply.github.com>
Egor Bogatov [Tue, 10 Nov 2020 14:54:09 +0000 (17:54 +0300)]
[RyuJIT] Fix get_ManagedThreadId(get_CurrentThread) optimization (convert to NI) (#41213)
* Convert get_ManagedThreadId(get_CurrentThread) optimization to NamedIntrinsics
* drop CORINFO_HELP_INTERNALTHROW and CORINFO_HELP_SEC_UNMGDCODE_EXCPT
dotnet-maestro[bot] [Tue, 10 Nov 2020 14:06:59 +0000 (15:06 +0100)]
[master] Update dependencies from mono/linker (#44408)
* Update dependencies from https://github.com/mono/linker build
20201109.1
Microsoft.NET.ILLink.Tasks
From Version 6.0.0-alpha.1.20556.1 -> To Version 6.0.0-alpha.1.20559.1
* Update dependencies from https://github.com/mono/linker build
20201109.2
Microsoft.NET.ILLink.Tasks
From Version 6.0.0-alpha.1.20556.1 -> To Version 6.0.0-alpha.1.20559.2
* Update dependencies from https://github.com/mono/linker build
20201109.3
Microsoft.NET.ILLink.Tasks
From Version 6.0.0-alpha.1.20556.1 -> To Version 6.0.0-alpha.1.20559.3
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
monojenkins [Tue, 10 Nov 2020 10:51:38 +0000 (05:51 -0500)]
Initial changes to support Mac Catalyst (#44127)
Co-authored-by: praeclarum <praeclarum@users.noreply.github.com>
Marek Safar [Tue, 10 Nov 2020 08:16:04 +0000 (09:16 +0100)]
Make internal API ThrowIfDeserializationInProgress internal (#44147)
* Make internal API ThrowIfDeserializationInProgress internal
also avoid doing costly argument checks
* Make methods public again
* Update src/libraries/System.Private.CoreLib/src/System/Runtime/Serialization/SerializationInfo.SerializationGuard.cs
Co-authored-by: Levi Broderick <GrabYourPitchforks@users.noreply.github.com>
Co-authored-by: Levi Broderick <GrabYourPitchforks@users.noreply.github.com>
Sergey Andreenko [Tue, 10 Nov 2020 05:27:52 +0000 (19:27 -1000)]
Disable 2 failing coreclr tests until they are fixed. (#44420)
* another failing test
* exclude another failure,
Charles Stoner [Tue, 10 Nov 2020 04:11:57 +0000 (20:11 -0800)]
Resolve warnings for assignment or explicit cast of possibly null type parameter value (#43925)
Kunal Pathak [Tue, 10 Nov 2020 03:27:39 +0000 (19:27 -0800)]
New event to track memory allocation for JIT code (#44030)
* Added MethodJitMemoryAllocatedForCode event
* Renane the event fields
* Include cold code size as well
* Replace methodName with methodId
* Update the condition that fires the event
Vladimir Sadov [Tue, 10 Nov 2020 00:19:44 +0000 (16:19 -0800)]
Removing `g_hmodCoreCLR` and `g_hThisInst` (#43735)
* g_hmodCoreCLR is Windows-only
* Use 42 in MarkAsThrownByUsWorker()
* replaced GetCLRModule with GetClrModulePathName
* Addded PAL_GetPalHostModule to mscordac_unixexports
* replaced a few cases of g_hThisInst where used to get module path. We can uise `GetClrModulePathName` instead.
* more cases where used to get module path
* unused `GetModuleInst()`
* not using HMODULE in StressLog
* removed mscoree GetModuleInst
* Deleted both `g_hThisInst` and `g_hmodCoreCLR`
* fix Linux build
* rename `GetModuleBase` ->` GetClrModuleBase`, it was confusing with other `GetClrModuleBase`
* Fix Linux build
* PR feedback
* Removed hMod variables in Debugger areas
* standalone GC
* cache GetClrModuleBase
* Prevent double-read of `pImageBase`
* fix linker issue
* couple more link order fixes.
* Remove `g_thisModule` in daccess.cpp. Fix typos.
Stephen Toub [Tue, 10 Nov 2020 00:17:12 +0000 (19:17 -0500)]
Improve nullable annotation on Volatile.Read (#44410)
Make it clear to the compiler that Volatile.Read doesn't write to the ref argument, such that if the input was non-null before the call, it'll still be non-null after the call.
Sung Yoon Whang [Tue, 10 Nov 2020 00:14:50 +0000 (16:14 -0800)]
Fix genEventing.py to generate correct EventEnabled functions (#44384)
Egor Bogatov [Tue, 10 Nov 2020 00:02:06 +0000 (03:02 +0300)]
[iOS] Fix build for Xcode 12.1 (#44311)
Maryam Ariyan [Mon, 9 Nov 2020 22:30:28 +0000 (14:30 -0800)]
Remove unused project references (#44425)
Stephen Toub [Mon, 9 Nov 2020 21:11:41 +0000 (16:11 -0500)]
Remove some unnecessary GetTypeInfo usage (#44414)
David Wrighton [Mon, 9 Nov 2020 20:34:54 +0000 (12:34 -0800)]
Improve crossgen2 comparison jobs (#44119)
- Fix compilation on unix platforms
- Wrap use of wildcard in quotes
- Print better display name into log
- Fix X86 constant comparison handling
- Add ability to compile specific overload via single method switches
Stephen Toub [Mon, 9 Nov 2020 20:11:30 +0000 (15:11 -0500)]
Change async void System.Text.Json test to be async Task (#44418)
Sergey Andreenko [Mon, 9 Nov 2020 19:54:31 +0000 (09:54 -1000)]
Disable a failing test. (#44404)
Alexander Köplinger [Mon, 9 Nov 2020 19:23:49 +0000 (20:23 +0100)]
Fix C++ build for mono/metadata/threads.c (#44413)
`throw` is a reserved keyword in C++.
Jeremy Koritzinsky [Mon, 9 Nov 2020 18:35:33 +0000 (10:35 -0800)]
Move some more UnmanagedCallersOnly tests to IL now that they're invalid C# (#43366)
Zoltan Varga [Mon, 9 Nov 2020 15:39:01 +0000 (10:39 -0500)]
Add files need for wasm executable relinking/aot to the wasm runtime pack. (#43785)
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Jan Kotas [Mon, 9 Nov 2020 13:49:53 +0000 (05:49 -0800)]
Update glossary (#44274)
Co-authored-by: Juan Hoyos <juan.hoyos@microsoft.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Günther Foidl <gue@korporal.at>
Krzysztof Wicher [Mon, 9 Nov 2020 12:07:15 +0000 (13:07 +0100)]
Fix/remove TODO-NULLABLEs (#44300)
* Fix/remove TODO-NULLABLEs
* remove redundant !
* apply Jozkee's feedback
* address feedback
Stephen Toub [Mon, 9 Nov 2020 02:17:20 +0000 (21:17 -0500)]
Delete stale comment about dotnet/roslyn#30797
Stephen Toub [Mon, 9 Nov 2020 02:15:24 +0000 (21:15 -0500)]
Update dotnet/roslyn issue link
Egor Bogatov [Sun, 8 Nov 2020 21:21:37 +0000 (00:21 +0300)]
Clean up the samples (#44293)
Tomas Weinfurt [Sun, 8 Nov 2020 15:14:14 +0000 (07:14 -0800)]
change using in ConnectCallback_UseUnixDomainSocket_Success (#44366)
Geoff Kizer [Sun, 8 Nov 2020 15:12:08 +0000 (07:12 -0800)]
add missing constructor overloads (#44380)
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Tom Deseyn [Sun, 8 Nov 2020 14:29:46 +0000 (15:29 +0100)]
LongProcessNamesAreSupported: make test work on distros where sleep is a symlink/script (#44299)
* LongProcessNamesAreSupported: make test work on distros where sleep is a symlink/script
* PR feedback
Co-authored-by: Stephen Toub <stoub@microsoft.com>
* fix compilation
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Aleksey Kliger (λgeek) [Sun, 8 Nov 2020 10:37:43 +0000 (05:37 -0500)]
Disable RunThreadLocalTest8_Values on Mono (#44357)
* Disable RunThreadLocalTest8_Values on Mono
It's failing on SLES
* fix typo
dotnet-maestro[bot] [Sun, 8 Nov 2020 10:36:15 +0000 (05:36 -0500)]
Update dependencies from https://github.com/mono/linker build
20201106.1 (#44367)
Microsoft.NET.ILLink.Tasks
From Version 6.0.0-alpha.1.20555.2 -> To Version 6.0.0-alpha.1.20556.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Geoff Kizer [Sun, 8 Nov 2020 02:59:14 +0000 (18:59 -0800)]
clarify http version test (#44379)
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Stephen Toub [Sat, 7 Nov 2020 14:06:22 +0000 (09:06 -0500)]
Improve performance of Enum's generic IsDefined / GetName / GetNames (#44355)
Eliminates the boxing in IsDefined/GetName/GetValues, and in GetNames avoids having to go through RuntimeType's GetEnumNames override.
Andrew Au [Sat, 7 Nov 2020 01:41:16 +0000 (17:41 -0800)]
Bootstrapping a test for R2RDump (#42150)
Tomáš Rylek [Sat, 7 Nov 2020 01:29:05 +0000 (02:29 +0100)]
Reflect test path changes in .gitattributes; remove nonexistent files (#44371)
Drew Scoggins [Sat, 7 Nov 2020 01:17:10 +0000 (17:17 -0800)]
Add slash in Windows SoD tool build (#44359)
* Add slash in Windows SoD tool build
* Update SoD search path to match output dir
* Fixup dotnet version
* Remove merge commit headers
* Disable PRs
Co-authored-by: Drew Scoggins <andrew.g.scoggins@gmail>
Marek Safar [Fri, 6 Nov 2020 22:28:06 +0000 (23:28 +0100)]
Match CoreCLR behaviour on thread start failure (#44124)
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
Stephen Toub [Fri, 6 Nov 2020 21:51:41 +0000 (16:51 -0500)]
Fix Send_TimeoutResponseContent_Throws (#44356)
If the client times out too quickly, the server may never have a connection to accept and will hang forever.
dotnet-maestro[bot] [Fri, 6 Nov 2020 20:53:39 +0000 (20:53 +0000)]
[master] Update dependencies from dotnet/arcade dotnet/llvm-project dotnet/icu (#44336)
[master] Update dependencies from dotnet/arcade dotnet/llvm-project dotnet/icu
- Merge branch 'master' into darc-master-
2211df94-2a02-4c3c-abe1-
e3534e896267
David Mason [Fri, 6 Nov 2020 18:58:00 +0000 (10:58 -0800)]
Fix ELT profiler tests (#44285)
Kunal Pathak [Fri, 6 Nov 2020 18:06:26 +0000 (10:06 -0800)]
Add threshold on number of files / partition in SPMI collection (#44180)
* Add check for files count
* Fix the OS check
* decrese file limit to 1500:
* misc fix
* Do not upload to azure if mch files are zero size
Stephen Toub [Fri, 6 Nov 2020 17:56:07 +0000 (12:56 -0500)]
Tighten argument validation in StreamConformanceTests (#44326)
dotnet-maestro[bot] [Fri, 6 Nov 2020 16:55:42 +0000 (11:55 -0500)]
[master] Update dependencies from mono/linker (#44322)
* Update dependencies from https://github.com/mono/linker build
20201105.1
Microsoft.NET.ILLink.Tasks
From Version 6.0.0-alpha.1.20527.2 -> To Version 6.0.0-alpha.1.20555.1
* Update dependencies from https://github.com/mono/linker build
20201105.2
Microsoft.NET.ILLink.Tasks
From Version 6.0.0-alpha.1.20527.2 -> To Version 6.0.0-alpha.1.20555.2
* Disable new optimization for libraries mode (it cannot work in this mode)
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Marek Safar <marek.safar@gmail.com>
Julie Lee [Fri, 6 Nov 2020 15:04:07 +0000 (07:04 -0800)]
Simple GT_NEG optimization for #13837 (#43921)
* Simple arithmetic optimization with GT_NEG
* Skip GT_NEG optimization when an operand is constant. Revert bitwise rotation pattern
* Fixed Value Numbering assert
* Cleaned up code and comments for simple GT_NEG optimization
* Formatting
Co-authored-by: Julie Lee <jeonlee@microsoft.com>
Anton Firszov [Fri, 6 Nov 2020 13:52:49 +0000 (14:52 +0100)]
Simplify catch-rethrow logic in NetworkStream (#44246)
A follow-up on #40772 (comment), simplifies and harmonizes the way we wrap exceptions into IOException. Having one catch block working with System.Exception seems to be enough here, no need for specific handling of SocketException.
Marek Safar [Fri, 6 Nov 2020 10:39:36 +0000 (11:39 +0100)]
Use Dictionary for underlying cache of ResourceSet (#44104)