mono.git
9 years agoMerge pull request #1635 from alexrp/core-clr-properties
Alex Rønne Petersen [Tue, 17 Mar 2015 22:01:50 +0000 (23:01 +0100)]
Merge pull request #1635 from alexrp/core-clr-properties

Implement CoreCLR security properties on reflection info types.

9 years ago[runtime] Revert part of 2e3ba21e80f3edd03c7c2050c9ba921298b4c176.
Zoltan Varga [Tue, 17 Mar 2015 21:20:03 +0000 (17:20 -0400)]
[runtime] Revert part of 2e3ba21e80f3edd03c7c2050c9ba921298b4c176.

9 years ago[xlinq] add test from bug #18171 (partly).
Atsushi Eno [Tue, 17 Mar 2015 20:16:25 +0000 (04:16 +0800)]
[xlinq] add test from bug #18171 (partly).

9 years ago[threadpool] Add licensing header
Ludovic Henry [Tue, 17 Mar 2015 19:16:44 +0000 (19:16 +0000)]
[threadpool] Add licensing header

9 years ago[threadpool] Integrate the microsoft ThreadPool into it's own System.Threading.Micros...
Ludovic Henry [Fri, 6 Feb 2015 23:50:11 +0000 (18:50 -0500)]
[threadpool] Integrate the microsoft ThreadPool into it's own System.Threading.Microsoft namespace

This will let us have both the Mono and the Microsoft ThreadPool at the same time.
To switch to the Microsoft one, set the MONO_THREADPOOL environment variable to "microsoft". It will default to the Mono one.

Support by the runtime is also implemented.

9 years ago[runtime] Move random generator code out of icall, to utils so it can be used by...
Ludovic Henry [Tue, 17 Mar 2015 11:59:04 +0000 (11:59 +0000)]
[runtime] Move random generator code out of icall, to utils so it can be used by the runtime

9 years ago[runtime] Add CPU usage utility function
Ludovic Henry [Fri, 27 Feb 2015 20:34:23 +0000 (15:34 -0500)]
[runtime] Add CPU usage utility function

9 years ago[jit] Avoid disabling direct calls to icalls on arm64+llvm.
Zoltan Varga [Tue, 17 Mar 2015 18:20:19 +0000 (14:20 -0400)]
[jit] Avoid disabling direct calls to icalls on arm64+llvm.

9 years ago[corlib] Bump corlib version for 8d097349b3289b35c6052d1a8612e33de2a7bbbf (icall...
Marek Safar [Tue, 17 Mar 2015 18:16:34 +0000 (19:16 +0100)]
[corlib] Bump corlib version for 8d097349b3289b35c6052d1a8612e33de2a7bbbf (icall added)

9 years ago[System.Runtime.Remoting] Update internal TypeFilter levels
Marek Safar [Tue, 17 Mar 2015 18:14:12 +0000 (19:14 +0100)]
[System.Runtime.Remoting] Update internal TypeFilter levels

9 years ago[genproj] Re-generated the class library projects.
João Matos [Tue, 17 Mar 2015 18:15:40 +0000 (18:15 +0000)]
[genproj] Re-generated the class library projects.

9 years ago[genproj] Remove System.Xml pre-processing file as it's not needed anymore.
João Matos [Tue, 17 Mar 2015 18:11:21 +0000 (18:11 +0000)]
[genproj] Remove System.Xml pre-processing file as it's not needed anymore.

We do not rely on jay for this anymore since the switch of System.Xml to reference sources.

9 years ago[genproj] Ignore temporary project generation inputs.
João Matos [Tue, 17 Mar 2015 12:23:55 +0000 (12:23 +0000)]
[genproj] Ignore temporary project generation inputs.

9 years ago[genproj] Added support for mcs "/-getresourcestrings" switch.
João Matos [Tue, 17 Mar 2015 12:23:28 +0000 (12:23 +0000)]
[genproj] Added support for mcs "/-getresourcestrings" switch.

9 years ago[genproj] Remove non .NET 4.5 solutions from being generated.
João Matos [Tue, 17 Mar 2015 12:22:37 +0000 (12:22 +0000)]
[genproj] Remove non .NET 4.5 solutions from being generated.

9 years ago[corlib] Fixes remoting response message arguments assignment
Marek Safar [Tue, 17 Mar 2015 16:42:11 +0000 (17:42 +0100)]
[corlib] Fixes remoting response message arguments assignment

9 years ago[corlib] Keep only one remoting MessageDictionary, it's special cased in binary seria...
Marek Safar [Tue, 17 Mar 2015 16:02:06 +0000 (17:02 +0100)]
[corlib] Keep only one remoting MessageDictionary, it's special cased in binary serialization

9 years ago[corlib] Implement security properties on FieldInfo/MethodInfo.
Alex Rønne Petersen [Tue, 17 Mar 2015 15:13:44 +0000 (16:13 +0100)]
[corlib] Implement security properties on FieldInfo/MethodInfo.

9 years ago[coreclr] Add mono_security_core_clr_field_level () function.
Alex Rønne Petersen [Tue, 17 Mar 2015 14:25:30 +0000 (15:25 +0100)]
[coreclr] Add mono_security_core_clr_field_level () function.

9 years ago[System] Fixed SafeSocketHandle concurrency problem.
Marcos Henrich [Tue, 17 Mar 2015 12:49:11 +0000 (12:49 +0000)]
[System] Fixed SafeSocketHandle concurrency problem.
When ReleaseHandle was called by RegisterForBlockingSyscall's DangerousRelease the current thread would be in blocking_threads but there would be no blocking system call to interrupt.

9 years ago[runtime] Assert that thread_resume returns KERN_SUCCESS.
Marcos Henrich [Tue, 17 Mar 2015 11:20:36 +0000 (11:20 +0000)]
[runtime] Assert that thread_resume returns KERN_SUCCESS.

9 years ago[runtime] Fixed thread_abort_safely not interrupting accept.
Marcos Henrich [Tue, 17 Mar 2015 11:05:21 +0000 (11:05 +0000)]
[runtime] Fixed thread_abort_safely not interrupting accept.
For some reason accept can only be interrupted by thread_abort.
We do not want to use thread_abort by default because it may abort non-atomic operations at an arbitrary point.
The problem was fixed by calling thread_abort_safely, and make sure the target thread was interrupted by calling thread_abort afterwards.
In this change thread_abort is only called if thread_abort_safely returns KERN_SUCCESS, which *should* mean that the target thread has already left the kernel code by the time thread_abort is called.

9 years agos390x-codegen.h : Fix instruction definition and add instruction format variant
Neale Ferguson [Tue, 17 Mar 2015 14:35:21 +0000 (10:35 -0400)]
s390x-codegen.h : Fix instruction definition and add instruction format variant
mini-s390x.h : Enable profile coverage
suport-s390x.h : Add processor facility definitions

9 years ago[system.date] Fix DefaultValue expression serialization
Marek Safar [Tue, 17 Mar 2015 13:03:39 +0000 (14:03 +0100)]
[system.date] Fix DefaultValue expression serialization

9 years ago[xlinq] add test from bug #14856.
Atsushi Eno [Tue, 17 Mar 2015 10:56:10 +0000 (18:56 +0800)]
[xlinq] add test from bug #14856.

9 years ago[xml] add test from bug #2917.
Atsushi Eno [Tue, 17 Mar 2015 10:55:34 +0000 (18:55 +0800)]
[xml] add test from bug #2917.

9 years ago[corlib] Always pass ProxyCheckCast check
Marek Safar [Tue, 17 Mar 2015 08:37:01 +0000 (09:37 +0100)]
[corlib] Always pass ProxyCheckCast check

9 years ago[corlib] Add missing public type
Marek Safar [Tue, 17 Mar 2015 08:36:39 +0000 (09:36 +0100)]
[corlib] Add missing public type

9 years ago[corlib] Serialization from reference sources
Marek Safar [Tue, 17 Mar 2015 07:03:08 +0000 (08:03 +0100)]
[corlib] Serialization from reference sources

9 years ago[jit] Add exception checks after direct calls to icalls by inlining the wrapper.
Zoltan Varga [Tue, 17 Mar 2015 06:32:06 +0000 (02:32 -0400)]
[jit] Add exception checks after direct calls to icalls by inlining the wrapper.

9 years ago[jit] Disable direct icalls for now to fix the build.
Zoltan Varga [Tue, 17 Mar 2015 04:55:02 +0000 (00:55 -0400)]
[jit] Disable direct icalls for now to fix the build.

9 years ago[jit] Split the CEE_CALLI conv into a separate switch case to simplify the logic...
Zoltan Varga [Tue, 17 Mar 2015 04:54:15 +0000 (00:54 -0400)]
[jit] Split the CEE_CALLI conv into a separate switch case to simplify the logic in the CEE_CALL/CEE_CALLVIRT case.

9 years ago[amd64] Fix aot support in throw_pending_exception ().
Zoltan Varga [Tue, 17 Mar 2015 04:05:46 +0000 (00:05 -0400)]
[amd64] Fix aot support in throw_pending_exception ().

9 years ago[runtime] Allocate objects outside the lock in mono_string_is_interned_lookup ().
Zoltan Varga [Tue, 17 Mar 2015 02:13:47 +0000 (22:13 -0400)]
[runtime] Allocate objects outside the lock in mono_string_is_interned_lookup ().

9 years agoMerge pull request #1633 from BrzVlad/fix-w32-pinvoke
Zoltan Varga [Tue, 17 Mar 2015 01:34:41 +0000 (21:34 -0400)]
Merge pull request #1633 from BrzVlad/fix-w32-pinvoke

[x86] Handle stack pop done by native stdcalls.

9 years ago[jit] Add support for directly calling normal icalls. Enable it for a few perf-sensit...
Zoltan Varga [Tue, 17 Mar 2015 00:34:46 +0000 (20:34 -0400)]
[jit] Add support for directly calling normal icalls. Enable it for a few perf-sensitive classes like Math.

9 years ago[x86] Handle stack pop done by native stdcalls.
Vlad Brezae [Sat, 14 Mar 2015 02:31:34 +0000 (19:31 -0700)]
[x86] Handle stack pop done by native stdcalls.

The problem was caused with the introduction of the pushless backend. We have to compensate for the arguments being popped by native stdcall callees, to keep param_area from shrinking. Fixes #27597

9 years ago[aot] Enable direct calls to icalls in aot mode, disable them when the 'direct-calls...
Zoltan Varga [Mon, 16 Mar 2015 21:49:01 +0000 (17:49 -0400)]
[aot] Enable direct calls to icalls in aot mode, disable them when the 'direct-calls' aot option is used.

9 years ago[aot] Remove obsolete 'iphone-abi' option.
Zoltan Varga [Mon, 16 Mar 2015 21:24:40 +0000 (17:24 -0400)]
[aot] Remove obsolete 'iphone-abi' option.

9 years ago[io-layer] Avoid the usage of atexit (), clean up handles normally.
Zoltan Varga [Mon, 16 Mar 2015 20:23:00 +0000 (16:23 -0400)]
[io-layer] Avoid the usage of atexit (), clean up handles normally.

9 years ago[system] Update wrong test
Marek Safar [Mon, 16 Mar 2015 19:09:19 +0000 (20:09 +0100)]
[system] Update wrong test

9 years ago[mini] Fixed the build.
João Matos [Mon, 16 Mar 2015 14:57:38 +0000 (14:57 +0000)]
[mini] Fixed the build.

Missed this one on https://github.com/mono/mono/commit/86155e72da0aa0cc1e546dd2dd5acee0db398c38.

9 years ago[runtime] Fixed thread async suspend on Windows.
João Matos [Mon, 16 Mar 2015 13:54:43 +0000 (13:54 +0000)]
[runtime] Fixed thread async suspend on Windows.

Move the ResumeThread () calls out of the assert and check for 0 (which means that the thread was resumed) instead of using the Mach-specific KERN_SUCCESS on Windows.

Fixes the Windows/MSVC build.

Related to https://github.com/mono/mono/commit/296347f.

9 years ago[runtime] Added missing function `mono_threads_core_interrupt` on Windows.
João Matos [Mon, 16 Mar 2015 13:53:01 +0000 (13:53 +0000)]
[runtime] Added missing function `mono_threads_core_interrupt` on Windows.

9 years ago[msvc] Renamed ResumeThread since it conflicts with a Windows function.
João Matos [Mon, 16 Mar 2015 13:50:38 +0000 (13:50 +0000)]
[msvc] Renamed ResumeThread since it conflicts with a Windows function.

9 years ago[corlib] Attribute from reference sources. Fixes #27982 and similar
Marek Safar [Mon, 16 Mar 2015 10:01:37 +0000 (11:01 +0100)]
[corlib] Attribute from reference sources. Fixes #27982 and similar

9 years ago[aot] Bump aot file format version.
Zoltan Varga [Mon, 16 Mar 2015 05:12:36 +0000 (01:12 -0400)]
[aot] Bump aot file format version.

9 years ago[aot] Fix mono_aot_method_hash () to avoid depending on the name of the type argument...
Zoltan Varga [Mon, 16 Mar 2015 05:06:48 +0000 (01:06 -0400)]
[aot] Fix mono_aot_method_hash () to avoid depending on the name of the type arguments used to inflate classes.

9 years agoFix the cross compiler build.
Zoltan Varga [Mon, 16 Mar 2015 03:04:31 +0000 (23:04 -0400)]
Fix the cross compiler build.

9 years agoBump referencesource to pick up 7ce7271612320b265e3a4a42d96a779b218a9dce.
Zoltan Varga [Mon, 16 Mar 2015 02:46:54 +0000 (22:46 -0400)]
Bump referencesource to pick up 7ce7271612320b265e3a4a42d96a779b218a9dce.

9 years agoMerge pull request #1617 from keneanung/OdbcCommandExceptionOnNoData
Miguel de Icaza [Sun, 15 Mar 2015 14:54:26 +0000 (10:54 -0400)]
Merge pull request #1617 from keneanung/OdbcCommandExceptionOnNoData

Add NoData as valid return state for Statements with params

9 years agoMerge pull request #1627 from mono/tooltask-fixes
Miguel de Icaza [Sun, 15 Mar 2015 14:52:07 +0000 (10:52 -0400)]
Merge pull request #1627 from mono/tooltask-fixes

[Microsoft.Build.Utilities] Make properties in ToolTask available in 4.0 xbuild

9 years agoMerge pull request #1628 from akoeplinger/resxresourcereader-order
João Matos [Sun, 15 Mar 2015 09:16:45 +0000 (09:16 +0000)]
Merge pull request #1628 from akoeplinger/resxresourcereader-order

[WinForms] Make ResXResourceReader enumerator return values in same order as resx

9 years ago[jit] Add support for char/boolean to mini_type_get_underlying_type ().
Zoltan Varga [Sun, 15 Mar 2015 07:08:45 +0000 (03:08 -0400)]
[jit] Add support for char/boolean to mini_type_get_underlying_type ().

9 years ago[aot] Rename the find_extra_method... functions to find_aot_method...
Zoltan Varga [Sun, 15 Mar 2015 06:38:55 +0000 (02:38 -0400)]
[aot] Rename the find_extra_method... functions to find_aot_method...

9 years ago[jit] Fix the detection of whenever we are compiling a gsharedvt method in the presen...
Zoltan Varga [Sun, 15 Mar 2015 06:17:40 +0000 (02:17 -0400)]
[jit] Fix the detection of whenever we are compiling a gsharedvt method in the presence of partial shared methods.

9 years ago[runtime] Remove ldscript support, its no longer needed with explicit visibility...
Zoltan Varga [Sun, 15 Mar 2015 02:08:03 +0000 (22:08 -0400)]
[runtime] Remove ldscript support, its no longer needed with explicit visibility declarations.

9 years ago[WinForms] Make ResXResourceReader enumerator return values in same order as resx
Alexander Köplinger [Sun, 15 Mar 2015 01:19:48 +0000 (02:19 +0100)]
[WinForms] Make ResXResourceReader enumerator return values in same order as resx

This fixes an issue when building dotnet/corefx and all the SR.cs files are modified
because Mono used a HashTable internally in ResXResourceReader and it returned the
elements in a different order than MS.NET.

Even though this isn't explicitly mentioned in the docs, the MS.NET implementation returns
the elements in the same order as they appear in the resx and we should do the same.

9 years ago[jit] Set the names of the gparams used during generic sharing so it includes the...
Zoltan Varga [Sat, 14 Mar 2015 20:16:46 +0000 (16:16 -0400)]
[jit] Set the names of the gparams used during generic sharing so it includes the type they are constrained to.

9 years agoFix the build.
Zoltan Varga [Sat, 14 Mar 2015 19:12:49 +0000 (15:12 -0400)]
Fix the build.

9 years ago[Microsoft.Build.Utilities] Make properties in ToolTask available in 4.0 xbuild
Alexander Köplinger [Sat, 14 Mar 2015 18:10:06 +0000 (19:10 +0100)]
[Microsoft.Build.Utilities] Make properties in ToolTask available in 4.0 xbuild

The properties were introduced with MSBuild 4.0 (e.g. https://msdn.microsoft.com/en-us/library/microsoft.build.utilities.tooltask.logstandarderroraserror(v=vs.100).aspx) and shouldn't be inside a XBUILD_12 ifdef.

9 years agoFix the aot compiler.
Zoltan Varga [Sat, 14 Mar 2015 06:17:57 +0000 (02:17 -0400)]
Fix the aot compiler.

9 years ago[threading] Fix signal registration on posix.
Rodrigo Kumpera [Fri, 13 Mar 2015 19:35:47 +0000 (12:35 -0700)]
[threading] Fix signal registration on posix.

9 years agoFix spelling.
Rolf Bjarne Kvinge [Fri, 13 Mar 2015 17:01:45 +0000 (18:01 +0100)]
Fix spelling.

9 years ago[aot] Wrap the commands we pass to Windows's system() in double quotes.
João Matos [Fri, 13 Mar 2015 17:14:40 +0000 (17:14 +0000)]
[aot] Wrap the commands we pass to Windows's system() in double quotes.

We need an extra set of quotes around the whole command to properly handle commands
with spaces since internally the command is called through "cmd /c.

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

9 years ago[aot] Escape the command executables with quotes to deal properly with spaces in...
João Matos [Fri, 13 Mar 2015 17:10:54 +0000 (17:10 +0000)]
[aot] Escape the command executables with quotes to deal properly with spaces in paths.

9 years ago[aot] Ensure the LLVM tools path ends with a directory separator appropriate to the...
João Matos [Fri, 13 Mar 2015 17:07:37 +0000 (17:07 +0000)]
[aot] Ensure the LLVM tools path ends with a directory separator appropriate to the system.

9 years ago[system] Make httplistener to accept case insensitive protocols. Fixes #26858
Marek Safar [Fri, 13 Mar 2015 16:39:10 +0000 (17:39 +0100)]
[system] Make httplistener to accept case insensitive protocols. Fixes #26858

9 years ago[mono-api-html] Render generic parameter constraints.
Rolf Bjarne Kvinge [Fri, 13 Mar 2015 15:43:55 +0000 (16:43 +0100)]
[mono-api-html] Render generic parameter constraints.

Makes changed constraints show up in diffs.

9 years ago[System] Replaced static constructor with field initialisation.
Marcos Henrich [Fri, 13 Mar 2015 12:39:26 +0000 (12:39 +0000)]
[System] Replaced static constructor with field initialisation.

9 years agoMerge pull request #1606 from alexanderkyte/debug-finalizers
João Matos [Fri, 13 Mar 2015 09:42:22 +0000 (09:42 +0000)]
Merge pull request #1606 from alexanderkyte/debug-finalizers

[Runtime] Added logging around finalizers

9 years agoMerge pull request #1618 from alexanderkyte/remoting-fix
João Matos [Fri, 13 Mar 2015 09:39:48 +0000 (09:39 +0000)]
Merge pull request #1618 from alexanderkyte/remoting-fix

[Runtime] Fixed remoting bug where too specific a type reflected.

9 years ago[jit] Use mini_get_underlying_type () in a few places in the amd64 backend.
Zoltan Varga [Fri, 13 Mar 2015 06:41:34 +0000 (02:41 -0400)]
[jit] Use mini_get_underlying_type () in a few places in the amd64 backend.

9 years ago[jit] Finish support for valuetype based sharing in JIT mode, not enabled yet.
Zoltan Varga [Fri, 13 Mar 2015 05:27:54 +0000 (01:27 -0400)]
[jit] Finish support for valuetype based sharing in JIT mode, not enabled yet.

9 years ago[jit] Add a new MONO_RGCTX_INFO_ELEMENT_KLASS info type and use it instead of MONO_RG...
Zoltan Varga [Thu, 12 Mar 2015 23:29:45 +0000 (19:29 -0400)]
[jit] Add a new MONO_RGCTX_INFO_ELEMENT_KLASS info type and use it instead of MONO_RGCTX_INFO_KLASS on klass->element_class, the latter doesn't work with valuetype sharing.

9 years ago[metadata] Handle denormalized value type encoding of builtins.
Rodrigo Kumpera [Mon, 2 Feb 2015 16:04:37 +0000 (11:04 -0500)]
[metadata] Handle denormalized value type encoding of builtins.

All primitive types have a short encoding format that avoid using
a typeref token.

It's possible to encode them in another, longer, form with ELEMENT_TYPE_VALUETYPE + a typeref token.

Up to now, this was never seen in the wild so we never supported it.

This patch allows long form encoding of primitives.

9 years ago[threading] Fix a race condition between managed suspend/abort and GC STW.
Rodrigo Kumpera [Mon, 2 Feb 2015 16:04:37 +0000 (11:04 -0500)]
[threading] Fix a race condition between managed suspend/abort and GC STW.

STW and managed suspend share a lock to ensure there is only one active suspend initiator.

This originally caused a problem in the managed suspend path as it could be async suspended while it was
in the middle of the suspend protocol (check if top of stack is managed, install abort handlers, etc).

This was worked around by putting that inside a suspend critical section. The resulting code was horrible
as suspend boundaries became unstructured (yeah, pretty stupid idea on my end). Not only that but it had
a race condition.

If a thread doing managed suspend raced with a STW and lost, it would block on the global suspend lock to
finish. That thread would be blocked inside a critical section - the single thing you must not do inside one.

This could be reproduced by stressing mono/tests/sgen-new-threads-dont-join-stw.

The solution is to execute the managed suspend sequence in the same fashion as of a STW. IOW, take locks,
suspend, do stuff, maybe resume and drop locks.

The critical part is the "do stuff" one, which is different for abort and suspend, but everything else
is the same. So we wrap that into a callback and put the common parts in mono-threads. This gives
us structured locking and suspend boundaries.

This won't cause a GC to take longer to init as the critical section would block the  STW from progressing
anyways.

9 years ago[runtime] Fix warnings.
Mark Probst [Thu, 12 Mar 2015 22:40:17 +0000 (15:40 -0700)]
[runtime] Fix warnings.

9 years ago[jit] Throw the proper exception on integer overflow from div/rem if MONO_ARCH_NEED_D...
Zoltan Varga [Thu, 12 Mar 2015 22:19:40 +0000 (18:19 -0400)]
[jit] Throw the proper exception on integer overflow from div/rem if MONO_ARCH_NEED_DIV_CHECK is defined.

9 years ago[jit] Add another test for gsharedvt+vtype byref argument passing.
Zoltan Varga [Thu, 12 Mar 2015 20:54:49 +0000 (16:54 -0400)]
[jit] Add another test for gsharedvt+vtype byref argument passing.

9 years agoAdd documentation information about IRI parsing
Miguel de Icaza [Thu, 12 Mar 2015 20:18:45 +0000 (16:18 -0400)]
Add documentation information about IRI parsing

9 years ago[corlib] Added exception to fail tests on non aborted system calls.
Marcos Henrich [Thu, 12 Mar 2015 18:08:39 +0000 (18:08 +0000)]
[corlib] Added exception to fail tests on non aborted system calls.
While running tests if a socket is closed while blocking system calls are pending an exception is thrown.
A socket should not be closed when a blocking system call is pending.
The purpose of the exception is to inform us when AbortRegisteredThreads is not working.

9 years ago[runtime] Check that thread_suspend returns KERN_SUCCESS.
Marcos Henrich [Thu, 12 Mar 2015 17:48:05 +0000 (17:48 +0000)]
[runtime] Check that thread_suspend returns KERN_SUCCESS.
mono_threads_core_abort_syscall no longer calls thread_abort_safely in case thread_suspend returns errors.

9 years ago[runtime] Updated Socket_to_SOCKET to use SafeSocketHandle.
Marcos Henrich [Thu, 12 Mar 2015 17:43:46 +0000 (17:43 +0000)]
[runtime] Updated Socket_to_SOCKET to use SafeSocketHandle.
The type of field of Socket.socket was changed from IntPtr to SafeSocketHandle.

9 years ago[aot] Better report errors when loading methods.
Rodrigo Kumpera [Mon, 2 Feb 2015 16:04:37 +0000 (11:04 -0500)]
[aot] Better report errors when loading methods.

9 years ago[mono-error] When fetching the error message for native usage, include assembly,...
Rodrigo Kumpera [Mon, 2 Feb 2015 16:04:37 +0000 (11:04 -0500)]
[mono-error] When fetching the error message for native usage, include assembly, type and member fields after the message.

9 years ago[eglib] Fixed file being created without read/write permission on Windows.
João Matos [Thu, 12 Mar 2015 16:38:17 +0000 (16:38 +0000)]
[eglib] Fixed file being created without read/write permission on Windows.

This bug manifested itself as files being written to disk with 0 bytes.

Fixes the AOT compiler on Windows not working properly.

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

9 years ago[mcs] Don't crash after reporting missing type in type arguments of generic method...
Marek Safar [Thu, 12 Mar 2015 16:23:32 +0000 (17:23 +0100)]
[mcs] Don't crash after reporting missing type in type arguments of generic method run in probing mode. Fixes #27737

9 years ago[corlib] TimeZoneInfo.TryGetTransitionOffset overflow checks.
Marcos Henrich [Thu, 12 Mar 2015 13:11:36 +0000 (13:11 +0000)]
[corlib] TimeZoneInfo.TryGetTransitionOffset overflow checks.

9 years ago[system] Fixes mobile build
Marek Safar [Thu, 12 Mar 2015 12:24:14 +0000 (13:24 +0100)]
[system] Fixes mobile build

9 years ago[corlib] Fixed DateTime overflow check in TimeZoneInfo.
Marcos Henrich [Thu, 12 Mar 2015 08:57:07 +0000 (08:57 +0000)]
[corlib] Fixed DateTime overflow check in TimeZoneInfo.

9 years agoRevert "[runtime] Fix mono_class_instance_size () to work with dynamically created...
Zoltan Varga [Thu, 12 Mar 2015 08:54:03 +0000 (04:54 -0400)]
Revert "[runtime] Fix mono_class_instance_size () to work with dynamically created types."

This reverts commit 501f0aa6459d1bdbc65680b30c89ba4c7b79fe55.

Revert this as it breaks some corlib tests.

9 years ago[runtime] Fix mono_class_instance_size () to work with dynamically created types.
Zoltan Varga [Thu, 12 Mar 2015 01:39:17 +0000 (21:39 -0400)]
[runtime] Fix mono_class_instance_size () to work with dynamically created types.

9 years ago[runtime] Remove unused `ves_icall_type_is_subtype_of()`.
Mark Probst [Wed, 11 Mar 2015 23:01:39 +0000 (16:01 -0700)]
[runtime] Remove unused `ves_icall_type_is_subtype_of()`.

9 years ago[jit] Enable the gsharedvt testcase which now works.
Zoltan Varga [Wed, 11 Mar 2015 22:47:38 +0000 (18:47 -0400)]
[jit] Enable the gsharedvt testcase which now works.

9 years agoMerge pull request #1621 from schani/fix-warnings
Mark Probst [Wed, 11 Mar 2015 20:37:31 +0000 (13:37 -0700)]
Merge pull request #1621 from schani/fix-warnings

[runtime] Fix warnings.

9 years ago[runtime] Fix warnings.
Mark Probst [Sun, 8 Mar 2015 00:52:22 +0000 (16:52 -0800)]
[runtime] Fix warnings.

9 years ago[io-layer] When checking if a file is a program check both read and execute permissio...
Rodrigo Kumpera [Mon, 2 Feb 2015 16:04:37 +0000 (11:04 -0500)]
[io-layer] When checking if a file is a program check both read and execute permissions. Fixes #27565

The original behavior of only checking for read permission broke sudo on OSX which only have the execute permission set.

9 years ago[threading] Split unwind state into sync and async.
Rodrigo Kumpera [Mon, 2 Feb 2015 16:04:37 +0000 (11:04 -0500)]
[threading] Split unwind state into sync and async.

Having a single unwind state means writes to it must be synchronized between sync and async suspend. We can't
have the state be broken as it could lead to bad unwinding or GC marking.

The original solution was to have an additional state in the self suspend path that signals it's writing to the
thread state and thus any async suspend must give up and let it finish. This ended up been overly complicated
as this requires two additional states instead.

By having a pair of unwind states both can write concurrently without the fear of clashing. This makes fetching the state
a little bit trickier but worth the trouble.

The simplified design has a much smaller state space, which is easier to reason about.

9 years ago[threading] Change request async suspend to return 3 states instead of one to account...
Rodrigo Kumpera [Mon, 2 Feb 2015 16:04:37 +0000 (11:04 -0500)]
[threading] Change request async suspend to return 3 states instead of one to account for async racing to the middle of a self suspend.

When begin async suspend lands in STATE_SUSPEND_IN_PROGRESS, the initiator don't need to perform an async suspend, it just needs to wait.

If a self suspend is promoted to an async suspend, it must be added to the pending ops set. This ensure that it will be waited otherwise
the suspend initiator might witness an unfinished self suspend and assert when fetching the thread state.

The alternative would be to change finish async suspend to account for the possibility of witnessing STATE_SUSPEND_PROMOTED_TO_ASYNC.

Solving this way requires less async suspends and doesn't increase the valid state space.