mono.git
8 years agoMove all licenses to a single LICENSE file
Miguel de Icaza [Fri, 25 Mar 2016 19:03:54 +0000 (15:03 -0400)]
Move all licenses to a single LICENSE file

8 years agoNo more LGPL requirements
Miguel de Icaza [Fri, 25 Mar 2016 18:28:47 +0000 (14:28 -0400)]
No more LGPL requirements

8 years agoAdded PATENTS.TXT file and link to it
Miguel de Icaza [Wed, 23 Mar 2016 18:46:38 +0000 (14:46 -0400)]
Added PATENTS.TXT file and link to it

8 years agoUpdate LICENSE
Miguel de Icaza [Wed, 23 Mar 2016 18:25:59 +0000 (14:25 -0400)]
Update LICENSE

8 years agoFirst set of licensing changes
Miguel de Icaza [Wed, 23 Mar 2016 15:12:01 +0000 (11:12 -0400)]
First set of licensing changes

8 years ago[System] Add new 'Mono.Security.Interface.MonoTlsProviderFactory' callback to let...
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 12:41:13 +0000 (13:41 +0100)]
[System] Add new 'Mono.Security.Interface.MonoTlsProviderFactory' callback to let the framework libraries select the provider at runtime.

List of original contributors:

Martin Baulig <martin.baulig@xamarin.com>

8 years agoExtend HttpClient to use infrastructure in Xamarin.Mac (via reflection) to pick right...
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 12:29:33 +0000 (13:29 +0100)]
Extend HttpClient to use infrastructure in Xamarin.Mac (via reflection) to pick right type.

List of original contributors:

Chris Hamons <chris.hamons@xamarin.com>

8 years ago[corlib] Add partial EncodingHelper type to let XI define its own default encoding...
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 12:21:18 +0000 (13:21 +0100)]
[corlib] Add partial EncodingHelper type to let XI define its own default encoding [#29928]

List of original contributors:

Sebastien Pouliot <sebastien@xamarin.com>

8 years ago[corlib] New lazily initialized X509Certificate.
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 11:54:29 +0000 (12:54 +0100)]
[corlib] New lazily initialized X509Certificate.

List of original contributors:

Martin Baulig <martin.baulig@xamarin.com>

8 years ago[corlib] Add a special method for XI so the linker does not always have to generate it.
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 11:47:21 +0000 (12:47 +0100)]
[corlib] Add a special method for XI so the linker does not always have to generate it.

List of original contributors:

Sebastien Pouliot <sebastien@xamarin.com>

8 years ago[corlib] Add back System/Guid.MonoTouch.cs implementation.
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 11:45:16 +0000 (12:45 +0100)]
[corlib] Add back System/Guid.MonoTouch.cs implementation.

This is a partial reversal of 82a1747f (for this file only).

8 years ago[corlib] Add iOS specific code for System.Environment.
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 11:41:50 +0000 (12:41 +0100)]
[corlib] Add iOS specific code for System.Environment.

List of original contributors:

Sebastien Pouliot <sebastien@xamarin.com>
Rolf Bjarne Kvinge <rolf@xamarin.com>

8 years ago[bcl] Add CommonCrypto to corlib, Mono.Security and System.Core.
Rolf Bjarne Kvinge [Tue, 15 Mar 2016 11:01:48 +0000 (12:01 +0100)]
[bcl] Add CommonCrypto to corlib, Mono.Security and System.Core.

List of original contributors:

Sebastien Pouliot <sebastien@xamarin.com>
Rolf Bjarne Kvinge <rolf@xamarin.com>
Marek Safar <marek.safar@gmail.com>
Miguel de Icaza <miguel@gnome.org>

8 years ago[jit] Add native-types and enable them by default. Missing test suite.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[jit] Add native-types and enable them by default. Missing test suite.

List of original contributors:

Zoltan Varga <vargaz@gmail.com>
Rodrigo Kumpera <kumpera@gmail.com>

8 years ago[jit] Add arm64 backend and gsharedvt code.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[jit] Add arm64 backend and gsharedvt code.

List of original contributors:

Zoltan Varga <vargaz@gmail.com>
Rodrigo Kumpera <kumpera@gmail.com>
Andi McClure <andi.mcclure@xamarin.com>
Vlad Brezae <brezaevlad@gmail.com>
Joao Matos <joao@tritao.eu>
Alex Rønne Petersen <alexrp@xamarin.com>

8 years ago[mini] Add x86 gsharedvt.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[mini] Add x86 gsharedvt.

List of original contributors:

Zoltan Varga <vargaz@gmail.com>
Joao Matos <joao@tritao.eu>

8 years ago[jit] Implement gsharedvt on arm.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[jit] Implement gsharedvt on arm.

List of original contributors:

Zoltan Varga <vargaz@gmail.com>
Joao Matos <joao@tritao.eu>

8 years ago[runtime] Move gsharedvt to public plus amd64 implementation.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Move gsharedvt to public plus amd64 implementation.

List of original contributors:

Zoltan Varga <vargaz@gmail.com>
Rodrigo Kumpera <kumpera@gmail.com>
Andi McClure <andi.mcclure@xamarin.com>

8 years ago[mini] Try to use libcorkscrew or libunwind on Android when crashing.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[mini] Try to use libcorkscrew or libunwind on Android when crashing.

List of original contributors:

Alex Rønne Petersen <alexrp@xamarin.com>

8 years ago[runtime] Add runtime support for explicit offset files.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Add runtime support for explicit offset files.

Explicit offset files are provided by configuring mono with --with-cross-offsets

List of original contributors:

Joao Matos <joao@tritao.eu>
Zoltan Varga <vargaz@gmail.com>
Rolf Bjarne Kvinge <rolf@xamarin.com>
Rodrigo Kumpera <kumpera@gmail.com>

8 years ago[runtime] Add cross helpers that both check offsets and produce headers.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[runtime] Add cross helpers that both check offsets and produce headers.

List of original contributors:

Rodrigo Kumpera <kumpera@gmail.com>
Zoltan Varga <vargaz@gmail.com>

8 years ago[utils] Workarounds for 64bits atomics on mobile.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[utils] Workarounds for 64bits atomics on mobile.

List of original contributors:

Rodrigo Kumpera <kumpera@gmail.com>
Alex Rønne Petersen <alexrp@xamarin.com>
Zoltan Varga <vargaz@gmail.com>
Rolf Bjarne Kvinge <rolf@xamarin.com>

8 years ago[utils] Fix name clash on dlmalloc on x86 android devices. Fixes #13957
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[utils] Fix name clash on dlmalloc on x86 android devices. Fixes #13957

Android uses dlmalloc within bionic. For some reason, our x86 build
links against the libc implementation instead of our own.

This leads us allocating memory that is not executable which made
dynamic methods fail when executing.

List of original contributors:

Rodrigo Kumpera <kumpera@gmail.com>

8 years ago[android] Add fallback for thread bounds calculation for Android.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[android] Add fallback for thread bounds calculation for Android.

On some junk Samsung x86 device, pthread_attr_getstack is completely broken.

If the returned value is not sane, we parse /proc/self/maps to find the right
memory regions for the current stack.

Fixes BXC #21550 and DESK #83333.

List of original contributors:

Rodrigo Kumpera <kumpera@gmail.com>

8 years agoMerge pull request #2797 from kumpera/android_krait_bug
Rodrigo Kumpera [Mon, 28 Mar 2016 19:08:43 +0000 (12:08 -0700)]
Merge pull request #2797 from kumpera/android_krait_bug

[android] Fix Krait CPU bug on Android.

8 years agoMerge pull request #2785 from alexanderkyte/cached_info_leak
monojenkins [Mon, 28 Mar 2016 18:56:03 +0000 (19:56 +0100)]
Merge pull request #2785 from alexanderkyte/cached_info_leak

[runtime] Free cached_info tables on cleanup

8 years ago[SRE] Fix compile warning in encode_cattr_value
Aleksey Kliger [Mon, 28 Mar 2016 16:30:16 +0000 (12:30 -0400)]
[SRE] Fix compile warning in encode_cattr_value

Landed mono_object_isinst_checked PR in a way that broke encode_cattr_value.

8 years agoMerge pull request #2621 from BrzVlad/feature-conc-preclean
Vlad Brezae [Mon, 28 Mar 2016 16:26:08 +0000 (23:26 +0700)]
Merge pull request #2621 from BrzVlad/feature-conc-preclean

[sgen] Concurrent precleaning of card table

8 years agoMerge pull request #2795 from lambdageek/dev/marshal-no-raise
Aleksey Kliger (λgeek) [Mon, 28 Mar 2016 15:27:36 +0000 (11:27 -0400)]
Merge pull request #2795 from lambdageek/dev/marshal-no-raise

[marshal] Don't raise an exception, just assert

8 years agoMerge pull request #2770 from lambdageek/dev/monoerror-object_isinst_mbyref
monojenkins [Mon, 28 Mar 2016 14:45:22 +0000 (15:45 +0100)]
Merge pull request #2770 from lambdageek/dev/monoerror-object_isinst_mbyref

[runtime] MonoError-ize mono_object_isinst{,_mbyref}

Also mark them external only.  Runtime should use mono_object_isinst_mbyref_checked and mono_object_isinst_checked

8 years ago[aot] Emit a .subsections_via_symbols directive on arm.
Zoltan Varga [Fri, 25 Mar 2016 22:35:10 +0000 (18:35 -0400)]
[aot] Emit a .subsections_via_symbols directive on arm.

8 years ago[aot] Fix a memory leak.
Zoltan Varga [Sun, 27 Mar 2016 22:49:57 +0000 (18:49 -0400)]
[aot] Fix a memory leak.

8 years ago[runtime] Avoid setting klass->instance_size if its already set, this can happen...
Zoltan Varga [Sun, 27 Mar 2016 22:43:29 +0000 (18:43 -0400)]
[runtime] Avoid setting klass->instance_size if its already set, this can happen when loading cached class info from an AOT image. This could lead to random crashes/asserts since klass->instance_size is directly modified while it is computed.

8 years ago[runtime] Fix a memory leak in ves_icall_Type_GetNestedTypes ().
Zoltan Varga [Sun, 27 Mar 2016 22:41:11 +0000 (18:41 -0400)]
[runtime] Fix a memory leak in ves_icall_Type_GetNestedTypes ().

8 years agoMerge pull request #2779 from akoeplinger/fix-socket-closed
Alexander Köplinger [Sun, 27 Mar 2016 15:33:48 +0000 (17:33 +0200)]
Merge pull request #2779 from akoeplinger/fix-socket-closed

[System] Use Monitor.Wait/Pulse in SafeSocketHandle instead of Thread.Sleep

8 years ago[System] Use Monitor.Wait/Pulse in SafeSocketHandle instead of Thread.Sleep
Alexander Köplinger [Mon, 21 Mar 2016 15:27:19 +0000 (16:27 +0100)]
[System] Use Monitor.Wait/Pulse in SafeSocketHandle instead of Thread.Sleep

We are quite frequently seeing an error on the ARM workers on Jenkins:

```
Test Case Failures:
1) MonoTests.System.Net.Sockets.SocketTest.SendAsyncFile : System.Exception : Could not abort registered blocking threads before closing socket.
at System.Net.Sockets.SafeSocketHandle.ReleaseHandle () [0x000be] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/mcs/class/System/System.Net.Sockets/SafeSocketHandle.cs:77
at System.Runtime.InteropServices.SafeHandle.DangerousReleaseInternal (Boolean dispose) <0x42cb0050 + 0x0020b> in <filename unknown>:0
at System.Runtime.InteropServices.SafeHandle.InternalDispose () <0x446ba758 + 0x00023> in <filename unknown>:0
at System.Runtime.InteropServices.SafeHandle.Dispose (Boolean disposing) [0x00000] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/external/referencesource/mscorlib/system/runtime/remoting/callcontext.cs:804
at System.Runtime.InteropServices.SafeHandle.Dispose () [0x00000] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/external/referencesource/mscorlib/system/runtime/remoting/callcontext.cs:795
at System.Net.Sockets.Socket.Dispose (Boolean disposing) [0x00047] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/mcs/class/System/System.Net.Sockets/Socket.cs:3321
at System.Net.Sockets.Socket.Dispose () [0x00000] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/mcs/class/System/System.Net.Sockets/Socket.cs:3327
at System.Net.Sockets.Socket.Close () [0x00007] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/mcs/class/System/System.Net.Sockets/Socket.cs:3256
at MonoTests.System.Net.Sockets.SocketTest.SendAsyncFile () [0x000e7] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/mcs/class/System/Test/System.Net.Sockets/SocketTest.cs:4331
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x0003d] in /media/ssd/jenkins/workspace/test-mono-mainline/label/debian-armhf/mcs/class/corlib/System.Reflection/StrongNameKeyPair.cs:103
```

Let's see if implementing the suggestion from https://github.com/mono/mono/pull/1612/files#r26393224
fixes this. I couldn't reproduce the test failure even on the same ARM machine so this is a bit of
an opportunistic change, but it feels like the more "correct" solution anyway.

I decided to inline AbortRegisteredThreads as at the only place we're calling it we already know
blocking_threads can't be null and acquired the lock.

8 years agoMerge pull request #2789 from lambdageek/dev/monoerror-threading
monojenkins [Sat, 26 Mar 2016 01:41:10 +0000 (01:41 +0000)]
Merge pull request #2789 from lambdageek/dev/monoerror-threading

[threadpool-ms] MonoError-ize

1. Convert icalls that throw `NotImplementedException` to do it via mono_error_set_pending_exception
2. Add MonoError outargs to `mono_threadpool_ms_enqueue_work_item` and `mono_threadpool_ms_begin_invoke`

8 years ago[runtime] MonoError-ize mono_object_isinst
Aleksey Kliger [Thu, 17 Mar 2016 21:41:20 +0000 (14:41 -0700)]
[runtime] MonoError-ize mono_object_isinst

Mark it external only. Runtime should use mono_object_isinst_checked.

8 years ago[threadpool-ms] MonoError-ize mono_threadpool_ms_begin_invoke
Aleksey Kliger [Wed, 23 Mar 2016 18:06:01 +0000 (14:06 -0400)]
[threadpool-ms] MonoError-ize mono_threadpool_ms_begin_invoke

8 years agoMerge pull request #2748 from lambdageek/dev/monoerror-mono_value_box
monojenkins [Fri, 25 Mar 2016 20:55:38 +0000 (20:55 +0000)]
Merge pull request #2748 from lambdageek/dev/monoerror-mono_value_box

[runtime] Make mono_value_box use MonoError

Mark it external only.  Runtime should use mono_value_box_checked.

8 years ago[runtime] MonoError-ize mono_object_isinst_mbyref
Aleksey Kliger [Wed, 16 Mar 2016 23:42:30 +0000 (16:42 -0700)]
[runtime] MonoError-ize mono_object_isinst_mbyref

Also mark it external only.  Runtime should use mono_object_isinst_mbyref_checked

8 years ago[MonoError] change mono_error_set_pending_exception to return a bool
Aleksey Kliger [Fri, 25 Mar 2016 19:23:19 +0000 (15:23 -0400)]
[MonoError] change mono_error_set_pending_exception to return a bool

Return TRUE if pending exception was set, FALSE otherwise.

The idea is that you can write:
  if (mono_error_set_pending_exception (error)) {
    /* cleanup */
    return;
  }

8 years ago[android] Fix Krait CPU bug on Android.
Rodrigo Kumpera [Mon, 16 Nov 2015 05:22:56 +0000 (00:22 -0500)]
[android] Fix Krait CPU bug on Android.

Krait cpus don't ignore thumb ITT state in ARM mode (it's unspecified CPU behavior).
The linux kernel then didn't bother resetting that state when landing an ARM signal handler.

The end result was that Krait cpus would skip the first few instructions of the signal handler
and things would explode in the most amazing possible ways.

Patch by Mark Probst <mark.probst@gmail.com>.

8 years ago[marshal] Don't raise an exception, just assert
Aleksey Kliger [Fri, 25 Mar 2016 17:29:03 +0000 (13:29 -0400)]
[marshal] Don't raise an exception, just assert

Don't raise deep in the marshalling code, just assert.

(Raising means we'd have to convert the code to use MonoError and then
thread it out through all of the marshalling code resulting in a lot of
code churn)

8 years ago[runtime] MonoError-ize mono_nullable_box
Aleksey Kliger [Thu, 10 Mar 2016 19:23:43 +0000 (14:23 -0500)]
[runtime] MonoError-ize mono_nullable_box

8 years ago[runtime] Make mono_value_box use MonoError
Aleksey Kliger [Thu, 10 Mar 2016 15:35:04 +0000 (10:35 -0500)]
[runtime] Make mono_value_box use MonoError

Mark it external only.  Runtime should use mono_value_box_checked.

8 years ago[threadpool-ms] MonoError-ize mono_threadpool_ms_enqueue_work_item
Aleksey Kliger [Wed, 23 Mar 2016 16:56:01 +0000 (12:56 -0400)]
[threadpool-ms] MonoError-ize mono_threadpool_ms_enqueue_work_item

Take a MonoError outarg; return boolean on success/failure.

8 years ago[threadpool-ms] MonoError-ize some not implemented icalls.
Aleksey Kliger [Wed, 23 Mar 2016 16:49:51 +0000 (12:49 -0400)]
[threadpool-ms] MonoError-ize some not implemented icalls.

1. ves_icall_System_Threading_ThreadPool_ReportThreadStatus
2. ves_icall_System_Threading_ThreadPool_PostQueuedCompletionStatus

8 years agoMerge pull request #2791 from lambdageek/dev/monoerror-cleanup-deadcode
Aleksey Kliger (λgeek) [Fri, 25 Mar 2016 15:33:37 +0000 (11:33 -0400)]
Merge pull request #2791 from lambdageek/dev/monoerror-cleanup-deadcode

[runtime] Remove dead code and don't throw in embedding API functions

8 years ago[sgen] Add option for enabling/disabling precleaning
Vlad Brezae [Tue, 8 Mar 2016 02:41:20 +0000 (04:41 +0200)]
[sgen] Add option for enabling/disabling precleaning

8 years ago[sgen] Preclean mod union entries before the finishing pause
Vlad Brezae [Tue, 19 Jan 2016 09:21:39 +0000 (11:21 +0200)]
[sgen] Preclean mod union entries before the finishing pause

When the concurrent mark ends, we have another concurrent phase where we scan the cardtable trying to clean as many cards as possible. The way we achieve this is by first copying all the mod union cards (for each block/los_obj) to a separate temporary card_table. When scanning we will only scan these cards. Therefore we will first preclean these cards in the actual mod_union card_tables, followed by a full memory barrier (which assures us that, when scanning, we will observe the changes that led to the corresponding card marks) and then by a normal mod_union scan, which can remark some of these cards, without any races with the preclean phase.

8 years ago[sgen] Move assert to the right place
Vlad Brezae [Tue, 8 Mar 2016 02:42:41 +0000 (04:42 +0200)]
[sgen] Move assert to the right place

8 years ago[runtime] Enclose define parameters in parentheses
Vlad Brezae [Mon, 7 Mar 2016 16:36:28 +0000 (18:36 +0200)]
[runtime] Enclose define parameters in parentheses

8 years ago[sgen] Add separate scan function for handling a single pointer entry
Vlad Brezae [Sun, 7 Feb 2016 23:08:24 +0000 (01:08 +0200)]
[sgen] Add separate scan function for handling a single pointer entry

This way we avoid duplicating cardtable marking code, making sure we have consistent code.

For example, when scanning los objects in the mod union scan step, we didn't check whether the object is cemented or not, leading to additional unnecessary global remsets for the next nursery collection.

8 years ago[sgen] Move scan vtype with the other object ops
Vlad Brezae [Mon, 25 Jan 2016 01:17:55 +0000 (03:17 +0200)]
[sgen] Move scan vtype with the other object ops

8 years ago[sgen] Simplify defines for object ops
Vlad Brezae [Mon, 25 Jan 2016 01:02:41 +0000 (03:02 +0200)]
[sgen] Simplify defines for object ops

8 years ago[sgen] Allow read only access on block list without taking GC_LOCK
Vlad Brezae [Fri, 22 Jan 2016 18:16:01 +0000 (20:16 +0200)]
[sgen] Allow read only access on block list without taking GC_LOCK

Still, block list should not be accessed while sweep is running.

8 years ago[sgen] Allow read only access of los object list without taking GC_LOCK
Vlad Brezae [Fri, 22 Jan 2016 16:13:49 +0000 (18:13 +0200)]
[sgen] Allow read only access of los object list without taking GC_LOCK

Still, object lists should not be accessed while sweep is running.

8 years ago[sgen] Extract the handle array code for reuse
Vlad Brezae [Fri, 22 Jan 2016 00:08:06 +0000 (02:08 +0200)]
[sgen] Extract the handle array code for reuse

We add a new data structure which contains a bucket of entries, exponentially increasing in sizes. The structure is customizable through a few callbacks.

Setting is_slot_set_func enables us to also lookup empty slots, instead of only adding entries at the end of the list.

Setting set_slot_func enables the use of a customized function for setting the slot. If this function is not set, the slots and array fields will be set directly, therefore the structure won't be thread safe.

8 years ago[sgen] Don't prefetch unused memory when scanning the card table
Vlad Brezae [Tue, 19 Jan 2016 17:43:04 +0000 (19:43 +0200)]
[sgen] Don't prefetch unused memory when scanning the card table

When doing the mod union scan, we use the block's cardtable (instead of the global one), which we also cannot prefetch, since that would mean dereferencing the block info.

8 years agoMerge pull request #2793 from radical/fix-mcs-args
Alexander Köplinger [Fri, 25 Mar 2016 00:05:23 +0000 (01:05 +0100)]
Merge pull request #2793 from radical/fix-mcs-args

[mcs] Accept and ignore command line args supported by csc that we don't

8 years ago[runtime] mark mono_domain_unload external only
Aleksey Kliger [Wed, 23 Mar 2016 21:13:16 +0000 (17:13 -0400)]
[runtime] mark mono_domain_unload external only

Runtime should use mono_domain_try_unload

8 years ago[runtime] Remove CHECK_MONOTYPE macro
Aleksey Kliger [Wed, 23 Mar 2016 21:02:04 +0000 (17:02 -0400)]
[runtime] Remove CHECK_MONOTYPE macro

It's dead code.

8 years ago[runtime] Delete mono_assert and mono_assert_not_reached
Aleksey Kliger [Wed, 23 Mar 2016 20:53:32 +0000 (16:53 -0400)]
[runtime] Delete mono_assert and mono_assert_not_reached

Runtime should use g_assert and g_assert_not_reached or set a MonoError,
as needed.

Also remove REAL_PRINT_REG dead macros from mini-x86.c and mini-amd64.c

8 years ago[runtime] Change mono_object_castclass_mbyref not to throw
Aleksey Kliger [Wed, 23 Mar 2016 20:21:52 +0000 (16:21 -0400)]
[runtime] Change mono_object_castclass_mbyref not to throw

Mark the function external only. (There are no uses inside the runtime).

Change behavior to return NULL if unable to cast, instead of throwing.

8 years agoMerge pull request #2790 from lambdageek/dev/monoerror-corlib-execeptions
Aleksey Kliger (λgeek) [Thu, 24 Mar 2016 23:19:49 +0000 (19:19 -0400)]
Merge pull request #2790 from lambdageek/dev/monoerror-corlib-execeptions

[MonoError] Helpers for some common corlib exceptions

8 years ago[arm] Fix support for soft breakpoints.
Zoltan Varga [Thu, 24 Mar 2016 20:04:59 +0000 (20:04 +0000)]
[arm] Fix support for soft breakpoints.

8 years ago[mcs] Accept and ignore command line args supported by csc that we don't
Ankit Jain [Thu, 24 Mar 2016 19:21:58 +0000 (15:21 -0400)]
[mcs] Accept and ignore command line args supported by csc that we don't

support:

/analyzer
/appconfig
/baseaddress
/deterministic
/errorendlocation
/errorlog
/features
/link
/moduleassemblyname
/pathmap
/pdb
/preferreduilang
/publicsign
/reportanalyzer
/ruleset
/sqmsessionguid

8 years ago[runtime] Make the appdomain-unload.exe test more verbose.
Zoltan Varga [Thu, 24 Mar 2016 16:49:47 +0000 (12:49 -0400)]
[runtime] Make the appdomain-unload.exe test more verbose.

8 years ago[aot] Reenable the emission of line number info using GAS .file/.loc directives,...
Zoltan Varga [Thu, 24 Mar 2016 16:06:33 +0000 (12:06 -0400)]
[aot] Reenable the emission of line number info using GAS .file/.loc directives, recent versions of clang seems to support it.

8 years ago[jit] Fix the dwarf info structure when there is no line number table.
Zoltan Varga [Thu, 24 Mar 2016 15:45:56 +0000 (11:45 -0400)]
[jit] Fix the dwarf info structure when there is no line number table.

8 years ago[jit] Remove the 'appending' support from the dwarf writer, its no longer used.
Zoltan Varga [Thu, 24 Mar 2016 15:28:33 +0000 (11:28 -0400)]
[jit] Remove the 'appending' support from the dwarf writer, its no longer used.

8 years ago[jit] Get rid of the create_delegate_trampoline_data () helper function which only...
Zoltan Varga [Thu, 24 Mar 2016 01:01:05 +0000 (21:01 -0400)]
[jit] Get rid of the create_delegate_trampoline_data () helper function which only has one caller.

8 years agoMerge pull request #2768 from lambdageek/dev/monoerror-cominterop
Aleksey Kliger (λgeek) [Thu, 24 Mar 2016 15:19:42 +0000 (11:19 -0400)]
Merge pull request #2768 from lambdageek/dev/monoerror-cominterop

[com] MonoError-ize cominterop.c

8 years agoMerge pull request #2663 from esdrubal/islocal
Alexis Christoforides [Thu, 24 Mar 2016 14:45:48 +0000 (10:45 -0400)]
Merge pull request #2663 from esdrubal/islocal

[System] Fixes HttpListenerRequest.IsLocal.

8 years agoCreate xammac_net_4_5 variant of System.Runtime.Remoting
Chris Hamons [Wed, 23 Mar 2016 21:45:29 +0000 (16:45 -0500)]
Create xammac_net_4_5 variant of System.Runtime.Remoting

8 years agoTrigger a rebuild of Mono.Security
Alexander Köplinger [Thu, 24 Mar 2016 02:11:47 +0000 (03:11 +0100)]
Trigger a rebuild of Mono.Security

8 years ago[Mono.Security]: MonoTlsProvider.InvokeSystemCertificateValidator() now takes 'ref...
Martin Baulig [Wed, 23 Mar 2016 23:42:26 +0000 (19:42 -0400)]
[Mono.Security]: MonoTlsProvider.InvokeSystemCertificateValidator() now takes 'ref X509Chain'.

8 years ago[System]: Add private 'X500DistinguishedName' API to store the canonical encoding...
Martin Baulig [Tue, 22 Mar 2016 03:43:59 +0000 (23:43 -0400)]
[System]: Add private 'X500DistinguishedName' API to store the canonical encoding and use it for fast comparison.

8 years ago[System]: SystemCertificateValidator.CheckUsage(): lazily convert to X509Certificate2...
Martin Baulig [Wed, 16 Mar 2016 04:20:39 +0000 (00:20 -0400)]
[System]: SystemCertificateValidator.CheckUsage(): lazily convert to X509Certificate2 if needed.

8 years ago[System]: Make 'X509Certificate2' and 'X509Chain' lazily-initialized.
Martin Baulig [Tue, 15 Mar 2016 23:36:48 +0000 (19:36 -0400)]
[System]: Make 'X509Certificate2' and 'X509Chain' lazily-initialized.

Add new internal 'X509Certificate2Impl' and 'X509ChainImpl' classes similar to
'X509CertificateImpl' in corlib and only initialize them when actually needed.

8 years ago[corlib]: Cleanup the internal 'X509CertificateImpl' API.
Martin Baulig [Tue, 15 Mar 2016 23:33:11 +0000 (19:33 -0400)]
[corlib]: Cleanup the internal 'X509CertificateImpl' API.

8 years ago[ppdb] Disable the metadata verifier for ppdb tables for now. Fixes #39631.
Zoltan Varga [Wed, 23 Mar 2016 21:11:28 +0000 (17:11 -0400)]
[ppdb] Disable the metadata verifier for ppdb tables for now. Fixes #39631.

8 years ago[MonoError] Use mono_error_set_execution_engine helper
Aleksey Kliger [Wed, 23 Mar 2016 19:10:53 +0000 (15:10 -0400)]
[MonoError] Use mono_error_set_execution_engine helper

8 years ago[MonoError] Use mono_error_set_not_supported helper
Aleksey Kliger [Wed, 23 Mar 2016 19:11:16 +0000 (15:11 -0400)]
[MonoError] Use mono_error_set_not_supported helper

8 years ago[MonoError] Use mono_error_set_not_implemented helper
Aleksey Kliger [Wed, 23 Mar 2016 19:02:44 +0000 (15:02 -0400)]
[MonoError] Use mono_error_set_not_implemented helper

8 years ago[MonoError] add helpers for some corlib exceptions
Aleksey Kliger [Wed, 23 Mar 2016 18:56:34 +0000 (14:56 -0400)]
[MonoError] add helpers for some corlib exceptions

System.ExecutionEngineException
System.NotSupportedException
System.NotImplementedException

8 years ago[man] Remove documentation for the nonexistent MONO_ENABLE_SHM environment variable.
Zoltan Varga [Wed, 23 Mar 2016 18:10:16 +0000 (14:10 -0400)]
[man] Remove documentation for the nonexistent MONO_ENABLE_SHM environment variable.

8 years agoMerge pull request #2784 from mhutch/msbuild-fixes
Alexander Köplinger [Wed, 23 Mar 2016 15:43:24 +0000 (16:43 +0100)]
Merge pull request #2784 from mhutch/msbuild-fixes

Fix regressions in Microsoft.Build.dll

8 years ago[cil-stringreplacer] Use Cecil as reference dependency
Marek Safar [Wed, 23 Mar 2016 14:44:25 +0000 (15:44 +0100)]
[cil-stringreplacer] Use Cecil as reference dependency

8 years ago[cil-stringreplacer] Update debug symbol
Marek Safar [Wed, 23 Mar 2016 12:08:40 +0000 (13:08 +0100)]
[cil-stringreplacer] Update debug symbol

8 years agoMerge pull request #2783 from alexanderkyte/strdup_memory_leaks
monojenkins [Tue, 22 Mar 2016 22:35:21 +0000 (22:35 +0000)]
Merge pull request #2783 from alexanderkyte/strdup_memory_leaks

[runtime] Fix memory leaks related to short-lived strings

8 years agoMerge pull request #2775 from lambdageek/dev/monoerror-reflection-icalls
monojenkins [Tue, 22 Mar 2016 22:35:16 +0000 (22:35 +0000)]
Merge pull request #2775 from lambdageek/dev/monoerror-reflection-icalls

[SRE] MonoError-ize some icalls

* Cleanup some memory that would leak on failure; improve a few error messages
* Add MonoError to `mono_reflection_call_is_assignable_to` and `fieldbuilder_to_mono_class_field`.
* Update several SRE icalls to follow the pattern:
  ```c
    void
    the_icall (args... )
    {
       MonoError error;
       (void) the_real_work_function (args..., &error);
       mono_error_set_pending_exception (&error);
    }

    static gboolean
    the_real_work_function (args..., MonoError *error)
    {
       ... /* return TRUE on success, FALSE and set error on failure */ ...
    }
  ```
  Do this to:
        1. `mono_reflection_register_with_runtime`
        2. `mono_reflection_setup_internal_class`
        3. `mono_reflection_create_internal_class`
        4. `mono_reflection_generic_class_initialize`
        5. `mono_reflection_event_builder_get_event_info`
        6. `mono_reflection_initialize_generic_parameter`
        7. `mono_reflection_create_dynamic_method`

8 years agoMerge pull request #2782 from madewokherd/process-sessionid
Alexander Köplinger [Tue, 22 Mar 2016 17:58:06 +0000 (18:58 +0100)]
Merge pull request #2782 from madewokherd/process-sessionid

[System.Diagnostics] Return dummy value from Process.SessionId.

8 years ago[System.Diagnostics] Return dummy value from Process.SessionId.
Vincent Povirk [Mon, 21 Mar 2016 21:50:56 +0000 (16:50 -0500)]
[System.Diagnostics] Return dummy value from Process.SessionId.

8 years ago[sgen] Switch the default GC bridge to the new mode.
Joao Matos [Tue, 22 Mar 2016 17:45:57 +0000 (17:45 +0000)]
[sgen] Switch the default GC bridge to the new mode.

8 years ago[Microsoft.Build] Shut down single-use build manager
Mikayla Hutchinson [Tue, 22 Mar 2016 16:06:19 +0000 (12:06 -0400)]
[Microsoft.Build] Shut down single-use build manager

8 years agoMerge pull request #2764 from esdrubal/fileinfo_tostring
Marcos Henrich [Tue, 22 Mar 2016 14:41:18 +0000 (14:41 +0000)]
Merge pull request #2764 from esdrubal/fileinfo_tostring

[corlib] Fix FileInfo.ToString after MoveTo

8 years agoMerge pull request #2534 from mhutch/install-api-html
monojenkins [Tue, 22 Mar 2016 01:35:28 +0000 (01:35 +0000)]
Merge pull request #2534 from mhutch/install-api-html

Install mono-api-html

We install its counterpart mono-api-info already

8 years ago[runtime] Free cached_info tables on cleanup
Alexander Kyte [Mon, 21 Mar 2016 23:46:56 +0000 (19:46 -0400)]
[runtime] Free cached_info tables on cleanup