mono.git
7 years agoAdd CoreRT submodule
Marek Safar [Tue, 29 Nov 2016 18:20:11 +0000 (19:20 +0100)]
Add CoreRT submodule

7 years ago[bcl] Clean up some warnings
Marek Safar [Tue, 29 Nov 2016 18:16:02 +0000 (19:16 +0100)]
[bcl] Clean up some warnings

7 years agoRevert "[build] Enable aot for Microsoft.CodeAnalysis.dll/Microsoft.CodeAnalysis...
Marek Safar [Tue, 29 Nov 2016 15:29:08 +0000 (16:29 +0100)]
Revert "[build] Enable aot for Microsoft.CodeAnalysis.dll/Microsoft.CodeAnalysis.CSharp.dll, as the aot compiler generates smaller images now."

This reverts commit e186dcff2c2b6c6f32c72858425ba8b9d8b33efb.

7 years ago[configure.ac] Rename `hybrid` runtime preset to `aot_preferred`
Ludovic Henry [Mon, 28 Nov 2016 18:24:22 +0000 (13:24 -0500)]
[configure.ac] Rename `hybrid` runtime preset to `aot_preferred`

7 years agoMerge pull request #4040 from ntherning/disable-symbolicate-tests-on-windows
Niklas Therning [Tue, 29 Nov 2016 14:40:27 +0000 (15:40 +0100)]
Merge pull request #4040 from ntherning/disable-symbolicate-tests-on-windows

Disable symbolicate tests on Windows

7 years ago[System] Report test failure using Assert
Marek Safar [Tue, 29 Nov 2016 11:01:19 +0000 (12:01 +0100)]
[System] Report test failure using Assert

7 years ago[System] Update ClientWebSocket test to use Setup
Marek Safar [Tue, 29 Nov 2016 10:44:37 +0000 (11:44 +0100)]
[System] Update ClientWebSocket test to use Setup

7 years agoDisable symbolicate tests on Windows
Niklas Therning [Tue, 29 Nov 2016 09:56:08 +0000 (10:56 +0100)]
Disable symbolicate tests on Windows

We will ignore the failing test-with-aot-msym test for now.

7 years ago[bcl] Fix a regression introduced by 91c68de23f5067d000207194466813239cda7866. If...
Zoltan Varga [Tue, 29 Nov 2016 08:06:55 +0000 (03:06 -0500)]
[bcl] Fix a regression introduced by 91c68de23f5067d000207194466813239cda7866. If a thread was added to (#4038)

blocking_threads twice, then removed once, the corresponding entry in threads_stacktraces was removed,
causing an exception in ReleaseHandle () later.

7 years ago[runtime] Add error handling to mono_get_dbnull_object () it can fail due to a TAE...
Zoltan Varga [Tue, 29 Nov 2016 08:01:35 +0000 (03:01 -0500)]
[runtime] Add error handling to mono_get_dbnull_object () it can fail due to a TAE. (#4039)

7 years agoMerge pull request #4023 from lateralusX/jlorenss/test-driver-reporter
Johan Lorensson [Tue, 29 Nov 2016 07:47:12 +0000 (08:47 +0100)]
Merge pull request #4023 from lateralusX/jlorenss/test-driver-reporter

Adding support to get test results back from TestDriver.

7 years ago[build] Enable aot for Microsoft.CodeAnalysis.dll/Microsoft.CodeAnalysis.CSharp.dll...
Zoltan Varga [Tue, 29 Nov 2016 05:29:18 +0000 (00:29 -0500)]
[build] Enable aot for Microsoft.CodeAnalysis.dll/Microsoft.CodeAnalysis.CSharp.dll, as the aot compiler generates smaller images now.

7 years ago[aot] Only emit instances when using full aot.
Zoltan Varga [Tue, 29 Nov 2016 05:22:42 +0000 (00:22 -0500)]
[aot] Only emit instances when using full aot.

7 years ago[runtime] Fix e659982b7b8f11ecf80919646353ad3c16240697, two callbacks were mixed up.
Zoltan Varga [Tue, 29 Nov 2016 02:13:39 +0000 (21:13 -0500)]
[runtime] Fix e659982b7b8f11ecf80919646353ad3c16240697, two callbacks were mixed up.

7 years agoPrevent ThreadAbort from prematurely ending function calls in catch block (#1837)
Alexander Kyte [Tue, 29 Nov 2016 02:01:09 +0000 (21:01 -0500)]
Prevent ThreadAbort from prematurely ending function calls in catch block (#1837)

* [runtime] Fix naming scheme for check if stack grows upward

It was very counter-intutitive to have a file-local preprocessor variable
with a name that sounds like it should have the same truthiness as a given global
preprocessor variable but was defined as the negation of the global variable.

* [runtime] Prevent ThreadAbort from terminating function calls in catch body

ThreadAbortExceptions are special in that if the thread has not
had it's abortion reset, when it reaches the end of a catch block it
must throw.

Consider the situation where a thread has been aborted and the
ThreadAbortException has been caught. If this catch block calls
a method that has a try/catch combination, the current implementation
will throw the ThreadAbortException at the end of the catch in that
function.

Usually you only care that Thread abortions are prompt, but this bug
could result in dramatic program behavior changes when this is combined
with lazy class initialization.

```
Example:
Console.WriteLine inside a thread abort with an uninitialized Console.
```

This fix records the stack pointer when a catch clause is entered, and
only rethrows the abortion if we're exiting a catch clause above or at the
level of the catch clause previously entered.

7 years ago[aot] Bump aot file version after c690636c01df73badb1e24c146da8492dbeabade.
Zoltan Varga [Tue, 29 Nov 2016 01:58:45 +0000 (20:58 -0500)]
[aot] Bump aot file version after c690636c01df73badb1e24c146da8492dbeabade.

7 years ago[jit] Call mono_jit_thread_attach () through a GOT slot instead of directly, so the...
Zoltan Varga [Tue, 29 Nov 2016 01:57:52 +0000 (20:57 -0500)]
[jit] Call mono_jit_thread_attach () through a GOT slot instead of directly, so the call doesn't go through the trampoline code which wouldn't work if the thread was not attached. (#4037)

7 years ago[llvm] Fix a regression introduced by d231b5134decb9f2303be441a119ca552b51d0e1.
Zoltan Varga [Tue, 29 Nov 2016 01:14:11 +0000 (20:14 -0500)]
[llvm] Fix a regression introduced by d231b5134decb9f2303be441a119ca552b51d0e1.

7 years agoMerge pull request #4009 from kumpera/lazy-array-ifaces
Rodrigo Kumpera [Mon, 28 Nov 2016 23:54:03 +0000 (18:54 -0500)]
Merge pull request #4009 from kumpera/lazy-array-ifaces

[runtime] Implement lazy interface implementation for arrays.

7 years ago[runtime] Remove the eager array interfaces code. Good ridance.
Rodrigo Kumpera [Mon, 28 Nov 2016 22:54:38 +0000 (14:54 -0800)]
[runtime] Remove the eager array interfaces code. Good ridance.

7 years ago[runtime] Clean mono_init_internal hacks. Moved to mono_class_setup_mono_type / mono_...
Rodrigo Kumpera [Mon, 28 Nov 2016 22:54:18 +0000 (14:54 -0800)]
[runtime] Clean mono_init_internal hacks. Moved to mono_class_setup_mono_type / mono_class_create_from_typedef.

7 years ago[runtime] Fix bad packing in MonoClass.
Rodrigo Kumpera [Tue, 22 Nov 2016 23:30:41 +0000 (15:30 -0800)]
[runtime] Fix bad packing in MonoClass.

7 years ago[runtime] Implement lazy interface implementation for arrays.
Rodrigo Kumpera [Mon, 21 Nov 2016 23:22:08 +0000 (15:22 -0800)]
[runtime] Implement lazy interface implementation for arrays.

We have the following set of problems:

Arrays implement interfaces that are invariant but behave like covariant.
Those are IList`1, ICollection`1, IEnumerable`1

Arrays of primitive types are type equivalent based on their underlying type.
This means int[], uint[] and IntEnum[] are all interchangeable. And so is casting among their interfaces.
Meaning this is valid: `(IList<IntEnum>)(object)new int[1]`.

Finally, the way we implement IEnumerator`1 for arrays forces it to behave just like the other 3 interfaces.

Implementation:

Introduce MonoClass::is_array_special_interface, set for all the above interfaces. This allow fast checking of the interfaces in question.

mono_class_is_assignable_from now includes the array casting rules.

Change mono_class_interface_offset_with_variance to take arrays into account when looking for a candidate iface.

The JIT implements casting of those interfaces using the cast with cache wrapper.

Finally, to handle the weird primitive rules, set the cast_class of sbyte, ushort, uint and ulong to their same-size buddies.
This makes it easier for the casting code to resolve this problem.

Problems:

Casting performance is terrible, anywhere from 60% to 1000% slower on a micro-benchmark.
Can be improved by extending our casting wrapper to handle those interfaces (probably would have to give up inlining as they would be huge)

The code in domain.c is icky, but not sure where to put it otherwise.

IEnumerator could be solved in Array.cs by not forcing it to be magic as well. Meaning the folowing

```
object array = new int[1];
var a = array as IList<int>;
var b = array as IList<uint>;

a.GetEnumerator().GetType () != b.GetEnumerator().GetType ();
```

The last line is false today but it's harmless to change it to avoid the casting penalty for such central type.

7 years ago[build] Install also from mcs/packages
Marek Safar [Mon, 28 Nov 2016 22:30:14 +0000 (23:30 +0100)]
[build] Install also from mcs/packages

7 years agoRevert "[CI] Disable winforms tests on all platforms."
Zoltan Varga [Mon, 28 Nov 2016 19:04:46 +0000 (14:04 -0500)]
Revert "[CI] Disable winforms tests on all platforms."

This reverts commit 598183023b74fad649a43fd9fbeec0f962a55a8a.

7 years ago[CI] Disable winforms tests on all platforms.
Zoltan Varga [Mon, 28 Nov 2016 18:56:37 +0000 (13:56 -0500)]
[CI] Disable winforms tests on all platforms.

7 years agoConvert MonoClassExt to class properties (#4022)
Zoltan Varga [Mon, 28 Nov 2016 18:42:16 +0000 (13:42 -0500)]
Convert MonoClassExt to class properties (#4022)

* [runtime] Store the class failure data as a property.

* [runtime] Store the list of nested classes as a class property.

* [runtime] Move the property relation information from MonoClassExt into a class property.

* [runtime] Move the event relation information from MonoClassExt into a class property.

* [runtime] Move the field_def_values field from MonoClassExt into a class property.

* [runtime] Move the declsec_flags field from MonoClassExt into a class property.

* [runtime] Remove unused MonoClassExt infrastructure.

* [runtime] Add some API docs.

7 years agoMerge pull request #4015 from xmcclure/new-threads-collect-fix
Andi McClure [Mon, 28 Nov 2016 15:37:55 +0000 (10:37 -0500)]
Merge pull request #4015 from xmcclure/new-threads-collect-fix

Possibly fix hang in sgen-new-threads-collect.exe

7 years agoMerge pull request #2774 from marek-safar/roslyn
Marek Safar [Mon, 28 Nov 2016 13:38:54 +0000 (14:38 +0100)]
Merge pull request #2774 from marek-safar/roslyn

Roslyn compiler switch

7 years agoMerge pull request #3973 from mono/small-perf
Vlad Brezae [Mon, 28 Nov 2016 12:38:16 +0000 (14:38 +0200)]
Merge pull request #3973 from mono/small-perf

[Perf] Replace some exhaustive O(n^3) or O(n^2) iterations with O(n)

7 years agoSwitch to cecil branch with better pdb handling
Marek Safar [Wed, 19 Oct 2016 19:00:42 +0000 (21:00 +0200)]
Switch to cecil branch with better pdb handling

7 years ago[build] Bump required bootraping mono version and download it automatically
Marek Safar [Tue, 15 Nov 2016 16:32:37 +0000 (17:32 +0100)]
[build] Bump required bootraping mono version and download it automatically

7 years ago[build] Roslyn switch
Marek Safar [Tue, 5 Apr 2016 14:34:53 +0000 (16:34 +0200)]
[build] Roslyn switch

7 years ago[marshal] Fix API documentation comment on mono_string_to_byvalwstr
Miguel de Icaza [Mon, 28 Nov 2016 02:37:47 +0000 (21:37 -0500)]
[marshal] Fix API documentation comment on mono_string_to_byvalwstr

7 years ago[runtime] Fix mono_image_load_module_checked () so it actually stores the loaded...
Zoltan Varga [Mon, 28 Nov 2016 02:36:48 +0000 (21:36 -0500)]
[runtime] Fix mono_image_load_module_checked () so it actually stores the loaded netmodule in image->modules, not the parent image itself. Fixes #47762. (#4029)

7 years ago[aot] Avoid a crash on class loading failures. Fixes #47152.
Zoltan Varga [Sun, 27 Nov 2016 03:45:21 +0000 (22:45 -0500)]
[aot] Avoid a crash on class loading failures. Fixes #47152.

7 years ago[runtime] Fix a warning.
Zoltan Varga [Sat, 26 Nov 2016 22:02:40 +0000 (17:02 -0500)]
[runtime] Fix a warning.

7 years ago[jit] Fix some SIMD problems on x86.
Zoltan Varga [Sat, 26 Nov 2016 21:33:31 +0000 (16:33 -0500)]
[jit] Fix some SIMD problems on x86.

7 years agoMerge pull request #4028 from monojenkins/update-csprojs
Alexander Köplinger [Sat, 26 Nov 2016 18:16:09 +0000 (19:16 +0100)]
Merge pull request #4028 from monojenkins/update-csprojs

[msvc] Update csproj files

7 years ago[msvc] Update csproj files
monojenkins [Sat, 26 Nov 2016 16:45:55 +0000 (16:45 +0000)]
[msvc] Update csproj files

7 years ago[Facades] Don't build System.Drawing.Primitives.dll by default for monotouch_watch...
Alexander Köplinger [Fri, 25 Nov 2016 19:48:36 +0000 (20:48 +0100)]
[Facades] Don't build System.Drawing.Primitives.dll by default for monotouch_watch profile

It needs special logic like the other monotouch profiles in the products
since we don't have a System.Drawing assembly/types for these profiles in Mono
and don't embed the types in the facade anymore after 1074fe91bd9b33a84040cc9d0d5da42079633d2a.

7 years agoMerge pull request #4026 from monojenkins/update-csprojs
Marek Safar [Fri, 25 Nov 2016 17:24:35 +0000 (18:24 +0100)]
Merge pull request #4026 from monojenkins/update-csprojs

[msvc] Update csproj files

7 years ago[Facades] Remove watch special System.Drawing.Primitives, all types are now available...
Marek Safar [Fri, 25 Nov 2016 16:57:58 +0000 (17:57 +0100)]
[Facades] Remove watch special System.Drawing.Primitives, all types are now available in watchos.dll

7 years ago[msvc] Update csproj files
monojenkins [Fri, 25 Nov 2016 16:51:25 +0000 (16:51 +0000)]
[msvc] Update csproj files

7 years agoMerge pull request #4024 from akoeplinger/mkbundle-messages
Alexander Köplinger [Fri, 25 Nov 2016 16:07:13 +0000 (17:07 +0100)]
Merge pull request #4024 from akoeplinger/mkbundle-messages

[mkbundle] Print error message when assemblies couldn't be loaded

7 years agoAdding support for get test results in TestDriver.
lateralusX [Fri, 25 Nov 2016 12:17:38 +0000 (13:17 +0100)]
Adding support for get test results in TestDriver.

Added support to pass in an instance of a TestDriverReporter class. If this
an instance of this class is passed in it will get the number of executed, skipped
and failed tests. This could be very useful for external runners that would like
to present the result of TestDriver executed tests.

7 years ago[mkbundle] Print error message when assemblies couldn't be loaded
Alexander Köplinger [Fri, 25 Nov 2016 11:40:49 +0000 (12:40 +0100)]
[mkbundle] Print error message when assemblies couldn't be loaded

There were two places in mkbundle where it'd simply exit without printing anything,
leading to confusion such as in https://bugzilla.xamarin.com/show_bug.cgi?id=46479.

7 years agoMerge pull request #4020 from akoeplinger/mobile_static-rename
Alexander Köplinger [Fri, 25 Nov 2016 11:03:35 +0000 (12:03 +0100)]
Merge pull request #4020 from akoeplinger/mobile_static-rename

Rename the mobile_static profile to aot_only

7 years ago[corlib] Move ComAwareEventInfo stub into System.Core
Alexander Köplinger [Fri, 25 Nov 2016 02:38:45 +0000 (03:38 +0100)]
[corlib] Move ComAwareEventInfo stub into System.Core

It was mistakenly added to corlib, it is in System.Core.dll on .NET

7 years ago[jit] Fix more simd+aot issues. Avoid treating the Vector<T> GTD or Vector<T_REF...
Zoltan Varga [Thu, 24 Nov 2016 22:23:59 +0000 (17:23 -0500)]
[jit] Fix more simd+aot issues. Avoid treating the Vector<T> GTD or Vector<T_REF> or Vector<T_GSHAREDVT> as simd types. (#4021)

7 years agoMerge pull request #4019 from vargaz/get-gclass-locking
Bernhard Urban [Thu, 24 Nov 2016 20:57:00 +0000 (21:57 +0100)]
Merge pull request #4019 from vargaz/get-gclass-locking

[runtime] Reduce the size of the critical section in mono_generic_cla…

7 years agoMerge pull request #4017 from vargaz/get-array-class-locking
Bernhard Urban [Thu, 24 Nov 2016 20:54:36 +0000 (21:54 +0100)]
Merge pull request #4017 from vargaz/get-array-class-locking

[runtime] Decrease the size of the critical section in mono_bounded_a…

7 years agoMerge pull request #4018 from vargaz/get-fnptr-locking
Bernhard Urban [Thu, 24 Nov 2016 20:54:01 +0000 (21:54 +0100)]
Merge pull request #4018 from vargaz/get-fnptr-locking

[runtime] Reduce the size of the critical section in mono_fnptr_class…

7 years ago[runtime] Reduce the size of the critical section in mono_fnptr_class_get ().
Zoltan Varga [Wed, 23 Nov 2016 22:51:44 +0000 (17:51 -0500)]
[runtime] Reduce the size of the critical section in mono_fnptr_class_get ().

7 years agoRename the mobile_static profile to aot_only
Alexander Köplinger [Thu, 24 Nov 2016 01:33:29 +0000 (02:33 +0100)]
Rename the mobile_static profile to aot_only

We decided it's a better name since we're using the profile to
test FullAOT scenarios on desktop (as opposed to the mobile profiles).

While doing the rename I saw that a lot of the #ifdefs were using
MOBILE_STATIC even though the code should actually be included/excluded
in all FullAOT scenarios, e.g. System.Reflection.Emit. I replaced those
cases with FULL_AOT_RUNTIME instead.

For cases where code is specific to this profile, I added a new
AOT_ONLY_DESKTOP define.

7 years ago[Facades] Add netstandard
Marek Safar [Thu, 24 Nov 2016 16:14:54 +0000 (17:14 +0100)]
[Facades] Add netstandard

7 years ago[Perf] Free process in-place in loop on modules iterations.
Marius Ungureanu [Thu, 24 Nov 2016 15:17:12 +0000 (17:17 +0200)]
[Perf] Free process in-place in loop on modules iterations.

7 years agoBump cecil
Marek Safar [Thu, 24 Nov 2016 11:14:07 +0000 (12:14 +0100)]
Bump cecil

7 years ago[mcs] Count arity correctly for deeply nested types
Marek Safar [Thu, 24 Nov 2016 10:58:46 +0000 (11:58 +0100)]
[mcs] Count arity correctly for deeply nested types

7 years ago[runtime] Move more callbacks to the RuntimeCallbacks structure. (#4016)
Zoltan Varga [Thu, 24 Nov 2016 00:23:10 +0000 (19:23 -0500)]
[runtime] Move more callbacks to the RuntimeCallbacks structure. (#4016)

7 years ago[runtime] Decrease the size of the critical section in mono_bounded_array_class_get ().
Zoltan Varga [Thu, 24 Nov 2016 00:20:00 +0000 (19:20 -0500)]
[runtime] Decrease the size of the critical section in mono_bounded_array_class_get ().

7 years ago[runtime] Reduce the size of the critical section in mono_generic_class_get_class ().
Zoltan Varga [Wed, 23 Nov 2016 22:29:39 +0000 (17:29 -0500)]
[runtime] Reduce the size of the critical section in mono_generic_class_get_class ().

7 years agoUse DateTime.UtcNow not DateTime.Now in test
Andi McClure [Wed, 23 Nov 2016 21:22:11 +0000 (16:22 -0500)]
Use DateTime.UtcNow not DateTime.Now in test

7 years ago[runtime] Disable the Wformat-zero-length warning.
Zoltan Varga [Wed, 23 Nov 2016 20:52:37 +0000 (15:52 -0500)]
[runtime] Disable the Wformat-zero-length warning.

7 years agoPossibly fix hang in sgen-new-threads-collect.exe
Andi McClure [Wed, 23 Nov 2016 20:33:27 +0000 (15:33 -0500)]
Possibly fix hang in sgen-new-threads-collect.exe

This test is occasionally taking over 15 minutes to complete. This
could be a hang in the runtime, but the test has a scheduling fairness
issue which could also have the same result (if the GC thread wakes up
much more often than the join thread). Patch slows down the GC rate to
give the join thread a chance to work, and extends the test to a fixed
30 second runtime.

7 years ago[simd] Fix a few AOT problems.
Zoltan Varga [Wed, 23 Nov 2016 19:48:22 +0000 (14:48 -0500)]
[simd] Fix a few AOT problems.

7 years ago[bcl] Implement Thread.CurrentThread using an icall which calls mono_… (#4011)
Zoltan Varga [Wed, 23 Nov 2016 19:43:47 +0000 (14:43 -0500)]
[bcl] Implement Thread.CurrentThread using an icall which calls mono_… (#4011)

* [bcl] Implement Thread.CurrentThread using an icall which calls mono_thread_current () to avoid creating duplicate Thread objects.

* [bcl] Remove unused Thread:CurrentInternalThread_internal () icall.

* [bcl] Optimize Thread:CurrentThread a bit.

7 years agoMerge pull request #4013 from ntherning/fix-assert-in-poll_event_wait-on-WSAENOTSOCK...
Niklas Therning [Wed, 23 Nov 2016 17:58:29 +0000 (18:58 +0100)]
Merge pull request #4013 from ntherning/fix-assert-in-poll_event_wait-on-WSAENOTSOCK-on-windows-2

Fix assert in poll_event_wait() on WSAENOTSOCK on Windows #2

7 years ago[System] Don't send response on empty stream write. Fixes #47549
Marek Safar [Wed, 23 Nov 2016 16:40:00 +0000 (17:40 +0100)]
[System] Don't send response on empty stream write. Fixes #47549

7 years agoMerge pull request #3962 from mkorkalo/fix_MonoBtlsContext_memory_leak
Martin Baulig [Wed, 23 Nov 2016 15:50:09 +0000 (16:50 +0100)]
Merge pull request #3962 from mkorkalo/fix_MonoBtlsContext_memory_leak

fix a massive memory leak in MonoBtlsContext

7 years agoMerge pull request #3992 from lambdageek/dev-handles-srassembly
Aleksey Kliger (λgeek) [Wed, 23 Nov 2016 14:47:37 +0000 (09:47 -0500)]
Merge pull request #3992 from lambdageek/dev-handles-srassembly

[coop] Use handles in System.Reflection.Assembly.{GetReferencedAssemblies,InternalGetAssemblyName}

7 years agoFix assert in poll_event_wait() on WSAENOTSOCK on Windows #2
Niklas Therning [Wed, 23 Nov 2016 13:57:45 +0000 (14:57 +0100)]
Fix assert in poll_event_wait() on WSAENOTSOCK on Windows #2

PR #3998 fixes an error handling issue in poll_event_wait(). This new change
fixes a minor code style problem in that PR, the condition in a ternary wasn't
enclosed in parentheses.

7 years ago[runtime] Filter out duplicate interfaces in mono_class_get_implemented_interfaces...
Zoltan Varga [Wed, 23 Nov 2016 13:20:56 +0000 (08:20 -0500)]
[runtime] Filter out duplicate interfaces in mono_class_get_implemented_interfaces (). (#4007)

7 years ago[runtime] Allocate the temporary vtable array using g_malloc in mono_class_setup_vtab...
Zoltan Varga [Wed, 23 Nov 2016 03:24:38 +0000 (22:24 -0500)]
[runtime] Allocate the temporary vtable array using g_malloc in mono_class_setup_vtable (), alloca can overflow for large vtable sizes. Hopefully fixes #45140. (#4006)

7 years ago[threadpool] Replace stop by abort for worker thread
Ludovic Henry [Tue, 22 Nov 2016 15:52:00 +0000 (10:52 -0500)]
[threadpool] Replace stop by abort for worker thread

7 years ago[Socket] Fix DuplicateAndClose (#3995)
Kenneth Skovhede [Wed, 23 Nov 2016 00:04:57 +0000 (01:04 +0100)]
[Socket] Fix DuplicateAndClose (#3995)

* Fixed issue 47425

This fix simply ensures that the `m_Handle` value is not processed by the GC after a call to `DuplicateAndClose` as that causes the duplicated socket to close.

A potential issue is that this will leak sockets if the sockets are never re-created.

* Implemented ref-counting as suggested by @ludovic-henry

7 years agoBockbuild
Alexis Christoforides [Wed, 23 Nov 2016 00:01:02 +0000 (19:01 -0500)]
Bockbuild

7 years agoBump corlib version.
Aleksey Kliger [Mon, 21 Nov 2016 16:53:48 +0000 (11:53 -0500)]
Bump corlib version.

7 years ago[reflection] Implement GetReferencedAssemblies in managed
Aleksey Kliger [Mon, 21 Nov 2016 19:55:12 +0000 (14:55 -0500)]
[reflection] Implement GetReferencedAssemblies in managed

Call out to native to get an array of Mono.MonoAssemblyName* and use
AssemblyName.FillName to create the managed structs.

7 years agoBump bockbuild properly
Alexis Christoforides [Tue, 22 Nov 2016 23:28:52 +0000 (18:28 -0500)]
Bump bockbuild properly

7 years agoBump bockbuild
Alexis Christoforides [Tue, 22 Nov 2016 22:39:31 +0000 (17:39 -0500)]
Bump bockbuild

7 years ago[runtime] Avoid passing a newline to mono_trace (), it adds one automatically.
Zoltan Varga [Tue, 22 Nov 2016 20:42:17 +0000 (15:42 -0500)]
[runtime] Avoid passing a newline to mono_trace (), it adds one automatically.

7 years ago[jit] Make an assert more informative. Fixes #47152.
Zoltan Varga [Tue, 22 Nov 2016 20:12:38 +0000 (15:12 -0500)]
[jit] Make an assert more informative. Fixes #47152.

7 years ago[reflection] Change Assembly.InternalGetAssemblyName to return native MonoAssemblyName
Aleksey Kliger [Mon, 21 Nov 2016 16:52:28 +0000 (11:52 -0500)]
[reflection] Change Assembly.InternalGetAssemblyName to return native MonoAssemblyName

Use managed AssemblyName.FillName to make a
System.Reflection.AssemblyName from a Mono.MonoAssemblyName

Delete native fill_reflection_assembly_name implementation. It's dead code.

7 years ago[metadata] mono_assembly_fill_assembly_name_full
Aleksey Kliger [Mon, 21 Nov 2016 16:44:57 +0000 (11:44 -0500)]
[metadata] mono_assembly_fill_assembly_name_full

When copyBlobs is true, duplicates the
name, culture and public_key fields of MonoAssemblyName.

If copyBlobs is false, point those fields into the MonoImage.

Change mono_assembly_fill_assembly_name to call the full version with
copyBlobs == FALSE.

7 years ago[coop] Use handles for S.R.Assembly.{GetReferencedAssemblies,InternalGetAssemblyName}
Aleksey Kliger [Fri, 18 Nov 2016 19:33:43 +0000 (14:33 -0500)]
[coop] Use handles for S.R.Assembly.{GetReferencedAssemblies,InternalGetAssemblyName}

7 years ago[runtime] Add mono_string_handle_to_utf8
Aleksey Kliger [Fri, 18 Nov 2016 19:12:43 +0000 (14:12 -0500)]
[runtime] Add mono_string_handle_to_utf8

7 years ago[runtime] mark mono_get_exception_{file_not_found2,bad_image_format2} external only.
Aleksey Kliger [Fri, 18 Nov 2016 19:09:07 +0000 (14:09 -0500)]
[runtime] mark mono_get_exception_{file_not_found2,bad_image_format2} external only.

Runtime should use
- mono_error_set_assembly_load  for mono_get_exception_file_not_found2
- mono_error_set_bad_image_name for mono_get_exception_bad_image_format2

7 years agoMerge branch 'alexischr/nursery-canaries-managed-alloc'
Alexis Christoforides [Tue, 22 Nov 2016 19:10:22 +0000 (14:10 -0500)]
Merge branch 'alexischr/nursery-canaries-managed-alloc'

7 years agoMerge pull request #4003 from ntherning/ignore-disconnected-interfaces-in-HttpListene...
Niklas Therning [Tue, 22 Nov 2016 19:03:22 +0000 (20:03 +0100)]
Merge pull request #4003 from ntherning/ignore-disconnected-interfaces-in-HttpListenerRequestTest.HttpRequestIsLocal

Ignore disconnected interfaces in HttpListenerRequestTest.HttpRequestIsLocal

7 years agoMerge pull request #4005 from monojenkins/update-csprojs
Alexander Köplinger [Tue, 22 Nov 2016 18:26:39 +0000 (19:26 +0100)]
Merge pull request #4005 from monojenkins/update-csprojs

[msvc] Update csproj files

7 years ago[System.Runtime.Remoting] Disable test accidentally re-enabled by nunitlite switch
Marek Safar [Tue, 22 Nov 2016 17:06:33 +0000 (18:06 +0100)]
[System.Runtime.Remoting] Disable test accidentally re-enabled by nunitlite switch

7 years ago[runtime] Disable some tests when running with llvm since they take too much time...
Zoltan Varga [Tue, 22 Nov 2016 16:59:53 +0000 (11:59 -0500)]
[runtime] Disable some tests when running with llvm since they take too much time. Reduce the run time of the namedmutex-destroy-race test.

7 years ago[msvc] Update csproj files
monojenkins [Tue, 22 Nov 2016 16:39:46 +0000 (16:39 +0000)]
[msvc] Update csproj files

7 years ago[runtime] Mark the ThreadPool.PerformWaitCallback () method as save_lmf, so ThreadAbo...
Zoltan Varga [Tue, 22 Nov 2016 16:24:51 +0000 (11:24 -0500)]
[runtime] Mark the ThreadPool.PerformWaitCallback () method as save_lmf, so ThreadAbortExceptions thrown inside tp worker threads are always caught, otherwise if the TAE arrives while the threads is in native code while executing the callback, the EH will code will abort the thread so the worker thread cleanup code is not executed, causing problems later. (#4002)

7 years ago[mcs] Null coalescing over typed null constants.
Marek Safar [Tue, 22 Nov 2016 16:01:15 +0000 (17:01 +0100)]
[mcs] Null coalescing over typed null constants.

7 years ago[profiles] Fix MOBILE assemblies and tests compilation + Rename MOBILE to AOT_HYBRID
Ludovic Henry [Fri, 18 Nov 2016 20:58:03 +0000 (15:58 -0500)]
[profiles] Fix MOBILE assemblies and tests compilation + Rename MOBILE to AOT_HYBRID

This only fixes the compilation of the assemblies and the tests. This doesn't fix the failing tests or the crashes.

7 years ago[ci] Add script to run MOBILE profile tests
Ludovic Henry [Fri, 18 Nov 2016 21:53:21 +0000 (16:53 -0500)]
[ci] Add script to run MOBILE profile tests

7 years ago[utils] Add MonoRefCount to factor ref-counting mechanisms
Ludovic Henry [Thu, 17 Nov 2016 22:55:53 +0000 (17:55 -0500)]
[utils] Add MonoRefCount to factor ref-counting mechanisms

7 years ago[corlib] Update list of known lcids and update CLRD data. Fixes #46456
Marek Safar [Mon, 21 Nov 2016 15:49:30 +0000 (16:49 +0100)]
[corlib] Update list of known lcids and update CLRD data. Fixes #46456