mono.git
7 years ago[msvc] Update csproj files (#4284)
monojenkins [Mon, 23 Jan 2017 17:19:22 +0000 (17:19 +0000)]
[msvc] Update csproj files (#4284)

7 years ago[runtime] Remove duplicate unused SHA1 implementation.
Zoltan Varga [Mon, 23 Jan 2017 08:23:20 +0000 (03:23 -0500)]
[runtime] Remove duplicate unused SHA1 implementation.

7 years ago[mono-sha1] make SHA1Transform thread-safe
Bernhard Urban [Fri, 20 Jan 2017 15:15:04 +0000 (16:15 +0100)]
[mono-sha1] make SHA1Transform thread-safe

should fix https://bugzilla.xamarin.com/show_bug.cgi?id=41133

The bug exposed itself as System.MethodAccessExceptionMethod which is
thrown when a method isn't allowed to call another method.  Several
things are checked for this: Among other things, the runtime checks if
the public key in the friend list of the caller assembly matches the
public key in the callee assembly.

The issue here was that two threads computed the SHA1 at the same time,
using the same buffer and therefore computing garbage.

7 years ago[aot] Allow the redirection of aot profile output to an already opened fd using outfi...
Zoltan Varga [Mon, 23 Jan 2017 10:48:54 +0000 (05:48 -0500)]
[aot] Allow the redirection of aot profile output to an already opened fd using outfile=#<fdnum>.

7 years agoEnable AOT for all roslyn assemblies.
Zoltan Varga [Wed, 18 Jan 2017 00:50:19 +0000 (19:50 -0500)]
Enable AOT for all roslyn assemblies.

7 years agoFix a few cppcheck errors (#4281)
Alexander Köplinger [Mon, 23 Jan 2017 02:11:40 +0000 (03:11 +0100)]
Fix a few cppcheck errors (#4281)

* [zlib] Fix CppCheck error "Shifting a negative value is undefined behaviour"

This matches what upstream now does:
https://github.com/madler/zlib/blob/2edb94a3025d288dc251bc6cbb2c02e60fbd7438/inflate.c#L1529

* [scripts] Fix CppCheck error "Memory leak: nargv"

* [tests] Fix CppCheck error: "Memory leak: reference"

* [aot-compiler] Fix CppCheck error: "Resource leak: infile"

* [metadata] Fix CppCheck error: "Uninitialized variable: ret"

7 years agoMerge pull request #4274 from kumpera/cctor-abort
Rodrigo Kumpera [Sun, 22 Jan 2017 15:20:38 +0000 (10:20 -0500)]
Merge pull request #4274 from kumpera/cctor-abort

[runtime] Latest attempt at the cctor abort race. All tests passing locally.

7 years agoFix tarball build
Alexander Köplinger [Sun, 22 Jan 2017 02:13:56 +0000 (03:13 +0100)]
Fix tarball build

w32api.h wasn't included in any sources in the Makefile.
Also fix path in vcxproj, the file is in mono/utils not mono/metadata.

7 years ago[aot] Init the plt before setting acfg->methods_loaded which is accessed outside...
Zoltan Varga [Sat, 21 Jan 2017 11:04:22 +0000 (06:04 -0500)]
[aot] Init the plt before setting acfg->methods_loaded which is accessed outside the lock.

7 years ago[io-layer] Extract error (#4279)
Ludovic Henry [Sat, 21 Jan 2017 01:15:19 +0000 (20:15 -0500)]
[io-layer] Extract error (#4279)

* [file] Remove dead field

* [process] Remove wapi_getpid

* [process] Remove CloseHandle

* [io-layer] Remove dead MONO_TRACE

* [io-layer] Extract error

* [io-layer] Extract wapi.h

* [io-layer] Remove the io-layer

7 years ago[runtime] Fix the loaded llvm build.
Zoltan Varga [Sat, 21 Jan 2017 00:02:43 +0000 (19:02 -0500)]
[runtime] Fix the loaded llvm build.

7 years ago[corlib] Removes unused method
Marek Safar [Fri, 20 Jan 2017 22:23:58 +0000 (23:23 +0100)]
[corlib] Removes unused method

7 years ago[btls] Remove last traces of statically linked btls
Alexander Köplinger [Fri, 20 Jan 2017 19:34:29 +0000 (20:34 +0100)]
[btls] Remove last traces of statically linked btls

It was removed in d831fc4ec4c90930026342431641e529b2e34dc8.

7 years ago[btls] Add dependency on btls source files in Makefile so change tracking works
Alexander Köplinger [Fri, 20 Jan 2017 19:33:37 +0000 (20:33 +0100)]
[btls] Add dependency on btls source files in Makefile so change tracking works

7 years agoReally fix the file mode this time...
Alexander Köplinger [Fri, 20 Jan 2017 18:49:03 +0000 (19:49 +0100)]
Really fix the file mode this time...

Sorry, should probably get a coffee :(

7 years agoFix inadvertent file mode change in previous commit
Alexander Köplinger [Fri, 20 Jan 2017 18:44:36 +0000 (19:44 +0100)]
Fix inadvertent file mode change in previous commit

7 years ago[Facades] Refresh netstandard20 typeforwarders
Alexander Köplinger [Fri, 20 Jan 2017 18:40:55 +0000 (19:40 +0100)]
[Facades] Refresh netstandard20 typeforwarders

7 years ago[profiler] Add mono-profiler-aot.h to EXTRA_DIST
Alexander Köplinger [Fri, 20 Jan 2017 15:59:55 +0000 (16:59 +0100)]
[profiler] Add mono-profiler-aot.h to EXTRA_DIST

This broke the tarball build.

7 years ago[io-layer] Extract file (#4255)
Ludovic Henry [Fri, 20 Jan 2017 16:32:48 +0000 (11:32 -0500)]
[io-layer] Extract file (#4255)

* [io-layer] Merge io related headers

* [io-layer] Remove global variable _wapi_had_shut_down

* [io-layer] Inline io-portability.c file into io.c

* [io-layer] Inline locking.c file into io.c

* [io-layer] Inline posix.c file into io.c

* [file] Move metadata/file-io* files to metadata/w32file*

* [io-layer] Extract file functions

* [file] Remove overlapped parameter which is always NULL

* [file] Remove SECURITY_ATTRIBUTES parameter which is always NULL

* [file] Remove GET_FILEEX_INFO_LEVELS parameter which is always GetFileExInfoStandard

* [file] Replace ULARGE_INTEGER parameter type with guint64

* [file] Replace WIN32_FILE_ATTRIBUTE_DATA parameter type with MonoIOStat

* [file] Remove mono_w32file_create unused parameter tmplate

* [file] Fix win32 build

7 years ago[reflection] Use coop handles for MonoMethod icalls (#4272)
Aleksey Kliger (λgeek) [Fri, 20 Jan 2017 15:35:02 +0000 (10:35 -0500)]
[reflection] Use coop handles for MonoMethod icalls (#4272)

* [reflection] Use coop handles for MonoMethod.GetGenericArguments

* [reflection] Use handles for ves_icall_MonoMethod_GetGenericMethodDefinition
  and two more trivial functions:
  - ves_icall_MonoMethod_get_IsGenericMethod
  - ves_icall_MonoMethod_get_IsGenericMethodDefinition

* [runtime] Add mono_method_get_base_method function

  - Internal function in class-internals.h, for now.
  - Code factored out from ves_icall_MonoMethod_get_base_method
  - ves_icall_MonoMethod_get_base_method just calls this utility and wraps on
    reflection objects, using handles.

* [reflection] Use coop handles for ves_icall_MonoMethod_MakeGenericMethod_impl

* [reflection] Use coop handles for ves_icall_MonoMethod_GetPInvoke

* [reflection] Use coop handles for ves_icall_MonoMethod_get_core_clr_security_level

* [reflection] Use coop handles for ves_icall_MonoMethod_get_name

7 years ago[bcl] Rename FEATURE_MONO_CAS to MONO_FEATURE_CAS
Alexander Köplinger [Fri, 20 Jan 2017 15:00:56 +0000 (16:00 +0100)]
[bcl] Rename FEATURE_MONO_CAS to MONO_FEATURE_CAS

To be consistent with the other MONO_FEATURE_* defines.

7 years ago[runtime] Mono.Dynamic.Interpreter is no more, delete it from the list of assemblies...
Zoltan Varga [Fri, 20 Jan 2017 10:08:50 +0000 (05:08 -0500)]
[runtime] Mono.Dynamic.Interpreter is no more, delete it from the list of assemblies compiled by make fullaotcheck.

7 years ago[runtime] Fix locking issues while accessing MonoClass bitfields. (#4275)
Zoltan Varga [Fri, 20 Jan 2017 08:28:22 +0000 (03:28 -0500)]
[runtime] Fix locking issues while accessing MonoClass bitfields. (#4275)

7 years ago[System.Transactions] Add stubs and visibility fixes for netstandard20 APIs
Alexander Köplinger [Fri, 20 Jan 2017 02:06:05 +0000 (03:06 +0100)]
[System.Transactions] Add stubs and visibility fixes for netstandard20 APIs

7 years ago[runtime] Poll for interruption on cctor execution if mono_threads_end_abort_protecte...
Rodrigo Kumpera [Fri, 20 Jan 2017 02:04:46 +0000 (18:04 -0800)]
[runtime] Poll for interruption on cctor execution if mono_threads_end_abort_protected_block returns true.

7 years ago[runtime] Add new thread state INTERRUPT_REQUEST_DEFERRED to fix race with abort...
Rodrigo Kumpera [Fri, 20 Jan 2017 02:02:20 +0000 (18:02 -0800)]
[runtime] Add new thread state INTERRUPT_REQUEST_DEFERRED to fix race with abort protected blocks.

The way this works is that when we install a protected block, we change a interrupt requested to interrupt request deferred.
Then, when protected block count drops to zero, we switch back and inform the caller to poll for interrupts.

Additionally, when interrupting, we set it to deferred if there's a protected block in effect and it's not a self interrupt.

7 years ago[threading] Change mono_thread_try_resume_interruption to check for the abort thresho...
Rodrigo Kumpera [Fri, 20 Jan 2017 02:01:43 +0000 (18:01 -0800)]
[threading] Change mono_thread_try_resume_interruption to check for the abort threshold too.

7 years ago[runtime] Workaround in Environment::Exit icall in case current thread has an interru...
Rodrigo Kumpera [Fri, 20 Jan 2017 02:00:46 +0000 (18:00 -0800)]
[runtime] Workaround in Environment::Exit icall in case current thread has an interruption token installed. Tracked under bug #51653.

7 years ago[mono/tests] Use multiple return values to make it easy to pinpoint the failure.
Rodrigo Kumpera [Fri, 20 Jan 2017 01:59:16 +0000 (17:59 -0800)]
[mono/tests] Use multiple return values to make it easy to pinpoint the failure.

7 years agoFix memory leak when creating sequence points (#4273)
Michael DeRoy [Fri, 20 Jan 2017 00:28:47 +0000 (19:28 -0500)]
Fix memory leak when creating sequence points (#4273)

7 years ago[runtime] Collapse interruption_requested and abort_protected_block_count into a...
Rodrigo Kumpera [Fri, 16 Dec 2016 01:58:32 +0000 (23:58 -0200)]
[runtime] Collapse interruption_requested and abort_protected_block_count into a single var.

This change doesn't change behavior.

7 years ago[sre] Use coop handles in parts of sre.c
Aleksey Kliger [Thu, 12 Jan 2017 15:36:21 +0000 (10:36 -0500)]
[sre] Use coop handles in parts of sre.c

* Convert ves_icall_RuntimeType_MakeGenericType to use handles.
* The above necessitates converting mono_reflection_bind_generic_parameters and
  mono_reflection_type_get_handle (renamed to
  mono_reflection_type_handle_mono_type) to use handles.
* From there we have to touch a lot of builder internals:
  - ves_icall_DynamicMethod_create_dynamic_method
  - ves_icall_ModuleBuilder_RegisterToken
  - ves_icall_ModuleBuilder_basic_init
  - ves_icall_ModuleBuilder_getMethodToken
  - ves_icall_ModuleBuilder_getToken
  - ves_icall_ModuleBuilder_getUSIndex
  - ves_icall_TypeBuilder_create_runtime_class
* As well as runtime functions
  - mono_image_insert_string
  - mono_image_create_token
  - mono_class_{get,has,set}_ref_info
  - mono_reflection_is_usertype
  - mono_dynimage_encode_reflection_sighelper
  - mono_dynamic_image_register_token

7 years agoAdd mdb2ppdb man page, remove prj2make man page
Miguel de Icaza [Thu, 19 Jan 2017 18:48:14 +0000 (13:48 -0500)]
Add mdb2ppdb man page, remove prj2make man page

7 years agoMerge pull request #4269 from kumpera/nuget-fixing-round2
Rodrigo Kumpera [Thu, 19 Jan 2017 18:26:54 +0000 (10:26 -0800)]
Merge pull request #4269 from kumpera/nuget-fixing-round2

[runtime] A pair of small fixes for the ignore assembly work.

7 years ago[threads] Fix crash on unknown policy (#4264)
Ludovic Henry [Thu, 19 Jan 2017 14:31:01 +0000 (09:31 -0500)]
[threads] Fix crash on unknown policy (#4264)

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

7 years ago[threadpool] Fix race on runtime shutdown (#4263)
Ludovic Henry [Thu, 19 Jan 2017 14:30:07 +0000 (09:30 -0500)]
[threadpool] Fix race on runtime shutdown (#4263)

We cannot free the threadpool, because there is a race on shutdown where a managed thread may request a new threadpool thread, but we already destroyed the threadpool. So to avoid a use-after-free, we simply do not free the threadpool, as we won't be able to access the threadpool anyway because the ref count will be 0

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

7 years ago[io-layer] Extract socket (#4241)
Ludovic Henry [Thu, 19 Jan 2017 14:25:55 +0000 (09:25 -0500)]
[io-layer] Extract socket (#4241)

* [socket] Extract win32 and unix specific code from w32socket.c

* [socket] Extract WSAGetLastError and WSASetLastError

* [socket] Extract closesocket

* [socket] Extract iocltsocket

* [socket] Extract socket-wrappers.h functions

* [socket] Extract w32handle operations

* [socket] Extract WSAIoctl

* [socket] Do not use mono_w32socket_ioctl for disconnect

* [socket] Extract errno_to_WSA

* [socket] Remove redundant mono_w32handle_get_type/mono_w32handle_lookup

* [socket] Inline _wapi_* functions

* [socket] Make disconnect not rely on mono_w32socket_ioctl

* [socket] Remove unused parameters to mono_w32socket_transmit_file

* [socket] Refactor calls to mono_w32socket_convert_error

* [socket] Remove dead code

7 years ago[mini] Add new JIT flag JIT_FLAG_DISCARD_RESULTS to reduce the noise when profiling...
Rodrigo Kumpera [Thu, 19 Jan 2017 11:34:50 +0000 (03:34 -0800)]
[mini] Add new JIT flag JIT_FLAG_DISCARD_RESULTS to reduce the noise when profiling the jit with --compile-all. (#4266)

JI registration dominates profiling as it has some perf issues itself.

7 years ago[runtime] A pair of small fixes for the ignore assembly work.
Rodrigo Kumpera [Thu, 19 Jan 2017 01:54:32 +0000 (17:54 -0800)]
[runtime] A pair of small fixes for the ignore assembly work.

image.c (do_mono_image_load): Ignore refonly images when checking for ignorable assemblies.

icall.c (ves_icall_System_Reflection_Assembly_InternalGetAssemblyName): Load the image in ref only mode.

7 years ago[btls] Disable RC4 cipher suites by default
Alexander Köplinger [Wed, 18 Jan 2017 20:53:22 +0000 (21:53 +0100)]
[btls] Disable RC4 cipher suites by default

They should not be used anymore according to https://tools.ietf.org/html/rfc7465
and browser like Chrome, Firefox and Edge/IE [1] already removed them.

We should to do the same. To have everything in one place I also moved
the disabling of SSLv2/v3 to the mono_btls_ssl_ctx_new function as well
instead of disabling it on each single connection.

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

[1] https://blogs.windows.com/msedgedev/2016/08/09/rc4-now-deprecated/

7 years ago[bockbuild] Fix a packaging regression
Alexis Christoforides [Wed, 18 Jan 2017 20:21:07 +0000 (15:21 -0500)]
[bockbuild] Fix a packaging regression

7 years agoMerge pull request #4262 from kumpera/fix-windows
Rodrigo Kumpera [Wed, 18 Jan 2017 18:18:41 +0000 (13:18 -0500)]
Merge pull request #4262 from kumpera/fix-windows

Fix the windows build.

7 years agoFix the windows build.
Rodrigo Kumpera [Wed, 18 Jan 2017 15:50:51 +0000 (07:50 -0800)]
Fix the windows build.

7 years ago[pdb2mdb] Detect portable PDB and fail gracefully instead of crashing (#4261)
Alexander Köplinger [Wed, 18 Jan 2017 15:48:07 +0000 (16:48 +0100)]
[pdb2mdb] Detect portable PDB and fail gracefully instead of crashing (#4261)

Before when trying to convert an assembly that had a portable PDB
instead of a native PDB alongside it we'd just crash in the
Microsoft.Cci pdb reader.

We now check whether the symbol file is a portable PDB and exit
gracefully with an error message and exit code 2 from the app.

Users which access the Converter class (like e.g. Xamarin Android [1])
directly can now catch the PortablePdbNotSupportedException to
do custom logic.

[1] https://github.com/xamarin/xamarin-android/blob/15f7547fa673e02256a75910c60c5e13eb158d2b/src/Xamarin.Android.Build.Tasks/Tasks/ConvertDebuggingFiles.cs#L28

7 years ago[reflection] Fix ves_icall_RuntimeTypeHandle_GetGenericTypeDefinition_impl
Aleksey Kliger [Wed, 18 Jan 2017 00:40:14 +0000 (19:40 -0500)]
[reflection] Fix ves_icall_RuntimeTypeHandle_GetGenericTypeDefinition_impl

There was a typo in ea176c5bb8d2f93dafeec4aff683860c886c97ba that inadvertantly
replaced `generic_class` by `klass`.

7 years ago[coop handles] Fix mono_gchandle_get_target_handle
Aleksey Kliger [Tue, 17 Jan 2017 22:27:45 +0000 (17:27 -0500)]
[coop handles] Fix mono_gchandle_get_target_handle

Apparently it did not get exercised previously.

7 years ago[test] RuntimeType.GetGenericTypeDefiniton should return the TypeBuilder
Aleksey Kliger [Wed, 18 Jan 2017 00:38:01 +0000 (19:38 -0500)]
[test] RuntimeType.GetGenericTypeDefiniton should return the TypeBuilder

even after CreateType has already been called.

7 years ago[mini-posix] close file stream before exec'ing into GDB/LLDB
Bernhard Urban [Wed, 18 Jan 2017 13:08:50 +0000 (05:08 -0800)]
[mini-posix] close file stream before exec'ing into GDB/LLDB

otherwise it isn't ensured that the content is written to the file.

7 years ago[mini-posix] fix indent
Bernhard Urban [Wed, 18 Jan 2017 13:07:14 +0000 (05:07 -0800)]
[mini-posix] fix indent

7 years ago[exception] add another testcase where an exception is rethrown explicitly (and there...
Bernhard Urban [Mon, 16 Jan 2017 13:46:00 +0000 (14:46 +0100)]
[exception] add another testcase where an exception is rethrown explicitly (and therefore another behavior is expected)

7 years ago[exception] retain stack trace when an exception is rethrown
Bernhard Urban [Mon, 16 Jan 2017 13:45:52 +0000 (14:45 +0100)]
[exception] retain stack trace when an exception is rethrown

7 years agoMerge pull request #4234 from kumpera/katia-flavia
Rodrigo Kumpera [Wed, 18 Jan 2017 06:21:30 +0000 (01:21 -0500)]
Merge pull request #4234 from kumpera/katia-flavia

[runtime] Deny loading bad images.

7 years ago[bockbuild] Fix packaging regression
Alexis Christoforides [Tue, 17 Jan 2017 23:21:58 +0000 (18:21 -0500)]
[bockbuild] Fix packaging regression

7 years ago[tools] Add nuget-hash-extractor tool to help produce the runtime ignored assemblies...
Rodrigo Kumpera [Tue, 17 Jan 2017 22:31:32 +0000 (14:31 -0800)]
[tools] Add nuget-hash-extractor tool to help produce the runtime ignored assemblies table.

This tool takes a folder full of nupkg file and print macro invocations to add to image.c:ignored_assemblies.

Usage:

make download
make run

The download.sh script downloads all nugets we want to ignore. So update it before running if you have more you want to add.

7 years ago[runtime] Deny loading images that belong to a set of well known bad images.
Rodrigo Kumpera [Fri, 13 Jan 2017 19:00:05 +0000 (11:00 -0800)]
[runtime] Deny loading images that belong to a set of well known bad images.

Matching is done by assembly name and GUID. This should be enough to narrow
down the effect.

This approach is not very efficient as it waits for quite some of the loading
process to be on its way before detection. It works in the case that only a few
rare images are matched.

7 years ago[MacSDK] Fix typo in ironlangs manifest
Alexis Christoforides [Tue, 17 Jan 2017 21:33:26 +0000 (16:33 -0500)]
[MacSDK] Fix typo in ironlangs manifest

7 years ago[msvc] Update csproj files (#4254)
monojenkins [Tue, 17 Jan 2017 18:17:57 +0000 (18:17 +0000)]
[msvc] Update csproj files (#4254)

7 years ago[interpreter] fix castclass and isinst instruction
Bernhard Urban [Tue, 17 Jan 2017 16:26:32 +0000 (17:26 +0100)]
[interpreter] fix castclass and isinst instruction

`mono_object_isinst_mbyref_checked` was removed recently. however, this
code unnecessary checks cases that are covered by
`mono_object_isinst_checked` anyway.

7 years agoClean up few warnings
Marek Safar [Tue, 17 Jan 2017 12:47:19 +0000 (13:47 +0100)]
Clean up few warnings

7 years ago[tests] Use correct MONO_PATH directory for tools like MCS/ILASM
Alexander Köplinger [Tue, 17 Jan 2017 11:59:41 +0000 (12:59 +0100)]
[tests] Use correct MONO_PATH directory for tools like MCS/ILASM

We need to use the mcs/class/lib/build directory so Roslyn
works (it runs into AOT bugs in net_4_x).

This was fixed in a few other places already, fix more.

7 years ago[lldb] Embed the actual entry in the jit descriptor structure to avoid a roundtrip...
Zoltan Varga [Tue, 17 Jan 2017 09:13:38 +0000 (04:13 -0500)]
[lldb] Embed the actual entry in the jit descriptor structure to avoid a roundtrip. Add a timer for the amount of time spent in  __mono_jit_debug_register_code (). Avoid emitting info for specific trampolines for now.

7 years ago[tools] Add mdb2ppdb tool for converting a .mdb file to a portable pdb .pdb file...
Zoltan Varga [Mon, 16 Jan 2017 23:22:28 +0000 (18:22 -0500)]
[tools] Add mdb2ppdb tool for converting a .mdb file to a portable pdb .pdb file. (#4251)

7 years ago[runtime] Enable unwind_backtrace on ARM/linux (#4230)
Alexander Kyte [Mon, 16 Jan 2017 01:18:19 +0000 (20:18 -0500)]
[runtime] Enable unwind_backtrace on ARM/linux (#4230)

7 years ago[jit] Optimize constrained calls to Enum.GetHasCode () to avoid boxing. Fixes #51330...
Zoltan Varga [Mon, 16 Jan 2017 00:52:46 +0000 (19:52 -0500)]
[jit] Optimize constrained calls to Enum.GetHasCode () to avoid boxing. Fixes #51330. (#4250)

7 years ago[runtime] Remove glib usage from public headers. (#4242)
Zoltan Varga [Mon, 16 Jan 2017 00:32:48 +0000 (19:32 -0500)]
[runtime] Remove glib usage from public headers. (#4242)

7 years ago[jit] Fix a regression introduced by the addition of an assert in bf467001b10a0e4fe38...
Zoltan Varga [Sun, 15 Jan 2017 17:54:30 +0000 (12:54 -0500)]
[jit] Fix a regression introduced by the addition of an assert in bf467001b10a0e4fe389b1616ffc56009a11aaa5.

7 years ago[msvc] Update csproj files (#4249)
monojenkins [Sat, 14 Jan 2017 17:21:08 +0000 (17:21 +0000)]
[msvc] Update csproj files (#4249)

7 years agoMerge pull request #4246 from Unity-Technologies/mcs-generic-constraint-enumerator
Marek Safar [Fri, 13 Jan 2017 19:01:03 +0000 (20:01 +0100)]
Merge pull request #4246 from Unity-Technologies/mcs-generic-constraint-enumerator

[mcs] Ignore constraints on enumerator generic methods. Fixes #51506

7 years ago[mcs] Ignore constraints on enumerator generic methods. Fixes #51506
Josh Peterson [Fri, 13 Jan 2017 14:44:03 +0000 (09:44 -0500)]
[mcs] Ignore constraints on enumerator generic methods. Fixes #51506

This is similar to the change at 30f6c9933a6c0595a5d1d5cf681be39b4367446e

7 years ago[btls] Remove btls-cert-sync and integrate it into cert-sync
Alexander Köplinger [Fri, 13 Jan 2017 13:42:50 +0000 (14:42 +0100)]
[btls] Remove btls-cert-sync and integrate it into cert-sync

cert-sync already knew how to import into the BTLS cert store,
update it to always import into both stores so we don't need
the btls-cert-sync tool anymore.

7 years ago[Mono.Security] Consider _newFormat when building certificate collection in X509Store
Alexander Köplinger [Fri, 13 Jan 2017 13:38:02 +0000 (14:38 +0100)]
[Mono.Security] Consider _newFormat when building certificate collection in X509Store

It only looked at the legacy format where certificates had the *.cer
extension, the new BTLS store uses *.0 extension.

7 years ago[hybrid] Enable gsharedvt trampoline on amd64
Ludovic Henry [Thu, 12 Jan 2017 18:31:59 +0000 (16:31 -0200)]
[hybrid] Enable gsharedvt trampoline on amd64

7 years ago[hybrid] Ensure gsharedvt isn't disabled once it's been enabled
Ludovic Henry [Thu, 12 Jan 2017 18:24:06 +0000 (16:24 -0200)]
[hybrid] Ensure gsharedvt isn't disabled once it's been enabled

We would observe gsharedvt being disabled on desktop, even after passing --hybrid-aot. This would happen because we would call `mono_set_optimizations` without the `gsharedvt` optimisation enabled, thus calling `mono_set_generic_sharing_vt_supported(FALSE)` disabling again gsharedvt.

7 years ago[hybrid] Enable logging for methods not found with gsharedvt enabled
Ludovic Henry [Thu, 12 Jan 2017 18:22:59 +0000 (16:22 -0200)]
[hybrid] Enable logging for methods not found with gsharedvt enabled

7 years ago[Facades] Implementation types from CoreFX
Marek Safar [Fri, 13 Jan 2017 08:14:17 +0000 (09:14 +0100)]
[Facades] Implementation types from CoreFX

7 years agoMerge pull request #4198 from vkargov/vk-prevbb
Rodrigo Kumpera [Thu, 12 Jan 2017 23:13:49 +0000 (15:13 -0800)]
Merge pull request #4198 from vkargov/vk-prevbb

[jit] Fix the prev_bb quick lookup in mono_merge_basic_blocks().

7 years agoMerge pull request #4212 from BrzVlad/fix-ephemeron-leak
Rodrigo Kumpera [Thu, 12 Jan 2017 23:11:30 +0000 (15:11 -0800)]
Merge pull request #4212 from BrzVlad/fix-ephemeron-leak

[corlib] Avoid unbounded resizes of ephemeron arrays

7 years ago[runtime] Use mono_{object,class}_is_transparent_proxy () where possible
Aleksey Kliger [Thu, 12 Jan 2017 20:24:36 +0000 (15:24 -0500)]
[runtime] Use mono_{object,class}_is_transparent_proxy () where possible

instead of comparing the klass to mono_defaults.transparent_proxy_class directlyi.

7 years ago[runtime] Fix compile error in mono_domain_from_appdomain when DISABLE_REMOTING is...
Aleksey Kliger [Thu, 12 Jan 2017 19:48:48 +0000 (14:48 -0500)]
[runtime] Fix compile error in mono_domain_from_appdomain when DISABLE_REMOTING is defined

mono_defaults.transparent_proxy_class is #ifdef'd out when remoting is disabled.

7 years ago[runtime] Add an --enable-minimal=mdb option for disabling support for .mdb symbol...
Zoltan Varga [Thu, 12 Jan 2017 21:32:54 +0000 (16:32 -0500)]
[runtime] Add an --enable-minimal=mdb option for disabling support for .mdb symbol files.

7 years ago[mini] Initialize profiler in mini_init
Aleksey Kliger [Thu, 12 Jan 2017 18:48:15 +0000 (13:48 -0500)]
[mini] Initialize profiler in mini_init

Initializing the profiler later fixes a segfault with cooperative GC due to
thread info callbacks not being initialized.

7 years ago[ci] Fix interpreter config and simplify CI_TAGS checking in run-jenkins.sh
Alexander Köplinger [Thu, 12 Jan 2017 20:07:31 +0000 (21:07 +0100)]
[ci] Fix interpreter config and simplify CI_TAGS checking in run-jenkins.sh

The elif for the interpreter was done after the elif
that catches (almost) all cases so it was ignored.

Simplify and condense the CI_TAGS checking so it's
easier to understand and more readable.

7 years ago[configure] avoid avoid 'no symbols' warnings on darwin (2nd attempt)
Bernhard Urban [Tue, 10 Jan 2017 12:21:07 +0000 (13:21 +0100)]
[configure] avoid avoid 'no symbols' warnings on darwin (2nd attempt)

7 years ago[reflection] Coop handles for more icalls in `System.RuntimeTypeHandle` (#4220)
Aleksey Kliger (λgeek) [Thu, 12 Jan 2017 19:05:59 +0000 (14:05 -0500)]
[reflection] Coop handles for more icalls in `System.RuntimeTypeHandle` (#4220)

* [reflection] Use handles for ves_icall_RuntimeType_get_DeclaringMethod

* [reflection] Use handles for System.RuntimeType.GetInterfaces

* [reflection] Use handles for System.RuntimeType.GetInterfaceMapData

* [reflection] Use handles for System.RuntimeType.GetGenericArgumentsInternal

* [reflection] Use handles for System.RuntimeType.MakePointerType

* [reflection] Use handles for ves_icall_RuntimeType_get_DeclaringType

* [reflection] Use handles for more System.RuntimeType icalls

  - CreateInstanceInternal
  - GetConstructors_native
  - GetCorrespondingInflatedConstructor
  - GetCorrespondingInflatedMethod
  - GetEvents_native
  - GetFields_native
  - GetGenericParameterPosition
  - GetMethodsByName_native
  - GetNestedTypes_native
  - GetPacking
  - GetTypeCodeImplInternal
  - IsTypeExportedToWindowsRuntime
  - IsWindowsRuntimeObjectType
  - get_core_clr_security_level
  - make_array_type
  - make_byref_type

7 years ago[unwind] respect link register on ppc and use right dwarf register for PC depending...
Bernhard Urban [Thu, 12 Jan 2017 14:11:29 +0000 (15:11 +0100)]
[unwind] respect link register on ppc and use right dwarf register for PC depending on ELF spec version

fixes a regression introduced by 3baad19c6c34891fa04c59d9673cbbd7c91e5ac2

7 years ago[runtime] Support TransparentProxy-es in mono_domain_from_appdomain ().
Zoltan Varga [Thu, 12 Jan 2017 18:18:59 +0000 (13:18 -0500)]
[runtime] Support TransparentProxy-es in mono_domain_from_appdomain ().

7 years agoMerge pull request #3563 from lewurm/interpreter
Rodrigo Kumpera [Thu, 12 Jan 2017 17:46:05 +0000 (09:46 -0800)]
Merge pull request #3563 from lewurm/interpreter

reviving interpreter

7 years agoFixes build
Marek Safar [Thu, 12 Jan 2017 17:19:56 +0000 (18:19 +0100)]
Fixes build

7 years ago[Mono.Security] Add IVT to Xamarin dlls
Marek Safar [Thu, 12 Jan 2017 15:41:15 +0000 (16:41 +0100)]
[Mono.Security] Add IVT to Xamarin dlls

7 years agoMerge pull request #4235 from grendello/android_dns_servers
Marek Safar [Thu, 12 Jan 2017 11:56:41 +0000 (12:56 +0100)]
Merge pull request #4235 from grendello/android_dns_servers

[BCL,Android] Get DNS server addresses from Android

7 years ago[BCL,Android] Get DNS server addresses from Android
Marek Habersack [Wed, 11 Jan 2017 10:34:47 +0000 (11:34 +0100)]
[BCL,Android] Get DNS server addresses from Android

This change implements retrieving a list of DNS server addresses from Android
instead of attempting to parse `/etc/resolv.conf` which doesn't exist on
Android.
The list is retrieved by calling native function in Xamarin.Android that gets
the data from the system.

Part 2 of fix for https://bugzilla.xamarin.com/show_bug.cgi?id=48016

7 years agoBump cecil
Marek Safar [Thu, 12 Jan 2017 09:05:01 +0000 (10:05 +0100)]
Bump cecil

7 years ago[aot] Add 'profile-only' argument to only aot methods found in the profile file.
Zoltan Varga [Thu, 12 Jan 2017 08:32:06 +0000 (03:32 -0500)]
[aot] Add 'profile-only' argument to only aot methods found in the profile file.

7 years ago[aot] Add a 'verbose' argument to the aot compiler, use it to print out more informat...
Zoltan Varga [Thu, 12 Jan 2017 03:04:26 +0000 (22:04 -0500)]
[aot] Add a 'verbose' argument to the aot compiler, use it to print out more information on profile loading errors.

7 years ago[aot] Add support for loading multiple profile files.
Zoltan Varga [Thu, 12 Jan 2017 02:23:16 +0000 (21:23 -0500)]
[aot] Add support for loading multiple profile files.

7 years ago[lldb] Avoid a crash in mono_lldb_remove_method () if lldb is not enabled.
Zoltan Varga [Wed, 11 Jan 2017 22:56:11 +0000 (17:56 -0500)]
[lldb] Avoid a crash in mono_lldb_remove_method () if lldb is not enabled.

7 years ago[ilasm] Support 'nooptimization' attribute.
Jon Purdy [Tue, 10 Jan 2017 22:30:14 +0000 (14:30 -0800)]
[ilasm] Support 'nooptimization' attribute.

7 years ago[msvc] Add lldb.c to the vs project.
Zoltan Varga [Wed, 11 Jan 2017 21:50:12 +0000 (16:50 -0500)]
[msvc] Add lldb.c to the vs project.

7 years ago[lldb] Use mono_unwind_get_cie_program () instead of mono_arch_get_cie_program (...
Zoltan Varga [Wed, 11 Jan 2017 21:17:45 +0000 (16:17 -0500)]
[lldb] Use mono_unwind_get_cie_program () instead of mono_arch_get_cie_program () which might not be available on all platforms.

7 years ago[BTLS]: Fix callback method signatures.
Martin Baulig [Wed, 16 Nov 2016 15:49:36 +0000 (16:49 +0100)]
[BTLS]: Fix callback method signatures.