platform/upstream/dotnet/runtime.git
4 years agoMerge pull request #35218 from am11/feature/pal-tests
Jan Vorlicek [Tue, 28 Apr 2020 08:17:00 +0000 (10:17 +0200)]
Merge pull request #35218 from am11/feature/pal-tests

Fix PAL test build on non-Linux Unix platforms

4 years agoMerge pull request #35334 from davmason/eventsource_fixes
David Mason [Tue, 28 Apr 2020 08:11:47 +0000 (01:11 -0700)]
Merge pull request #35334 from davmason/eventsource_fixes

Write TraceEvent events to EventPipe even if an ETW provider is not enabled, and report EventSource errors over EventPipe.

4 years agoFix generation of Crossgen2 zips (#34971)
David Wrighton [Tue, 28 Apr 2020 02:09:05 +0000 (19:09 -0700)]
Fix generation of Crossgen2 zips (#34971)

The compressed crossgen2 zip file being created in the current builds are almost empty except for the license details. This fixes the problem by passing the right values into the installer project creation path, as well as setting the RuntimeIdentifier property as needed.

4 years agoImplement portable tailcall helpers (#341)
Jakob Botsch Nielsen [Tue, 28 Apr 2020 00:06:15 +0000 (02:06 +0200)]
Implement portable tailcall helpers (#341)

* Implement portable tailcall helpers

This implements tailcall-via-help support for all platforms supported by
the runtime. In this new mechanism the JIT asks the runtime for help
whenever it realizes it will need a helper to perform a tailcall, i.e.
when it sees an explicit tail. prefixed call that it cannot make into a
fast jump-based tailcall.

The runtime created two important IL stubs to help the JIT in performing
the necessary tailcalls. One IL stub is used to store the args for the
tailcall, while the other is used to dispatch the actual tailcall
itself. The JIT will then transform the call from

return tail. F(a1, ..., an);

to

IL_STUB_StoreTailCallArgs(a1, ..., an);
T result;
IL_STUB_DispatchTailCalls(..., &result);
return result;

The dispatcher is written in such a way that it is able to dispatch
multiple tailcalls in a row when tailcalled functions also perform
tailcalls. To do this, the JIT helps the dispatcher detect if the
caller's caller is also a dispatcher. When this is the case the
dispatcher returns to let the previous dispatcher perform the tailcall
with the currently stored args. This allows the frame to unwind and
ensures that sequences of tailcalls do not grow the stack more than by a
constant factor.

Due to this unwinding the args cannot be stored on the stack and are
instead stored in TLS. The GC is made specially of this buffer as the
args can be anything, including interior pointers.

The control-flow when performing the new tailcalls is nonstandard, so
this also changes the debugger to support proper stepping into/over/out
of tailcalled functions when they go through the new dispatcher.

x86's tailcalling mechanism does not change.

This commit also includes the following changes:

* Update design doc for helper-based tailcalls

* Change lowering of GT_LABEL on arm.

Generate movw/movt instead of adr on arm. adr on arm allows offsets
up to 4k, which may not be enough. In particular,
IL_STUB_CallTailCallTarget uses GT_LABEL before argument setup code
and it can be more than 4k.

* Add COMPlus_FastTailCalls environment variable.

COMPlus_FastTailCalls controls whether fast tail calls are allowed.
If COMPlus_FastTailCalls is 0, fast tail calls are not allowed even for
tail-prefixed calls. Only helper-based calls are allowed. This is useful
for testing helper-based calls.

Co-authored-by: Eugene Rozenfeld <erozen@microsoft.com>
4 years agoCode review feedback
David Mason [Fri, 24 Apr 2020 22:28:23 +0000 (15:28 -0700)]
Code review feedback

4 years agoAdd test for out of band messages over EventSource
David Mason [Fri, 24 Apr 2020 01:20:21 +0000 (18:20 -0700)]
Add test for out of band messages over EventSource

4 years agoMake EventSource log errors to eventpipe
David Mason [Thu, 23 Apr 2020 22:16:00 +0000 (15:16 -0700)]
Make EventSource log errors to eventpipe

4 years agoupdate eventsource
David Mason [Thu, 23 Apr 2020 11:06:19 +0000 (04:06 -0700)]
update eventsource

4 years agoAdd support of CreateScalarUnsafe() for arm64 intrinsic in JIT (#34579)
Kunal Pathak [Mon, 27 Apr 2020 23:11:48 +0000 (16:11 -0700)]
Add support of CreateScalarUnsafe() for arm64 intrinsic in JIT (#34579)

* Intrinsify Vector64.CreateScalarUnsafe() for byte, sbyte, short, ushort, int, uint, long, ulong, float
* Intrinsify Vector128.CreateScalarUnsafe() for byte, sbyte, short, ushort, int, uint, long, ulong, float, long, ulong, double

4 years agoUse intrinsics for SequenceEqual<byte> vectorization to emit at R2R (#32371)
Ben Adams [Mon, 27 Apr 2020 22:19:24 +0000 (23:19 +0100)]
Use intrinsics for SequenceEqual<byte> vectorization to emit at R2R (#32371)

4 years agoHandle additional X509 chain statuses for macOS
Kevin Jones [Mon, 27 Apr 2020 21:25:48 +0000 (17:25 -0400)]
Handle additional X509 chain statuses for macOS

MacOS returns a different status string for certificates that are in a special
database that are explicitly distrusted. Windows has similar behavior, which
reports the certificates as PAL_X509ChainExplicitDistrust. This makes macOS
do the same instead of throwing an exception.

Linux does not appear to have any special distrusting for these
certificates.

4 years agoHandle more basic constraints chain statuses on macOS
Kevin Jones [Mon, 27 Apr 2020 21:21:40 +0000 (17:21 -0400)]
Handle more basic constraints chain statuses on macOS

macOS can return additional chain status strings for a certificate that
was issued by a certificate that violated its basic constraints.

If a leaf certificate is issued from a certificate with CA:FALSE,
the strings BasicConstraintsCA and BasicConstraintsPathLen are
reported. We map these the same for BasicConstraints.

4 years ago[interp] Fix tracking of local refcount when adding movloc opcode (#35524)
Vlad Brezae [Mon, 27 Apr 2020 21:03:53 +0000 (00:03 +0300)]
[interp] Fix tracking of local refcount when adding movloc opcode  (#35524)

* [interp] Log also the used locals size for a method

* [interp] Fix tracking of local refcount when adding movloc opcode

Consider the following IL code pattern:

```
stloc.np 0
dup
stloc 1
```

When `stloc 1` instruction is processed, we know we have local 0 on the top of the stack so we can replace `dup/stloc` with `movloc 0 -> 1`. However, we need to make sure that the refcount for local 0 is increased so we don't prematurely kill instructions that store into this local (the `stloc.np` from above). This is needed because we remove a dependency from the stack but add one from the locals. If the local 0 would have been explicitly pushed with a ldloc, the refcount is updated when we handle the ldloc, and no other updates are necessary.

4 years agoSocketAsyncEngine.Unix: name socket event thread (#35471)
Tom Deseyn [Mon, 27 Apr 2020 19:59:56 +0000 (21:59 +0200)]
SocketAsyncEngine.Unix: name socket event thread (#35471)

* SocketAsyncEngine.Unix: name socket event thread

This makes it more easy to identify the thread amongst
the other threads in the application.

* PR feedback

* Make System.Threading.Thread Reference specific to Unix

4 years agoGuard against (de)serializing pointers & ref structs (#34777)
Layomi Akinrinade [Mon, 27 Apr 2020 19:29:45 +0000 (15:29 -0400)]
Guard against (de)serializing pointers & ref structs (#34777)

* Guard against (de)serializing pointers & ref structs

* Address review feedback

* Update isbyreflike check

* Address review feedback; fetch IsByRefLike with reflection

* Address review feedback

* Remove extra whitespace

* Add debug assert

* Add attribute-based fallback

* Ensure that property look-up with reflection is useful

* Remove IsByRefLike property reflection prob

* Move runtime type debug validation upstream

4 years agoRestore Seperate test builds, but fix broken pipe (#35378)
Steve MacLean [Mon, 27 Apr 2020 18:24:50 +0000 (14:24 -0400)]
Restore Seperate test builds, but fix broken pipe (#35378)

* Build coreclr targetGeneric tests separately for CI (#34790)

* Build CoreClr tests separately

* Build coreclr targetGeneric tests separately for CI
* Build coreclr targetGeneric tests separately in runtime.yml
* Distinguish generic build based on Libraries config
* Build OSX release libraries when CoreCLR changed
* Always use tar.gz compression for generic tests

* Mark all CoreCLR Interop/COM projects OsSpecific

* Assume debug/release libraries doesn't matter during test build

* Add comments

4 years agoDelete SQLCLR EEPolicy leftovers (#35440)
Jan Kotas [Mon, 27 Apr 2020 18:05:58 +0000 (11:05 -0700)]
Delete SQLCLR EEPolicy leftovers (#35440)

4 years agoTabs vs. spaces
Jan Kotas [Mon, 27 Apr 2020 18:05:12 +0000 (11:05 -0700)]
Tabs vs. spaces

4 years agoMerge pull request #35319 from krwq/nullable-xml-1
Krzysztof Wicher [Mon, 27 Apr 2020 17:51:31 +0000 (10:51 -0700)]
Merge pull request #35319 from krwq/nullable-xml-1

Nullable: System.Xml, part 1

4 years ago[installer] Add RuntimeSpecificFrameworkSuffix property (#35124)
Mitchell Hwang [Mon, 27 Apr 2020 17:42:47 +0000 (13:42 -0400)]
[installer] Add RuntimeSpecificFrameworkSuffix property (#35124)

Co-authored-by: Mitchell Hwang <mihw@microsoft.com>
4 years agoLSRA delete a custom logic to get a tree type, use a general one. (#35313)
Sergey Andreenko [Mon, 27 Apr 2020 16:57:35 +0000 (09:57 -0700)]
LSRA delete a custom logic to get a tree type, use a general one. (#35313)

* Test two ways of getting type in LSRA.

* Use `getDefType` in `updateMaxSpill`.

* Rename `typ` to `type`.

4 years agoImprove Crossgen2 map file emitter (#35459)
Tomáš Rylek [Mon, 27 Apr 2020 15:45:22 +0000 (17:45 +0200)]
Improve Crossgen2 map file emitter (#35459)

* Improve Crossgen2 map file emitter

I have rewritten the file name emitter with two main goals in mind:

1) Fix the long-standing problem that map file wasn't showing true
RVA's of the individual symbols / nodes, making it harder to
correlate its information with in-memory R2R PE layout.

2) Add section size and statistics section roughly mimicking what
JanV presented in his recent analytic breakdown of R2R contents.

Thanks

Tomas

4 years ago[mono] Implement System.Console for Android (#35415)
Egor Bogatov [Mon, 27 Apr 2020 14:49:53 +0000 (17:49 +0300)]
[mono] Implement System.Console for Android (#35415)

* Implement ConsolePal for Android

Co-authored-by: Stephen Toub <stoub@microsoft.com>
4 years agoSync shared crossgen2 files (#35504)
Michal Strehovský [Mon, 27 Apr 2020 14:23:43 +0000 (16:23 +0200)]
Sync shared crossgen2 files (#35504)

4 years agoFix Interop.Sys.Write signature (#35505)
Vlad Brezae [Mon, 27 Apr 2020 12:49:42 +0000 (15:49 +0300)]
Fix Interop.Sys.Write signature (#35505)

SystemNative_Write expects fd passed as intptr, while the original sigature was using int. This crashed on mono interpreter because we didn't zero extend the int argument to an intptr, passing in an invalid descriptor.

4 years agoRemove usage of non-generic collections from Mono's SPC (#35312)
Roman Marusyk [Mon, 27 Apr 2020 12:13:27 +0000 (15:13 +0300)]
Remove usage of non-generic collections from Mono's SPC (#35312)

* Remove usage of non-generic collections from Mono's SPC #35282

* Remove usage of non-generic collections from Mono's SPC

Fix #35282

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
4 years agoCompile the wasm cross compiler with llvm. (#35395)
Zoltan Varga [Mon, 27 Apr 2020 11:52:26 +0000 (07:52 -0400)]
Compile the wasm cross compiler with llvm. (#35395)

4 years agoadd correct value when cloning http headers (#35498)
Tomas Weinfurt [Mon, 27 Apr 2020 11:31:56 +0000 (04:31 -0700)]
add correct value when cloning http headers (#35498)

* add correct value when cloning http headers

* Address PR feedback

Co-authored-by: Tomas Weinfurt <furt@Shining.local>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
4 years agoskip Microsoft.XmlSerializer.Generator.Tests on FreeBSD (#35494)
Tomas Weinfurt [Mon, 27 Apr 2020 10:37:47 +0000 (03:37 -0700)]
skip Microsoft.XmlSerializer.Generator.Tests on FreeBSD (#35494)

4 years agofixes for Socket constructor from handle (#34986)
Tomas Weinfurt [Mon, 27 Apr 2020 09:58:20 +0000 (02:58 -0700)]
fixes for Socket constructor from handle (#34986)

* fixes for Socket from handle

* add netlink test

* feedback from review

* add test with socketpair

* update socketpair test

* improve netlink test & feedback from review

* remove extrae empty line

* fixup SocketOptionName.AcceptConnection on OSX and add test

* fix UDS getpeername on Windows

* add debug output to UDS test

* feedback from review

* refactor handling of small buffer for getpeername

* adjust buffer calculation

* update also InternalSize

* more fixes to deal with UDS

* update WinSock getpeername

* push size logic to pal

* feedback from review

* use Span<byte> with getpeername

Co-authored-by: Tomas Weinfurt <furt@Shining.local>
4 years agoRemove reader.TrySkip workaround in JsonDocument parse helper (#35484)
Layomi Akinrinade [Mon, 27 Apr 2020 06:08:25 +0000 (02:08 -0400)]
Remove reader.TrySkip workaround in JsonDocument parse helper (#35484)

4 years agoRemove Pure attribute from System.Collections.Immutable (#35118)
Eric StJohn [Mon, 27 Apr 2020 02:11:47 +0000 (19:11 -0700)]
Remove Pure attribute from System.Collections.Immutable (#35118)

* Preserve Pure attribute in System.Collections.Immutable

* Remove usage of [Pure] from Immutable Collections

4 years agoRefactor Task Socket.ConnectAsync methods to use AwaitableSocketAsyncEventArgs (...
Tom Deseyn [Mon, 27 Apr 2020 00:48:03 +0000 (02:48 +0200)]
Refactor Task Socket.ConnectAsync methods to use AwaitableSocketAsyncEventArgs (#787)

* Refactor Task Socket.ConnectAsync methods to use AwaitableSocketAsyncEventArgs

* Add back BeginConnect_IPAddresses_ListeningSocket_Throws_InvalidOperation

4 years agoAdd AttributeTargets.Interface to SkipLocalsInitAttribute (#35485)
Yair Halberstadt [Mon, 27 Apr 2020 00:11:21 +0000 (03:11 +0300)]
Add AttributeTargets.Interface to SkipLocalsInitAttribute (#35485)

* Add AttributeTargets.Interface to SkipLocalsInitAttribute

* Add AttributeTargets.Interface to ref SkipLocalsInit

4 years agoOptimize CoreCLR Helix runs by pruning the CORE_ROOT folder content (#35243)
Tomáš Rylek [Sun, 26 Apr 2020 22:07:47 +0000 (00:07 +0200)]
Optimize CoreCLR Helix runs by pruning the CORE_ROOT folder content (#35243)

This change limits the content of CORE_ROOT by removing some of the
unused artifacts, most notably the sharedFramework subfolder that
is not used by CoreCLR tests at all. The aim of this change is
to optimize the execution of CoreCLR tests in Helix where according
to Jarret's findings a large amount of time gets spent just
downloading and unpacking the test payloads.

Thanks

Tomas

4 years agoTotal digits invalid cast exception (#34463)
mrj001 [Sun, 26 Apr 2020 18:58:47 +0000 (12:58 -0600)]
Total digits invalid cast exception (#34463)

* Changed comparison so that it no longer casts Int32 values to Decimal.

4 years agoImprove JsonDocumentOptions test coverage (#35457)
madmir [Sun, 26 Apr 2020 15:51:06 +0000 (17:51 +0200)]
Improve JsonDocumentOptions test coverage (#35457)

* Improve JsonDocumentOptions test coverage

* Apply review feedback

Co-authored-by: madmir <madmir@users.noreply.github.com>
4 years agoRyuJIT: Optimize "X<<1" to "lea [X+X]" (#35210)
Egor Bogatov [Sun, 26 Apr 2020 15:21:27 +0000 (18:21 +0300)]
RyuJIT: Optimize "X<<1" to "lea [X+X]" (#35210)

* Optimize "X<<1" to "lea [X+X]"

* optimize to `add reg, reg`

4 years agoMark LoadAssemblyAndGetFunctionPointer as NativeCallable (#35470)
Jan Kotas [Sun, 26 Apr 2020 07:52:54 +0000 (00:52 -0700)]
Mark LoadAssemblyAndGetFunctionPointer as NativeCallable (#35470)

4 years agoFix x86 build error related to #35331 (#35462)
Gleb Balykov [Sun, 26 Apr 2020 01:31:25 +0000 (04:31 +0300)]
Fix x86 build error related to #35331 (#35462)

4 years agoDelete FX_PRODUCT_VERSION host key/value pair (#35455)
Jan Kotas [Sun, 26 Apr 2020 01:28:19 +0000 (18:28 -0700)]
Delete FX_PRODUCT_VERSION host key/value pair (#35455)

It is no longer necessary now that the whole runtime is being built together in dotnet/runtime repo.

4 years agoModule initializers spec proposal (#35140)
Joseph Musser [Sat, 25 Apr 2020 22:46:44 +0000 (18:46 -0400)]
Module initializers spec proposal (#35140)

* Bring over spec from https://blogs.msdn.microsoft.com/junfeng/2005/11/19/module-initializer-a-k-a-module-constructor/

* Document presence of 'metadata merging' as spec bug

* Guarantees that apply to all type initializers apply to module initializers

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
4 years agoFix x86 build
Jan Kotas [Sat, 25 Apr 2020 20:01:09 +0000 (13:01 -0700)]
Fix x86 build

4 years agoDisable validation in System.IO.MemoryMappedFiles AllowFinalization for !IsPreciseGcS...
Jan Kotas [Sat, 25 Apr 2020 17:28:11 +0000 (10:28 -0700)]
Disable validation in System.IO.MemoryMappedFiles AllowFinalization for !IsPreciseGcSupported (#35454)

Fixes #35452

4 years agoMajor fixes to s390x ABI and add TAILCALL trace support (#35232)
monojenkins [Sat, 25 Apr 2020 16:43:24 +0000 (12:43 -0400)]
Major fixes to s390x ABI and add TAILCALL trace support (#35232)

This pull request:
* Fixes the s390x ABI
  * For the case where structures are passed as parameters on the stack
  * Fixes the ```OP_S390_MOVE``` definition so register scheduling works correctly
  * Optimizes ```localloc``` generation
  * Fixes tailcall processing
    * Fixes register reloading
    * Adds ```OP_TAILLCALL_REG``` for s390x
    * Clarifies the conditions when tailcalls are supported on s390x
* Change function comment style to be doxygen-compatible
* Remove dead code
* Extract hardware facilities from CPU to enable use of newer opcodes
* Adds altstack support to exception processing for s390x
* Fixes a crash when using ```--trace``` with programs using tailcalls by providing its own icall method:
  * ```mono_trace_tail_method``` will use the callee and caller methods to report on the tailcall.
  * At the moment tailcalls are trace in ```mono_trace_leave_method``` where the second operand is expected to be a ```MonoProfileCallContext``` from which the return type and value are extracted which is meaningless for tail calls and worse may cause a SEGV.
  * The added call will use the parameters that are set up by ```mini_profiler_emit_tail_call```
* Fixes crashes in ```icall_System_Runtime_InteropServices_Marshal_copy_to_unmanaged``` and ```icall_System_Runtime_InteropServices_Marshal_copy_from_unmanaged```:
  * We now don't check the src/dest when the length field is zero so if either address is null it doesn't cause an exception
  * This is exhibited when an empty UTF16 string is converted to Byte[]. See this excerpt from ```WriteUTF16```in ```BlobBuilder.cs```:
    * For BigEndian systems the ```Encoding.Unicode.GetBytes(value);``` returns a null pointer for empty strings
    * ```WriteBytesUncheced``` invokes ```copy_from_unmanaged_fixed``` which crashes when given a null source pointer
```
            if (BitConverter.IsLittleEndian)
            {
                fixed (char* ptr = &value[0])
                {
                    WriteBytesUnchecked((byte*)ptr, value.Length * sizeof(char));
                }
            }
            else
            {
                byte[] bytes = Encoding.Unicode.GetBytes(value);
                fixed (byte* ptr = &bytes[0])
                {
                    WriteBytesUnchecked((byte*)ptr, bytes.Length);
                }
            }
```
The results of make check now show a higher pass rate:
```
22 test(s) passed, 0 test(s) did not pass.
617 test(s) passed, 71 test(s) did not pass.
216 test(s) passed, 0 test(s) did not pass.
1 test(s) passed, 0 test(s) did not pass.
1 test(s) passed, 0 test(s) did not pass.
2 test(s) passed, 0 test(s) did not pass.
2 test(s) passed, 0 test(s) did not pass.
9 test(s) passed, 0 test(s) did not pass.
9 test(s) passed, 0 test(s) did not pass.
4 test(s) passed, 0 test(s) did not pass.
4 test(s) passed, 0 test(s) did not pass.
1 test(s) passed, 0 test(s) did not pass.
2 test(s) passed, 0 test(s) did not pass.
2 test(s) passed, 0 test(s) did not pass.
2 test(s) passed, 0 test(s) did not pass.
2 test(s) passed, 0 test(s) did not pass.
2 test(s) passed, 0 test(s) did not pass.
6 test(s) passed, 0 test(s) did not pass.
Tests run: 10794, Passed: 10639, Errors: 2, Failures: 54, Inconclusive: 0
Tests run: 10, Passed: 10, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 634, Passed: 630, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 6401, Passed: 6260, Errors: 11, Failures: 6, Inconclusive: 0
Tests run: 2024, Passed: 1824, Errors: 0, Failures: 4, Inconclusive: 0
Tests run: 491, Passed: 466, Errors: 1, Failures: 0, Inconclusive: 0
Tests run: 200, Passed: 198, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 1596, Passed: 1590, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 250, Passed: 250, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 1821, Passed: 1804, Errors: 5, Failures: 2, Inconclusive: 0
Tests run: 24, Passed: 24, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 4, Passed: 4, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 89, Passed: 87, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 58, Passed: 58, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 2405, Passed: 2054, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 100, Passed: 100, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 15, Passed: 15, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 2891, Passed: 2774, Errors: 1, Failures: 6, Inconclusive: 0
Tests run: 22, Passed: 22, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 1, Passed: 1, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 83, Passed: 33, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 61, Passed: 61, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 101, Passed: 97, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 4396, Passed: 4371, Errors: 1, Failures: 2, Inconclusive: 0
Tests run: 247, Passed: 244, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 256, Passed: 123, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 19, Passed: 19, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 5, Passed: 5, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 87, Passed: 26, Errors: 51, Failures: 7, Inconclusive: 0
Tests run: 42, Passed: 42, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 681, Passed: 662, Errors: 0, Failures: 2, Inconclusive: 0
Tests run: 248, Passed: 239, Errors: 0, Failures: 3, Inconclusive: 0
Tests run: 72, Passed: 72, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 5, Passed: 5, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 175, Passed: 173, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 2, Passed: 2, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 169, Passed: 166, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 990, Passed: 928, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 146, Passed: 146, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 290, Passed: 289, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 737, Passed: 727, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 456, Passed: 456, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 36, Passed: 35, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 37, Passed: 37, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 315, Passed: 313, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 303, Passed: 298, Errors: 0, Failures: 1, Inconclusive: 0
Tests run: 303, Passed: 298, Errors: 1, Failures: 0, Inconclusive: 0
Tests run: 375, Passed: 375, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 164, Passed: 164, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 207, Passed: 206, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 9, Passed: 9, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 256, Passed: 237, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 1, Passed: 1, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 35, Passed: 35, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 120, Passed: 16, Errors: 103, Failures: 1, Inconclusive: 0
Tests run: 1422, Passed: 1422, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 65, Passed: 65, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 3, Passed: 0, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 7, Passed: 7, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 11, Passed: 11, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 6, Passed: 6, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 2, Passed: 2, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 14, Passed: 14, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 43, Passed: 43, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 17, Passed: 17, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 11, Passed: 11, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 1, Passed: 1, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 204, Passed: 203, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 11, Passed: 11, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 67, Passed: 67, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 11, Passed: 11, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 21, Passed: 21, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 143, Passed: 142, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 454, Passed: 450, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 7, Passed: 7, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 229, Passed: 227, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 120, Passed: 120, Errors: 0, Failures: 0, Inconclusive: 0
2600 test cases passed (99.54%)
3241 test cases passed (99.6%)
Tests run: 21, Passed: 21, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 143, Passed: 142, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 454, Passed: 450, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 7, Passed: 7, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 229, Passed: 227, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 120, Passed: 120, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 21, Passed: 21, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 143, Passed: 142, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 454, Passed: 450, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 7, Passed: 7, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 229, Passed: 227, Errors: 0, Failures: 0, Inconclusive: 0
Tests run: 120, Passed: 120, Errors: 0, Failures: 0, Inconclusive: 0
```
The majority of failures relate to:
* tailcalls where the eligibility is not as high on s390x as other platforms due to more restrictive conditions
* Debugger tests - sometimes causes the make check to hang on a single test
* There appear still to be a couple of endian issues in the tests
* In a couple of tests short floating point numbers appear to be off on the last significant digit following a conversion from doubles. This may be due to a rounding flag and will be investigated

Co-authored-by: nealef <nealef@users.noreply.github.com>
4 years agoUpdate dependencies from https://github.com/dotnet/llvm-project build 20200424.3...
dotnet-maestro[bot] [Sat, 25 Apr 2020 14:26:13 +0000 (16:26 +0200)]
Update dependencies from https://github.com/dotnet/llvm-project build 20200424.3 (#35443)

- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: 6.0.1-alpha.1.20206.1 -> 6.0.1-alpha.1.20224.3
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: 6.0.1-alpha.1.20206.1 -> 6.0.1-alpha.1.20224.3
- runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: 6.0.1-alpha.1.20206.1 -> 6.0.1-alpha.1.20224.3
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools: 6.0.1-alpha.1.20206.1 -> 6.0.1-alpha.1.20224.3
- runtime.osx.10.12-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: 6.0.1-alpha.1.20206.1 -> 6.0.1-alpha.1.20224.3
- runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk: 6.0.1-alpha.1.20206.1 -> 6.0.1-alpha.1.20224.3

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
4 years agoMake RegexCompiler-generated code more JIT friendly (#35321)
Stephen Toub [Sat, 25 Apr 2020 14:12:10 +0000 (10:12 -0400)]
Make RegexCompiler-generated code more JIT friendly (#35321)

* Make RegexCompiler-generated code more JIT friendly

- Prefer using stloc/ldloc over using dup, especially across branches.
- Use call instead of callvirt where applicable.
- Use shorter form of some instructions

* Remove the rest of the Dups

4 years agoFinal cleanup
Jan Kotas [Sat, 25 Apr 2020 07:10:36 +0000 (00:10 -0700)]
Final cleanup

4 years agoDelete GetDefaultAction
Jan Kotas [Sat, 25 Apr 2020 06:49:16 +0000 (23:49 -0700)]
Delete GetDefaultAction

4 years agoDelete GetActionOnTimeout
Jan Kotas [Sat, 25 Apr 2020 06:44:48 +0000 (23:44 -0700)]
Delete GetActionOnTimeout

4 years agoDelete EEPolicy::GetTimeOut
Jan Kotas [Sat, 25 Apr 2020 06:24:54 +0000 (23:24 -0700)]
Delete EEPolicy::GetTimeOut

4 years agoDelete FAIL_AccessViolation - always no-op
Jan Kotas [Sat, 25 Apr 2020 06:09:08 +0000 (23:09 -0700)]
Delete FAIL_AccessViolation - always no-op

4 years agoDelete fCalculateSecurityInfo arg
Jan Kotas [Sat, 25 Apr 2020 06:07:06 +0000 (23:07 -0700)]
Delete fCalculateSecurityInfo arg

4 years agoDelete fLegacyUnhandledExceptionPolicy - always false
Jan Kotas [Sat, 25 Apr 2020 05:59:47 +0000 (22:59 -0700)]
Delete fLegacyUnhandledExceptionPolicy - always false

4 years agoDelete LegacyNullReferenceExceptionPolicy
Jan Kotas [Sat, 25 Apr 2020 05:42:29 +0000 (22:42 -0700)]
Delete LegacyNullReferenceExceptionPolicy

Always false

4 years agoDelete eFastExitProcess
Jan Kotas [Sat, 25 Apr 2020 05:40:33 +0000 (22:40 -0700)]
Delete eFastExitProcess

4 years agoDelete ResourceConstraintAction
Jan Kotas [Sat, 25 Apr 2020 05:27:06 +0000 (22:27 -0700)]
Delete ResourceConstraintAction

4 years agoDelete HandleStackOverflow arguments
Jan Kotas [Sat, 25 Apr 2020 05:26:36 +0000 (22:26 -0700)]
Delete HandleStackOverflow arguments

4 years agoDelete GetActionOnFailureNoHostNotification
Jan Kotas [Sat, 25 Apr 2020 05:03:38 +0000 (22:03 -0700)]
Delete  GetActionOnFailureNoHostNotification

4 years agoDelete Timeouts
Jan Kotas [Sat, 25 Apr 2020 04:46:57 +0000 (21:46 -0700)]
Delete Timeouts

4 years agoEEPolicy cleanup
Jan Kotas [Sat, 25 Apr 2020 04:37:32 +0000 (21:37 -0700)]
EEPolicy cleanup

4 years agoEmit shorter variants in ILGenerator.Emit(OpCode, int) (#35427)
Stephen Toub [Sat, 25 Apr 2020 13:45:24 +0000 (09:45 -0400)]
Emit shorter variants in ILGenerator.Emit(OpCode, int) (#35427)

The Ldloc, Stloc, Ldloca, Ldc_I4, Ldarg, Ldarga, and Starg opcodes all have shorter variants that take up less space in the IL instruction stream.  ILGenerator.Emit(OpCode, LocalBuilder) already special cases Ldloc, Stloc, and Ldloca to automatically translate those into their shorter forms where applicable, but similar logic doesn't exist in Emit(OpCode, int) for Ldc_I4, Ldarg, Ldarga, and Starg.  Instead, various other libraries higher in the stack that use reflection emit either end up doing all the special-casing with their own helper routines to do the shrinking, or they just forego it and end up with larger IL than is necessary.

This PR just moves the logic down into Emit(OpCode, int) such that all uses can benefit, and removes the special-casing duplication from the other libraries.

4 years agoAdd some missing linker exclusions. (#35448)
Zoltan Varga [Sat, 25 Apr 2020 13:36:40 +0000 (09:36 -0400)]
Add some missing linker exclusions. (#35448)

4 years agoFix asserts in Array.cs (#35447)
Stephen Toub [Sat, 25 Apr 2020 13:36:12 +0000 (09:36 -0400)]
Fix asserts in Array.cs (#35447)

4 years agoFix coreclr Test570 due to ICU on Windows feature (#35435)
Santiago Fernandez Madero [Sat, 25 Apr 2020 13:31:39 +0000 (06:31 -0700)]
Fix coreclr Test570 due to ICU on Windows feature (#35435)

* Remove test and add testcase to PercentDecimalDigits tests

4 years agoCoreCLR versions cleanup (#35327)
Jan Kotas [Sat, 25 Apr 2020 12:32:49 +0000 (05:32 -0700)]
CoreCLR versions cleanup (#35327)

- Use current version numbers everywhere
- Use product version (e.g. 5.0.0) for all user facing versions
- Use file version (e.g. 5.0.20.21010) only when the exact version information is required
- Reduce number of layers of version macro definitions

4 years agoUse attribute Link syntax for Common files (#35436)
Marcus Turewicz [Sat, 25 Apr 2020 12:26:50 +0000 (22:26 +1000)]
Use attribute Link syntax for Common files (#35436)

* Change <Link>...</Link> to Link="..."

* Format existing Link="..."

4 years ago[master] Update dependencies from dotnet/arcade Microsoft/vstest (#35400)
dotnet-maestro[bot] [Sat, 25 Apr 2020 08:06:31 +0000 (10:06 +0200)]
[master] Update dependencies from dotnet/arcade Microsoft/vstest (#35400)

4 years agoDelete redundant CoreCLR regression tests (#35437)
Jan Kotas [Sat, 25 Apr 2020 07:21:32 +0000 (00:21 -0700)]
Delete redundant CoreCLR regression tests (#35437)

Fixes #35045

4 years agoStop building hostmisc as a static lib. (#35431)
Aaron Robinson [Sat, 25 Apr 2020 05:56:59 +0000 (22:56 -0700)]
Stop building hostmisc as a static lib. (#35431)

* Stop building hostmisc as a static lib.

This broke the nethost from being consumable as a static lib.

4 years agoWindows createdump support (#35381)
Mike McLaughlin [Sat, 25 Apr 2020 05:29:16 +0000 (22:29 -0700)]
Windows createdump support (#35381)

Windows createdump support

Build a Windows version of createdump that uses MiniDumpWriteDump.

Launch that createdump from the runtime when the runtime abort because of an unhandled exception when the same environment variables as Linux are set.

Hook up the diagnostic server dump message on Windows.

Add CrashDumpAndTerminateProcess function that generates a dump if enabled and terminates
the process. Replaced varous TerminateProcess calls in the runtime with this new function.

Add resource/version info to createdump.exe

Added stack overflow and debug assert hooks before calls to RaiseFailFastException

4 years agoapply another batch of feedback
Krzysztof Wicher [Sat, 25 Apr 2020 02:08:24 +0000 (19:08 -0700)]
apply another batch of feedback

4 years agoFix typo in ManagedWebSocket comment
Stephen Toub [Sat, 25 Apr 2020 01:09:26 +0000 (21:09 -0400)]
Fix typo in ManagedWebSocket comment

4 years agoAdd `-skipgenerateversion` option to not generate native version headers (#34731)
Bruce Forstall [Sat, 25 Apr 2020 00:35:32 +0000 (17:35 -0700)]
Add `-skipgenerateversion` option to not generate native version headers (#34731)

This allows skipping yet another thing when doing incremental builds.

This already exists in build-runtime.sh; just add it to build-runtime.cmd

4 years agoRemove the Obsolete attribute from the various types that support COM events. (#35412)
Aaron Robinson [Sat, 25 Apr 2020 00:24:42 +0000 (17:24 -0700)]
Remove the Obsolete attribute from the various types that support COM events. (#35412)

Update tests to remove the suppression.

4 years agoFix CompareInfo weightless code point handling, plus other improvements (#1514)
Levi Broderick [Fri, 24 Apr 2020 23:45:21 +0000 (16:45 -0700)]
Fix CompareInfo weightless code point handling, plus other improvements (#1514)

* Create spanified and Rune-accepting overloads of CompareInfo APIs
* Remove much of the duplicated code throughout CompareInfo
* Remove "empty string" optimizations that were causing incorrect comparisons against weightless code points
* Improve error detection around some edge cases

4 years agoRe-enable Windows arm32 testing of JIT stress modes (#34146)
Bruce Forstall [Fri, 24 Apr 2020 23:10:53 +0000 (16:10 -0700)]
Re-enable Windows arm32 testing of JIT stress modes (#34146)

4 years agoSingle-File: Pass BUNDLE_PROBE property to the runtime (#34845)
Swaroop Sridhar [Fri, 24 Apr 2020 21:49:21 +0000 (14:49 -0700)]
Single-File: Pass BUNDLE_PROBE property to the runtime (#34845)

* Single-File: Pass BUNDLE_PROBE property to the runtime

As described in the [design doc](https://github.com/dotnet/designs/blob/master/accepted/2020/single-file/design.md#startup), pass the bundle_probe function pointer encoded as a string to the runtime.

4 years agoapply review feedback
Krzysztof Wicher [Fri, 24 Apr 2020 21:00:41 +0000 (14:00 -0700)]
apply review feedback

4 years agoJIT: speed up fgComputePreds (#35352)
Andy Ayers [Fri, 24 Apr 2020 19:20:13 +0000 (12:20 -0700)]
JIT: speed up fgComputePreds (#35352)

Interaction of `fgComputePreds` and `fgAddRefPred` could be quadratic in the
number of preds.

Usually the number of preds is small (1 or 2) but in some cases seen from
compiled regular expressions it could be in the thousands. On one such case
a single call to fgComputePreds was taking ~20% of jit time.

Since we build the pred list in sorted order we can take advantage of this
to avoid searching the list for potential duplicates in `fgAddRefPred` when
it is called from `fgComputePreds` -- the only possible duplicate entry is
at the end of the list.

This doesn't address perf of subsequent calls to `fgAddRefPred` but likely
those happen somewhat randomly and are unlikely to be as costly.

4 years agoMerge pull request #35234 from noahfalk/nopgoopt
Noah Falk [Fri, 24 Apr 2020 19:13:32 +0000 (12:13 -0700)]
Merge pull request #35234 from noahfalk/nopgoopt

Add build argument to suppress PGO

4 years agoFix importing of calls with explicit `this`. (#35385)
Eugene Rozenfeld [Fri, 24 Apr 2020 18:46:32 +0000 (11:46 -0700)]
Fix importing of calls with explicit `this`. (#35385)

When signature calling convention has `CORINFO_CALLCONV_EXPLICITTHIS`
set `this` argument is explicitly included in the argument list.
The importer wasn't taking that into account and was trying to pop
an implicit `this`, which resulted in `BADCODE("stack underflow")`
from `impPopStack` and `System.InvalidProgramException`.

Fixes #35384

4 years agoFix rolling builds (#35416)
Santiago Fernandez Madero [Fri, 24 Apr 2020 18:33:38 +0000 (11:33 -0700)]
Fix rolling builds (#35416)

4 years agoPick up renamed Microsoft.NET.ILLink.Tasks package (#35214)
Sven Boemer [Fri, 24 Apr 2020 18:17:25 +0000 (11:17 -0700)]
Pick up renamed Microsoft.NET.ILLink.Tasks package (#35214)

4 years agoUpdate the x86 hwintrinsic list to match the arm64 layout (#35364)
Tanner Gooding [Fri, 24 Apr 2020 18:16:17 +0000 (11:16 -0700)]
Update the x86 hwintrinsic list to match the arm64 layout (#35364)

* Update the x86 hwintrinsic list to match the arm64 layout

* Applying formatting patch

4 years agoDon't re-initialize static fields in Console (#35409)
Marek Safar [Fri, 24 Apr 2020 18:14:15 +0000 (20:14 +0200)]
Don't re-initialize static fields in Console (#35409)

the compiler is not capable removing the initialization

4 years agoImprove Array.Sort(T[]) performance (#35297)
Stephen Toub [Fri, 24 Apr 2020 18:12:47 +0000 (14:12 -0400)]
Improve Array.Sort(T[]) performance (#35297)

* Improve Array.Sort(T[]) performance

A variety of tweaks to improve `Array.Sort<T>(T[])` performance and address a regression left over from moving the array sorting implementation from native to managed.  The two most impactful are using `Unsafe.*` in `PickPivotAndPartition` to avoid bounds checks and aggressive inlining on `SwapIfGreater`.  A few other small improvements to codegen round it out.

I only made the unsafe changes in the `Sort<T>(T[])` implementation, and not in the more complicated implementations, such as for `Sort<T>(T[], Comparer<T>)` and `Sort<TKey, TValue>(TKey[], TValue[])`, but I did make some of the smaller changes for consistency across the file.

* Address PR feedback, and more tweaks

4 years agoImplement BinaryPrimitives.ReverseEndianness for arm64 using rev (#34617)
Egor Bogatov [Fri, 24 Apr 2020 17:35:36 +0000 (20:35 +0300)]
Implement BinaryPrimitives.ReverseEndianness for arm64 using rev (#34617)

* Implement GT_BSWAP for arm64

* Add GT_BSWAP16

* use TARGET_ARM64 in codegenarmarch.cpp

4 years agoAdd runtimeFlavor parameter to build-test-job.yml (#35377)
Tomáš Rylek [Fri, 24 Apr 2020 16:35:28 +0000 (18:35 +0200)]
Add runtimeFlavor parameter to build-test-job.yml (#35377)

4 years agoAdd logic for immutable collection converters to share create-object delegate (#35080)
Layomi Akinrinade [Fri, 24 Apr 2020 16:25:42 +0000 (12:25 -0400)]
Add logic for immutable collection converters to share create-object delegate (#35080)

* Add logic for immutable collection converters to share create-object delegate

* Address review feedback

4 years agoEnable DnsGetHostEntry_LocalHost_ReturnsFqdnAndLoopbackIPs (#35399)
Alexander Nikolaev [Fri, 24 Apr 2020 16:21:19 +0000 (18:21 +0200)]
Enable DnsGetHostEntry_LocalHost_ReturnsFqdnAndLoopbackIPs (#35399)

Test is enabled because the failures were caused by Helix infra issue (a misconfigured agent) which was fixed a couple of days ago.

Fixes #34317

4 years agoMake C-lib math functions introspection more robust (#35325)
Adeel Mujahid [Fri, 24 Apr 2020 16:11:56 +0000 (19:11 +0300)]
Make C-lib math functions introspection more robust (#35325)

* Make atan2 introspection more robust

* Use volatile and variables for all math.h checks

4 years agoFix null reference handling in VSD stub for x86 (#35331)
Jan Vorlicek [Fri, 24 Apr 2020 15:39:34 +0000 (17:39 +0200)]
Fix null reference handling in VSD stub for x86 (#35331)

* Fix null reference handling in VSD stub for x86

The regression test that I've added recently to accompany a fix for null
reference handling in VSD stub for x64 is failing for x86. The problem
is that the null reference handling in VSD dispatch and resolve stubs
was broken in another way due to the x86 calling convention. When the
call went through a shuffle thunk that removes one stack argument due to
the shuffle, the manual unwinding in AdjustContextForVirtualStub was
getting an ESP that was off by one stack slot and exception handling
wasn't able to correctly unwind from that location to the caller.

This change fixes it by letting the AdjustContextForVirtualStub manually
unwind to the instruction after the call to the shuffle thunk / VSD stub
and updating the ESP according to the number of stack arguments of the
target method.

I have also modified the regression test. One change was to make a call
with multiple parameters to verify that the logic to get stack arguments
size is working correctly. Another change was to make sure that both
dispatch and resolve stub cases are tested.

* Replace MethodTable in the ResolveStub by size of stack args

This prevents issues in case the type represented by the MethodTable got
unloaded.

* Make the stack arguments size stuff Windows specific

On Unix x86, the stack is cleaned up by the caller, not the callee.

4 years agoRefactor get_time_stamp_ns (#34536)
Fan Yang [Fri, 24 Apr 2020 15:35:58 +0000 (11:35 -0400)]
Refactor get_time_stamp_ns (#34536)

* Refactor get_time_stamp_ns

* Add place holder function for pc to make pc build pass

* Add missing header file

* Move all time functions to mono-time.c

* Make sampling_thread_running a global variable

* Pass void* to init, clean_up and get_time function to accormodate different clock ID types for different os, and move back profiler specific function

* Add static keyword for local helper function and fix a typo

* Change to platform-specific typedef approach

* Add missing header file for macOS

* Add missing header file for linux

* Change header file name

* Change header file name one more time

* Fix failures on macOS

* Update src/mono/mono/utils/mono-time.h

Co-Authored-By: Ryan Lucia <ryan@luciaonline.net>
Co-authored-by: Ryan Lucia <ryan@luciaonline.net>
4 years agoBuild warnings (#35404)
Tom Deseyn [Fri, 24 Apr 2020 15:33:42 +0000 (17:33 +0200)]
Build warnings (#35404)

* Fix cmake warning about unmatched endif argument

* crossgen-corelib: fix empty mkdir warning

4 years ago[jit] use helper to obtain method signature (#35344)
monojenkins [Fri, 24 Apr 2020 15:16:04 +0000 (11:16 -0400)]
[jit] use helper to obtain method signature (#35344)

`mini_method_get ()` doesn't guarantee that `method->signature` is set.

Fixes a problem in https://github.com/mono/mono/pull/19624

/cc @lewing

Co-authored-by: lewurm <lewurm@users.noreply.github.com>
4 years agoMerge pull request #35403 from janvorli/update-unloadability-doc
Jan Vorlicek [Fri, 24 Apr 2020 14:47:02 +0000 (16:47 +0200)]
Merge pull request #35403 from janvorli/update-unloadability-doc

Update unloadability doc based on recent changes

4 years agoRemoved unecessary download of mono product build. (#35287)
Nathan Ricci [Fri, 24 Apr 2020 14:36:54 +0000 (10:36 -0400)]
Removed unecessary download of mono product build. (#35287)

4 years agoUpdate unloadability doc based on recent changes
Jan Vorlicek [Fri, 24 Apr 2020 12:56:29 +0000 (14:56 +0200)]
Update unloadability doc based on recent changes

The management of the handle that native runtime keeps to
AssemblyLoadContext has changed to fix a race recently, so I am updating
the doc according to the change.

4 years agoUpdate src/mono/mono/utils/mono-time.h
Fan Yang [Fri, 24 Apr 2020 12:18:51 +0000 (08:18 -0400)]
Update src/mono/mono/utils/mono-time.h

Co-Authored-By: Ryan Lucia <ryan@luciaonline.net>