mono.git
6 years ago[arm] Don't use fast tls on v5 arm
Vlad Brezae [Wed, 24 May 2017 22:14:00 +0000 (01:14 +0300)]
[arm] Don't use fast tls on v5 arm

The thread coprocessor registers appear only in v7 specification.

6 years agoMerge pull request #4923 from lambdageek/bug-56694
Aleksey Kliger (λgeek) [Wed, 24 May 2017 21:35:22 +0000 (17:35 -0400)]
Merge pull request #4923 from lambdageek/bug-56694

[appdomain] Don't leak MonoReflectionAssemblyHandles firing events

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=56694

6 years agoMerge pull request #4872 from kumpera/add_test_for_eloop
Rodrigo Kumpera [Wed, 24 May 2017 20:25:41 +0000 (16:25 -0400)]
Merge pull request #4872 from kumpera/add_test_for_eloop

[runtime] Fix runtime behavior when dealing with missing symlinks

6 years agoMerge pull request #4845 from lambdageek/dev-coop-delegates
Aleksey Kliger (λgeek) [Wed, 24 May 2017 19:56:38 +0000 (15:56 -0400)]
Merge pull request #4845 from lambdageek/dev-coop-delegates

[marshal] Use coop handles for delegates icalls

6 years agoBug #56499: unreadable /etc/localtime should not cause an exception (#4881)
Marcin Cieślak [Wed, 24 May 2017 18:53:23 +0000 (20:53 +0200)]
Bug #56499: unreadable /etc/localtime should not cause an exception (#4881)

* Bug #56499: unreadable /etc/localtime should not cause an exception

* Fix build

6 years ago[sgen] Scan the handle stack for dangling ptrs during domain unload
Aleksey Kliger [Wed, 24 May 2017 16:25:26 +0000 (12:25 -0400)]
[sgen] Scan the handle stack for dangling ptrs during domain unload

There should be no handles pointing to objects in the domain that is unloading
in any thread's handle stack once mono_gc_clear_domain () is called.

6 years ago[coop handles] Fix wrong #ifdef
Aleksey Kliger [Wed, 24 May 2017 15:41:44 +0000 (11:41 -0400)]
[coop handles] Fix wrong #ifdef

6 years ago[appdomain] Don't leak MonoReflectionAssemblyHandles in callbacks to managed
Aleksey Kliger [Tue, 23 May 2017 21:24:18 +0000 (17:24 -0400)]
[appdomain] Don't leak MonoReflectionAssemblyHandles in callbacks to managed

6 years ago[tests] Regression test for #56694
Aleksey Kliger [Wed, 24 May 2017 15:18:36 +0000 (11:18 -0400)]
[tests] Regression test for #56694

When an AssemblyLoad event fires in a domain, a System.Reflection.Assembly
object is created in that domain for the assembly being loaded.  The bug left
this object alive after the domain was unloaded, which lead to a GC crash.

6 years ago[runtime] Implement interior handles as a special case to simplify and speed up the...
Zoltan Varga [Wed, 24 May 2017 17:58:18 +0000 (13:58 -0400)]
[runtime] Implement interior handles as a special case to simplify and speed up the more common handle code. (#4921)

6 years ago[corlib] Fixes warning
Marek Safar [Wed, 24 May 2017 17:28:29 +0000 (19:28 +0200)]
[corlib] Fixes warning

6 years ago[mcs] Parsing of nested unbound types. Fixes #55400
Marek Safar [Wed, 24 May 2017 17:26:46 +0000 (19:26 +0200)]
[mcs] Parsing of nested unbound types. Fixes #55400

6 years ago[corlib] Remove unused field
Marek Safar [Wed, 24 May 2017 13:39:37 +0000 (15:39 +0200)]
[corlib] Remove unused field

6 years agoImprove error messages to help users diagnose problems when using custom mode (#4922)
Miguel de Icaza [Wed, 24 May 2017 17:19:58 +0000 (13:19 -0400)]
Improve error messages to help users diagnose problems when using custom mode (#4922)

* Improve error messages to help users diagnose problems when using the custom mode

* Update mkbundle.cs

6 years ago[runtime] Convert a g_warning to a type load failure. (#4920)
Zoltan Varga [Wed, 24 May 2017 13:35:18 +0000 (09:35 -0400)]
[runtime] Convert a g_warning to a type load failure. (#4920)

6 years agoFix make dist.
Zoltan Varga [Wed, 24 May 2017 02:51:09 +0000 (22:51 -0400)]
Fix make dist.

6 years agoUpdate test for correct behavior.
Rodrigo Kumpera [Tue, 23 May 2017 21:59:02 +0000 (14:59 -0700)]
Update test for correct behavior.

6 years ago[runtime] Fix multiple issues around symlink handling.
Rodrigo Kumpera [Tue, 23 May 2017 21:46:53 +0000 (14:46 -0700)]
[runtime] Fix multiple issues around symlink handling.

After fixing my windows setup, I managed to properly test MS's behavior, which is a lot saner and it's the following:

Opening fails with ERROR_CANT_RESOLVE_FILENAME (1921).
Testing and Deleting works.

Fixing File.Delete required removing the lstat we do before deleting, which no longer serves any purpose.

Fixing File.Exists requires handling ELOOP when stat fails and we retry with lstat.

6 years ago[System]: Don't call OnCompleted(this) twice in SocketAsyncEventArgs.FinishWrapperCon...
Martin Baulig [Tue, 23 May 2017 19:42:05 +0000 (15:42 -0400)]
[System]: Don't call OnCompleted(this) twice in SocketAsyncEventArgs.FinishWrapperConnectSuccess(). (#4894)

6 years ago[bcl] Fix compiling xunit-based tests
Alexander Köplinger [Tue, 23 May 2017 17:54:35 +0000 (19:54 +0200)]
[bcl] Fix compiling xunit-based tests

We moved System.Runtime.InteropServices.RuntimeInformation to a facade.

6 years ago[runtime] Add specialized versions of mono_icall_handle_new () for internal/non-inter...
Zoltan Varga [Tue, 23 May 2017 15:46:59 +0000 (11:46 -0400)]
[runtime] Add specialized versions of mono_icall_handle_new () for internal/non-internal pointers. (#4918)

6 years agoFix full aot (#4919)
Zoltan Varga [Tue, 23 May 2017 15:36:43 +0000 (11:36 -0400)]
Fix full aot (#4919)

* [runtime] Fix the generation of invalid IL in the return marshalling of stringbuilders.

* [runtime] Disable some failing fullaot tests.

6 years ago[runtime] Use coop handles for System.Delegate.AllocDelegateLike_internal
Aleksey Kliger [Fri, 12 May 2017 16:30:05 +0000 (12:30 -0400)]
[runtime] Use coop handles for System.Delegate.AllocDelegateLike_internal

6 years ago[marshal] Use coop handles for System.Delegate.GetVirtualMethod_internal
Aleksey Kliger [Thu, 11 May 2017 21:35:42 +0000 (17:35 -0400)]
[marshal] Use coop handles for System.Delegate.GetVirtualMethod_internal

6 years ago[marshal] Use coop handles in mono_delegate_to_ftnptr
Aleksey Kliger [Thu, 11 May 2017 21:06:29 +0000 (17:06 -0400)]
[marshal] Use coop handles in mono_delegate_to_ftnptr

* Create mono_delegate_handle_to_ftnptr for the implementation
* Use coop handles for
  System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegateInternal

6 years ago[runtime] Remove temporary fcn mono_delegate_ctor_with_method_fixme
Aleksey Kliger [Thu, 11 May 2017 18:18:26 +0000 (14:18 -0400)]
[runtime] Remove temporary fcn mono_delegate_ctor_with_method_fixme

6 years ago[marshal] Change mono_delegate_ctor to use coop handles
Aleksey Kliger [Thu, 11 May 2017 18:17:22 +0000 (14:17 -0400)]
[marshal] Change mono_delegate_ctor to use coop handles

6 years ago[marshal] Use handles in mono_ftnptr_to_delegate
Aleksey Kliger [Thu, 11 May 2017 17:44:45 +0000 (13:44 -0400)]
[marshal] Use handles in mono_ftnptr_to_delegate

* Move most of the logic to mono_ftnptr_to_delegate_handle
* Use handles for
  System.Runtime.InteropServices.Marshal.GetDelegateForFunctionPointerInternal

6 years ago[runtime] Use coop handles in mono_delegate_ctor_with_method
Aleksey Kliger [Wed, 10 May 2017 22:18:44 +0000 (18:18 -0400)]
[runtime] Use coop handles in mono_delegate_ctor_with_method

Use coop handles in icall System.Delegate.CreateDelegate_internal

TODO: change callsites fo mono_delegate_ctor_with_method_fixme to use handles

6 years ago[marshal] Use coop handles for OffsetOf, SizeOf, Prelink, PrelinkAll
Aleksey Kliger [Wed, 10 May 2017 19:26:29 +0000 (15:26 -0400)]
[marshal] Use coop handles for OffsetOf, SizeOf, Prelink, PrelinkAll

System.Runtime.InteropServices.Marshal methods
* OffsetOf
* Prelink
* PrelinkAll
* SizeOf

6 years agoRemove outdated info and unused files from mcs/ (#4916)
Alexander Köplinger [Tue, 23 May 2017 12:27:42 +0000 (14:27 +0200)]
Remove outdated info and unused files from mcs/ (#4916)

Most of the removed files weren't touched in the last decade
and are unused so it's better to remove them to avoid confusion
about what they do.

I also went over and removed the most outdated info from readme
files, we probably want to do a more thorough overhaul in the future.

6 years ago[mcs] When setting struct empty layout consider compiler generated fields. Fixes...
Marek Safar [Tue, 23 May 2017 06:35:58 +0000 (08:35 +0200)]
[mcs] When setting struct empty layout consider compiler generated fields. Fixes #55604

6 years agoBump bockbuild to fix build
Alexander Köplinger [Tue, 23 May 2017 00:32:20 +0000 (02:32 +0200)]
Bump bockbuild to fix build

6 years ago[runtime] Add a fastpath to mono_object_isinst_icall (). (#4917)
Zoltan Varga [Tue, 23 May 2017 00:24:14 +0000 (20:24 -0400)]
[runtime] Add a fastpath to mono_object_isinst_icall (). (#4917)

6 years agoUse nuget 4.3.0-preview1 to fix build
Alexander Köplinger [Mon, 22 May 2017 22:16:22 +0000 (00:16 +0200)]
Use nuget 4.3.0-preview1 to fix build

4.5.0 is not yet available.

Also use lowercase nuget.exe to match the URL on https://dist.nuget.org/

6 years ago[mcs] Add expression bodied syntax for accessors. Fixes #54991
Marek Safar [Mon, 22 May 2017 21:29:54 +0000 (23:29 +0200)]
[mcs] Add expression bodied syntax for accessors. Fixes #54991

6 years ago[MacSDK] Update Nuget to 4.5, switch to binary release instead of building
Alexis Christoforides [Mon, 22 May 2017 20:04:30 +0000 (16:04 -0400)]
[MacSDK] Update Nuget to 4.5, switch to binary release instead of building

6 years ago[bcl] Make monolite platform specific (#4910)
Alexander Köplinger [Mon, 22 May 2017 16:09:44 +0000 (18:09 +0200)]
[bcl] Make monolite platform specific (#4910)

mscorlib.dll etc will be platform specific in the future. This also
means that we need to adapt monolite since it'll become platform
specific once we start the divergence.

monolite is essentially a repackaging of the "build" profile which
means we need to turn that profile into multi-platform profile
like net_4_x. We'll still have a symlink from build -> build-darwin
and the monolite which is downloaded or packaged in the tarball
is expanded into mcs/lib/monolite-<platform> depending on the platform
you're building on.

I had to move the get-monolite-latest target from the top-level
Makefile.am into mcs/class/Makefile so it has access to HOST_PLATFORM,
but it arguably should've been there anyway before.

6 years ago[bcl] Exclude Mono.CSharp.dll from api diff
Alexander Köplinger [Mon, 22 May 2017 16:02:12 +0000 (18:02 +0200)]
[bcl] Exclude Mono.CSharp.dll from api diff

We don't guarantee a stable API there and it changes often
when mcs internals change.

6 years ago[profiler] Fall back to CLOCK_MONOTONIC if CLOCK_PROCESS_CPUTIME_ID results in EINVAL...
Alex Rønne Petersen [Mon, 22 May 2017 15:02:22 +0000 (17:02 +0200)]
[profiler] Fall back to CLOCK_MONOTONIC if CLOCK_PROCESS_CPUTIME_ID results in EINVAL. (#4913)

This is the case on WSL.

6 years ago[mcs] Inflate referenced current types for imported type definitions. Fixes #56462
Marek Safar [Mon, 22 May 2017 14:58:26 +0000 (16:58 +0200)]
[mcs] Inflate referenced current types for imported type definitions. Fixes #56462

6 years ago[mcs] Removes TypeManager calls from MoreSpecific
Marek Safar [Mon, 22 May 2017 14:23:11 +0000 (16:23 +0200)]
[mcs] Removes TypeManager calls from MoreSpecific

6 years ago[ci] Add the collect-coverage tag for use on Jenkins. (#4912)
vkargov [Mon, 22 May 2017 12:43:28 +0000 (05:43 -0700)]
[ci] Add the collect-coverage tag for use on Jenkins. (#4912)

* [ci] Add the collect-coverage tag for use on Jenkins.

* Move collect-coverage up so we don't set different values for -O

6 years ago[mcs] extend API for loading types and consuming source file from a stream (#4905)
Bernhard Urban [Mon, 22 May 2017 10:40:19 +0000 (12:40 +0200)]
[mcs] extend API for loading types and consuming source file from a stream (#4905)

6 years ago[corlib] Address reviewer comments to new test.
Rodrigo Kumpera [Fri, 19 May 2017 22:06:19 +0000 (15:06 -0700)]
[corlib] Address reviewer comments to new test.

6 years agoBump api-snapshot
Alexander Köplinger [Fri, 19 May 2017 20:51:54 +0000 (22:51 +0200)]
Bump api-snapshot

6 years agoBump Roslyn to 2.3 preview
Marek Safar [Fri, 19 May 2017 15:33:32 +0000 (17:33 +0200)]
Bump Roslyn to 2.3 preview

6 years agoBump bockbuild
Alexis Christoforides [Fri, 19 May 2017 19:24:13 +0000 (15:24 -0400)]
Bump bockbuild

6 years agoBump the btls submodule
Alexander Köplinger [Fri, 19 May 2017 17:55:41 +0000 (19:55 +0200)]
Bump the btls submodule

Bring in the change that makes building the "tool" subdirectory
in BTLS off by default - we don't need it in Mono and it fails
to build on some platforms with older C++ compiler.

6 years ago[mcs] Report more unsafe code errors in iterators. Fixes #56616
Marek Safar [Fri, 19 May 2017 16:43:59 +0000 (18:43 +0200)]
[mcs] Report more unsafe code errors in iterators. Fixes #56616

6 years ago[build] Remove platforms from xbuild build
Marek Safar [Fri, 19 May 2017 13:11:29 +0000 (15:11 +0200)]
[build] Remove platforms from xbuild build

6 years ago[amd64] Fix the allocation of the caller area in filter clauses. Fixes #56567. (...
Zoltan Varga [Fri, 19 May 2017 15:37:38 +0000 (11:37 -0400)]
[amd64] Fix the allocation of the caller area in filter clauses. Fixes #56567. (#4903)

6 years ago[bcl] Dispose Cecil AssemblyDefinition after usage (#4900)
Alexander Köplinger [Fri, 19 May 2017 10:59:00 +0000 (12:59 +0200)]
[bcl] Dispose Cecil AssemblyDefinition after usage (#4900)

Follow-up to https://github.com/mono/mono/pull/4899. I audited
all the places in BCL where we made use of Cecil's AssemblyDefinition
and made sure we're properly disposing them and not keeping files
unnecessarily open.

I used InMemory=true in cases where tracking the lifetime would
be complicated. There are also some tests in mcs/tests which I
didn't bother to fix.

6 years agoWarn on failure to create default Reflection.Emit SymbolWriter instead of throwing...
Katelyn Gadd [Fri, 19 May 2017 07:24:49 +0000 (00:24 -0700)]
Warn on failure to create default Reflection.Emit SymbolWriter instead of throwing and failing (#4748)

* Bug #53038: Warn on failure to create default Reflection.Emit SymbolWriter (on platforms like Android that don't ship one) instead of throwing and failing

6 years ago[amd64] Remove the restriction on the locals stack size. Fixes #56452. (#4901)
Zoltan Varga [Fri, 19 May 2017 02:47:56 +0000 (22:47 -0400)]
[amd64] Remove the restriction on the locals stack size. Fixes #56452. (#4901)

6 years ago[interp] respect 64bit alignment on armv7
Bernhard Urban [Wed, 17 May 2017 19:52:18 +0000 (21:52 +0200)]
[interp] respect 64bit alignment on armv7

6 years ago[pdb2mdb] Dispose Cecil AssemblyDefinition on pdb2mdb (#4899)
Alexander Köplinger [Thu, 18 May 2017 19:41:08 +0000 (21:41 +0200)]
[pdb2mdb] Dispose Cecil AssemblyDefinition on pdb2mdb (#4899)

Context: https://bugzilla.xamarin.com/show_bug.cgi?id=56275

Recent Cecil 0.10 changed to not reading the assembly in memory but
instead reads directly from the underlying stream [0]. This however
means that the file handle is not freed until the AssemblyDefinition
is disposed.

Xamarin.Android is using the pdb2mdb source as part of
Xamarin.Android.Build.Tasks.dll and hit an issue where the file
would be locked inside of VS.

[0] http://cecil.pe/post/149243207656/mono-cecil-010-beta-1
(cherry picked from commit 5077205a44a7dc97edf6b67072bea53f043cf815)

6 years ago[configure] Add stdalign.h checks for BTLS to ARM platforms too
Alexander Köplinger [Thu, 18 May 2017 18:12:44 +0000 (20:12 +0200)]
[configure] Add stdalign.h checks for BTLS to ARM platforms too

We added it for x86/amd64 in 488b550ac0275c944e0a2c23be93173382084e5f
but missed adding that check when ARM was added recently.

6 years ago[aot] Fix a memory leak related to constraint allocation/deallocation. (#4880)
vkargov [Thu, 18 May 2017 18:08:58 +0000 (11:08 -0700)]
[aot] Fix a memory leak related to constraint allocation/deallocation. (#4880)

* [jit] Make a copy of the constraint in mini_get_shared_gparam().

* [aot] Free the temporary gshared constraint in decode_class_ref().

6 years agoFixes for bug#54388 "InternalsVisibleTo is case sensitive" * Fix the JIT so that...
Katelyn Gadd [Tue, 11 Apr 2017 09:34:43 +0000 (02:34 -0700)]
Fixes for bug#54388 "InternalsVisibleTo is case sensitive" * Fix the JIT so that access checks are performed on constructors * Use ASCII case insensitivity when performing cross-assembly access checks for internals * Update mcs to use case-insensitive comparisons when evaluating InternalsVisibleTo attributes for access checks (matching the new runtime behavior, and the behavior of roslyn)

This issue is actually a pair of bugs:
1. We don't perform any access checks for constructors (which can give a false impression of our behavior for this issue). This means that you can also invoke private constructors from other assemblies.
2. InternalsVisibleTo checks are done using strcmp instead of a case-insensitive comparison.

6 years ago[corlib] Bump DoubleWait test timeouts
Marek Safar [Thu, 18 May 2017 15:43:09 +0000 (17:43 +0200)]
[corlib] Bump DoubleWait test timeouts

6 years agoFix eglibc remapping and revive the test for its completeness. (#4896)
vkargov [Thu, 18 May 2017 15:04:58 +0000 (08:04 -0700)]
Fix eglibc remapping and revive the test for its completeness. (#4896)

* [eglib] Add the missing eglib remappings.

* [tests] Revive the eglib remapping completeness test.

6 years agoAdds System.Net.Http 4.3.2 to blacklist
Marek Safar [Thu, 18 May 2017 07:48:51 +0000 (09:48 +0200)]
Adds System.Net.Http 4.3.2 to blacklist

6 years ago[configure] Remove the --enable-dynamic-btls switch, it is the only option
Alexander Köplinger [Thu, 18 May 2017 10:58:57 +0000 (12:58 +0200)]
[configure] Remove the --enable-dynamic-btls switch, it is the only option

6 years ago[ci] Enable linker tests on PRs
Marek Safar [Tue, 16 May 2017 18:53:32 +0000 (20:53 +0200)]
[ci] Enable linker tests on PRs

6 years agoAdd linker tests
Marek Safar [Thu, 11 May 2017 19:08:25 +0000 (21:08 +0200)]
Add linker tests

6 years agoAdd LinkerDescriptor
Marek Safar [Tue, 9 May 2017 15:50:58 +0000 (17:50 +0200)]
Add LinkerDescriptor

6 years agoBump linker
Marek Safar [Wed, 10 May 2017 13:00:15 +0000 (15:00 +0200)]
Bump linker

6 years ago[runtime] Make RuntimeHelpers:SufficientExecutionStack () a no-op on android for...
Zoltan Varga [Wed, 17 May 2017 16:33:08 +0000 (12:33 -0400)]
[runtime] Make RuntimeHelpers:SufficientExecutionStack () a no-op on android for now. Fixes #56240. (#4889)

6 years ago[coop handles] Add mechanism to track handle leaks
Aleksey Kliger [Mon, 15 May 2017 22:47:14 +0000 (18:47 -0400)]
[coop handles] Add mechanism to track handle leaks

When MONO_HANDLE_TRACK_SP is defined, each handle records the native C stack pointer
at the time of its nearest enclosing HANDLE_FUNCTION_ENTER.  If a subsequent
handle is allocated with a lower stack pointer (in memory; ie higher in the
call tree) then a HANDLE_FUNCTION_RETURN is missing and we're leaking handles.

7 years ago[interp] assume EABI for passing arguments to arm trampoline
Bernhard Urban [Wed, 17 May 2017 12:40:31 +0000 (14:40 +0200)]
[interp] assume EABI for passing arguments to arm trampoline

7 years ago[interp] use helper function to check if generic inst is a value type
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] use helper function to check if generic inst is a value type

7 years ago[arm] respect thumb mode in mixed mode unwinding
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[arm] respect thumb mode in mixed mode unwinding

7 years ago[interp] properly pass 64bit integers to native code on 32bit arches
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] properly pass 64bit integers to native code on 32bit arches

7 years ago[interp] disable some tests that fail on CI only
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] disable some tests that fail on CI only

can't reproduce the crash on my dev device, will investigate later.

7 years ago[interp] make mixed mode work on arm
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] make mixed mode work on arm

7 years ago[interp] generics/vt fix regarding elem size for ldelem.vt
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] generics/vt fix regarding elem size for ldelem.vt

7 years ago[interp] intrinsify System.Array.UnsafeLoad
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] intrinsify System.Array.UnsafeLoad

7 years ago[interp] add a conversion that is only required for 32bit
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] add a conversion that is only required for 32bit

7 years ago[interp] icall trampoline for arm
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] icall trampoline for arm

7 years ago[interp] make mixed mode work on arm64
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] make mixed mode work on arm64

7 years ago[interp] fix gcc warnings
Bernhard Urban [Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)]
[interp] fix gcc warnings

7 years ago[interp] fix conv.u4.r8 on arm64
Bernhard Urban [Wed, 17 May 2017 11:40:57 +0000 (13:40 +0200)]
[interp] fix conv.u4.r8 on arm64

7 years ago[interp/tramp] use MONO_STRUCT_OFFSET infrastructure and extract constants
Bernhard Urban [Wed, 17 May 2017 11:40:57 +0000 (13:40 +0200)]
[interp/tramp] use MONO_STRUCT_OFFSET infrastructure and extract constants

7 years ago[interp] implement icall_trampoline for arm64
Bernhard Urban [Wed, 17 May 2017 11:40:57 +0000 (13:40 +0200)]
[interp] implement icall_trampoline for arm64

7 years agoRename Microsoft.NuGet.Build.Tasks.dll.sources to exclude profile
Alexander Köplinger [Wed, 17 May 2017 12:14:04 +0000 (14:14 +0200)]
Rename Microsoft.NuGet.Build.Tasks.dll.sources to exclude profile

The earlier name sent gensources.sh into an infinite loop,
not sure why yet. The directory is only built for xbuild_14
anyway so this should be safe.

7 years agoFix tarball build
Alexander Köplinger [Wed, 17 May 2017 03:39:08 +0000 (05:39 +0200)]
Fix tarball build

The itanium backend was removed.

7 years agow32handle: double the available slots (#4856)
David Naylor [Wed, 17 May 2017 00:45:24 +0000 (02:45 +0200)]
w32handle: double the available slots (#4856)

Mono crashes if the system has more than ~128G of RAM.  Doubling the
number of slots fixes the SIGSEGV error on FreeBSD.

7 years ago[MacSDK] Remove some outdated info from ReadMe.rtf
Alexander Köplinger [Tue, 16 May 2017 22:27:43 +0000 (00:27 +0200)]
[MacSDK] Remove some outdated info from ReadMe.rtf

uninstallMono.sh is no longer installed.

The website has instructions for removing Mono:
http://www.mono-project.com/docs/about-mono/supported-platforms/osx/#uninstalling-mono-on-mac-os-x

7 years ago[btls] Add "desktop" ARM Linux configurations (for IoT, mostly) (#4875)
Jo Shields [Tue, 16 May 2017 20:24:29 +0000 (21:24 +0100)]
[btls] Add "desktop" ARM Linux configurations (for IoT, mostly) (#4875)

* [btls] Add "desktop" ARM Linux configurations (for IoT, mostly)

* [btls] Disable optimized asm on soft-float ARM

It depends on a NEON FPU, which we don't target on soft float

7 years ago[btls] Add MonoPInvokeCallback attribute on all full aot profiles (#4879)
Alexander Köplinger [Tue, 16 May 2017 19:29:49 +0000 (21:29 +0200)]
[btls] Add MonoPInvokeCallback attribute on all full aot profiles (#4879)

It was #ifdef'ed to only be available on monotouch before,
but the testing_aot_full profile in CI runs into this test failure:

```
MESSAGE:
System.ExecutionEngineException : Attempting to JIT compile method '(wrapper native-to-managed) Mono.Btls.MonoBtlsSslCtx:NativeVerifyCallback (intptr,int,intptr)' while running in aot-only mode. See https://developer.xamarin.com/guides/ios/advanced_topics/limitations/ for more information.

+++++++++++++++++++
STACK TRACE:
  at (wrapper managed-to-native) System.Object:__icall_wrapper_mono_thread_interruption_checkpoint ()
  at (wrapper managed-to-native) System.Runtime.InteropServices.Marshal:GetFunctionPointerForDelegateInternal (System.Delegate)
  at System.Runtime.InteropServices.Marshal.GetFunctionPointerForDelegate[TDelegate] (TDelegate d) [0x00013] in <fa55a8c31ba0490383239e5850d81686>:0
  at Mono.Btls.MonoBtlsSslCtx..ctor (Mono.Btls.MonoBtlsSslCtx+BoringSslCtxHandle handle) [0x00059] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Btls.MonoBtlsSslCtx..ctor () [0x0000b] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Btls.MonoBtlsContext.InitializeConnection () [0x00000] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Btls.MonoBtlsContext.StartHandshake () [0x00000] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessHandshake (Mono.Net.Security.AsyncProtocolRequest asyncRequest, Mono.Net.Security.AsyncOperationStatus status) [0x00004] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation (Mono.Net.Security.AsyncOperationStatus status) [0x0006b] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Net.Security.AsyncProtocolRequest.ProcessOperation () [0x0000d] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Net.Security.AsyncProtocolRequest.StartOperation () [0x0003c] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Net.Security.AsyncProtocolRequest.StartOperation (Mono.Net.Security.AsyncOperation operation) [0x00024] in <18810f39bffc41dcb0263eb2043cc10e>:0
  at Mono.Net.Security.MobileAuthenticatedStream.ProcessAuthentication (System.Net.LazyAsyncResult lazyResult) [0x00057] in <18810f39bffc41dcb0263eb2043cc10e>:0
```

The attribute itself is already conditional on MONOTOUCH and
FULL_AOT_RUNTIME so simply removing the ifdef should fix the issue.

7 years agoMerge pull request #4877 from ntherning/fix-file-handle-leak-in-mono_mmap_open_file...
Niklas Therning [Tue, 16 May 2017 17:36:18 +0000 (19:36 +0200)]
Merge pull request #4877 from ntherning/fix-file-handle-leak-in-mono_mmap_open_file-on-windows

Fixes a file handle leak in mono_mmap_open_file() on Windows

7 years agoFixes a file handle leak in mono_mmap_open_file() on Windows. See
Niklas Therning [Tue, 16 May 2017 14:46:52 +0000 (16:46 +0200)]
Fixes a file handle leak in mono_mmap_open_file() on Windows. See
https://bugzilla.xamarin.com/show_bug.cgi?id=56493.

7 years ago[xbuild] Add web targets for 15.0 (#4868)
Mikayla Hutchinson [Tue, 16 May 2017 10:31:19 +0000 (06:31 -0400)]
[xbuild] Add web targets for 15.0 (#4868)

7 years ago[msvc] Remove order.xml (#4867)
Alexander Köplinger [Tue, 16 May 2017 10:10:34 +0000 (12:10 +0200)]
[msvc] Remove order.xml (#4867)

It's a build artifact anyway since we check in the generated csproj's
so you don't really need the order.xml.

After the new platform-specific BCL changes went in it also started
containing stuff like `-r:./../../class/lib/net_4_x-linux/mscorlib.dll`
which makes it even less useful to have checked in as it'd get
changed when you build on OSX for example.

7 years ago[threadpool] Fix alignment of ThreadPoolWorkerCounter (#4871)
Ludovic Henry [Tue, 16 May 2017 02:19:34 +0000 (22:19 -0400)]
[threadpool] Fix alignment of ThreadPoolWorkerCounter (#4871)

It is accessed with a 64bits atomic operation, so it needs to be 64bits aligned, even on a 32bits platform. A CPU exception EXC_ARM_DA_ALIGN triggers on armv7 32bits.

Fix https://bugzilla.xamarin.com/show_bug.cgi?id=56202

7 years agoMerge pull request #4752 from BrzVlad/feature-dynamic-nrs
Vlad Brezae [Tue, 16 May 2017 00:22:50 +0000 (03:22 +0300)]
Merge pull request #4752 from BrzVlad/feature-dynamic-nrs

[sgen] Dynamic nursery sizing

7 years ago[corlib] Reduce the warning spew our testsuite produces.
Rodrigo Kumpera [Mon, 15 May 2017 23:20:14 +0000 (16:20 -0700)]
[corlib] Reduce the warning spew our testsuite produces.

7 years ago[corlib] Add tests for the behavior of IO in the face of a symlink loop.
Rodrigo Kumpera [Mon, 15 May 2017 23:19:07 +0000 (16:19 -0700)]
[corlib] Add tests for the behavior of IO in the face of a symlink loop.

The behavior was empirically found on windows and dotnet.

7 years ago[corlib] Remove the File.Exists check before opening the file.
Rodrigo Kumpera [Mon, 15 May 2017 23:17:23 +0000 (16:17 -0700)]
[corlib] Remove the File.Exists check before opening the file.

It's both racy and not necessary.

Beyond that, it will produce the wrong exception if opening the file fails for a different reason that it's missing.

This is an issue in case of bad permissions or symlink loops.