Jonathan Pryor [Sat, 21 Mar 2015 12:23:22 +0000 (08:23 -0400)]
Merge pull request #1641 from joelmartinez/docs-monodoc-mdoc-patches
monodoc/mdoc patches
Zoltan Varga [Sat, 21 Mar 2015 09:18:04 +0000 (05:18 -0400)]
[jit] Enable partial sharing only in full-aot mode.
Zoltan Varga [Sat, 21 Mar 2015 01:38:33 +0000 (21:38 -0400)]
[jit] Unify the handling of the type parameters in generic sharing. Instead of using the generic parameters of the generic definition for reference types, use a generated type parameter with gshared_constraint set to MONO_TYPE_OBJECT.
Sebastien Pouliot [Fri, 20 Mar 2015 19:25:52 +0000 (15:25 -0400)]
[tests] Some of the new decimal tests (ported from MS tests) do not work on every culture, this set one that works for them
Marek Safar [Fri, 20 Mar 2015 16:38:19 +0000 (17:38 +0100)]
[corlib] Remove unmanaged type IsVisible path. Fixes #28235
Marek Safar [Fri, 20 Mar 2015 13:50:08 +0000 (14:50 +0100)]
[corlib] Enable legacy LCID api
Marek Safar [Fri, 20 Mar 2015 13:36:05 +0000 (14:36 +0100)]
[mcs] Test update
Marek Safar [Fri, 20 Mar 2015 13:31:01 +0000 (14:31 +0100)]
Revert "Fix more System.Web tests."
This reverts commit
7fa35b58ca65cea019147eadd128d125f416ede4.
Marek Safar [Fri, 20 Mar 2015 12:51:00 +0000 (13:51 +0100)]
[corlib] Pointer from reference sources
João Matos [Fri, 20 Mar 2015 13:02:26 +0000 (13:02 +0000)]
[runtime] Check for MSVC instead of non-GCC in mono_threads_core_set_name.
This is just a small cleanup and will also work for Clang since it defines _MSC_VER in MSVC-compatible mode.
Marek Safar [Fri, 20 Mar 2015 11:24:22 +0000 (12:24 +0100)]
[corlib] More simple System.Reflection types from reference sources
Zoltan Varga [Fri, 20 Mar 2015 11:04:37 +0000 (07:04 -0400)]
Fix more System.Web tests.
João Matos [Fri, 20 Mar 2015 11:02:52 +0000 (11:02 +0000)]
Merge pull request #1647 from svedm/master
Fix duplicate sub-expressions
Svetoslav Karasev [Fri, 20 Mar 2015 10:56:59 +0000 (15:56 +0500)]
Fix duplicate sub-expressions
Marek Safar [Fri, 20 Mar 2015 10:20:58 +0000 (11:20 +0100)]
[corlib] Add new test
Marek Safar [Fri, 20 Mar 2015 09:39:58 +0000 (10:39 +0100)]
[corlib] MemberInfoSerializationHolder from reference sources. Fixes generics serialization and other issues
Marek Safar [Fri, 20 Mar 2015 09:17:55 +0000 (10:17 +0100)]
[system.web] Update failing test
Zoltan Varga [Fri, 20 Mar 2015 03:51:21 +0000 (23:51 -0400)]
Merge pull request #1645 from myrup/master
Fixed TimeZoneInfo.Local on windows xp
Zoltan Varga [Fri, 20 Mar 2015 03:25:45 +0000 (23:25 -0400)]
[aot] Fix support for direct icalls in llvm mode.
Zoltan Varga [Fri, 20 Mar 2015 02:45:49 +0000 (22:45 -0400)]
[jit] Use unique castclass caches in all cases. Fixes #27787.
Zoltan Varga [Fri, 20 Mar 2015 02:44:43 +0000 (22:44 -0400)]
[runtime] Fix the isinst_with_cache wrapper on 64 bit platforms.
myrup [Thu, 19 Mar 2015 23:39:19 +0000 (00:39 +0100)]
Fixed TimeZoneInfo.Local on windows xp
Fall back to “StandardName” subkey when “TimeZoneKeyName” isn’t present.
Zoltan Varga [Thu, 19 Mar 2015 23:33:26 +0000 (19:33 -0400)]
[sdb] Add support for TypedReferences. Fixes #28181.
Zoltan Varga [Thu, 19 Mar 2015 22:59:52 +0000 (18:59 -0400)]
[corlib] Implement FieldInfo.SetValueDirect ().
Marek Safar [Thu, 19 Mar 2015 21:42:08 +0000 (22:42 +0100)]
[corlib] Return top-level parameter custom attributes when no base methods exists. Fixes #28184
Zoltan Varga [Thu, 19 Mar 2015 21:35:37 +0000 (17:35 -0400)]
[io-layer] Avoid closing std file descriptors on shutdown. Fixes #28098.
Marek Safar [Thu, 19 Mar 2015 20:59:31 +0000 (21:59 +0100)]
[corlib] TypedReference from reference sources
Marek Safar [Thu, 19 Mar 2015 20:45:42 +0000 (21:45 +0100)]
Merge pull request #1642 from vestild/modulebuilder-definetype
[System.Reflection.Emit] fix typo in ModuleBuilder.DefineType
Vlad Zaitsev [Thu, 19 Mar 2015 19:37:51 +0000 (00:37 +0500)]
[System.Reflection.Emit] fix typo in ModuleBuilder.DefineType
João Matos [Thu, 19 Mar 2015 17:36:05 +0000 (17:36 +0000)]
[mini] Small code cleanup, check for iOS host instead of Apple/ARM.
João Matos [Thu, 19 Mar 2015 17:21:45 +0000 (17:21 +0000)]
[windows] Fixed thread async suspend assert.
This should be asserting for 1 instead of 0, this way we actually assert that the thread was resumed.
João Matos [Wed, 18 Mar 2015 13:40:05 +0000 (13:40 +0000)]
[windows] Remove some cruft used by the old Windows installer.
Marek Safar [Thu, 19 Mar 2015 15:26:27 +0000 (16:26 +0100)]
[runtime] Remove unused icall
Joel Martinez [Wed, 18 Mar 2015 20:32:14 +0000 (16:32 -0400)]
[monodoc] Added `PlatformDocApi` to the list of valid related sections.
The use case here is when you are documenting a managed wrapper on top of a native platform API. This related link can be used to link to the original platform documentation for that member. This lets the reader look up the semantics of the native call without you having to duplicate the documentation in the managed reference docs; leaving you to focus your energies on documenting any unique considerations when calling this managed API.
Example:
```xml
<related type="PlatformDocAPI" href="https://msdn.microsoft.com/en-us/library/system.console.writeline">Microsoft documentation for <c>System.Console.WriteLine</c></related>
```
Joel Martinez [Wed, 18 Mar 2015 20:23:37 +0000 (16:23 -0400)]
[monodoc] Fixed issue generating EcmaCref URLs.
If you have a URL of the form ``T:System.Collections.Generic.Dictionary`2``, it parses correctly, but the `EcmaDesc` instance returned by the parser will throw an exception if you try to call the `.ToEcmaCref ()` method. This patch resolves this issue and returns a correctly formatted URL in this instance. Unit test included.
Joel Martinez [Wed, 18 Mar 2015 20:09:37 +0000 (16:09 -0400)]
[mdoc] Fixes an update issue with generic and non-generic members.
The existing update was not doing a good job of matching members that have both generic and non-generic members. So for example, if you had a method, `Foo<T>`, and added a non-generic version in a future update (`Foo`); you could end up with a situation where one of the members was being duplicated.
Sebastien Pouliot [Thu, 19 Mar 2015 12:33:28 +0000 (08:33 -0400)]
[mono-api-html] Small simplification when 'breaking' does not apply to the rendering
Sebastien Pouliot [Thu, 19 Mar 2015 12:32:36 +0000 (08:32 -0400)]
[mono-api-html] Include base type changes in API diffs
Marek Safar [Thu, 19 Mar 2015 11:42:43 +0000 (12:42 +0100)]
[corlib] Default FieldInfo Get|SetValueDirect should throw NotSupportedException
Marek Safar [Thu, 19 Mar 2015 08:57:52 +0000 (09:57 +0100)]
[System] Fix SafeSocketHandle race introduced in
9ae88709dbd3d3ed77e1a6ed3d3493ec14f991fc.
at System.ThrowHelper.ThrowArgumentOutOfRangeException () [0x00014] in /Users/marek/git/mono/external/referencesource/mscorlib/system/throwhelper.cs:56
at System.Collections.Generic.List`1[System.Threading.Thread].get_Item (Int32 index) [0x0000e] in /Users/marek/git/mono/external/referencesource/mscorlib/system/collections/generic/list.cs:199
at System.Net.Sockets.SafeSocketHandle.ReleaseHandle () [0x00052] in /Users/marek/git/mono/mcs/class/System/System.Net.Sockets/SafeSocketHandle.cs:79
at System.Runtime.InteropServices.SafeHandle.RunRelease () [0x00091] in /Users/marek/git/mono/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs:203
at System.Runtime.InteropServices.SafeHandle.Dispose (Boolean disposing) [0x00019] in /Users/marek/git/mono/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs:171
at System.Runtime.InteropServices.SafeHandle.Dispose () [0x00003] in /Users/marek/git/mono/mcs/class/corlib/System.Runtime.InteropServices/SafeHandle.cs:150
at System.Net.Sockets.Socket.Dispose (Boolean disposing) [0x0004d] in /Users/marek/git/mono/mcs/class/System/System.Net.Sockets/Socket_2_1.cs:1168
at System.Net.Sockets.Socket.Dispose () [0x00003] in /Users/marek/git/mono/mcs/class/System/System.Net.Sockets/Socket_2_1.cs:1174
at System.Net.Sockets.Socket.Close () [0x00009] in /Users/marek/git/mono/mcs/class/System/System.Net.Sockets/Socket_2_1.cs:1185
at System.Net.Sockets.TcpListener.Stop () [0x0000d] in /Users/marek/git/mono/mcs/class/System/System.Net.Sockets/TcpListener.cs:296
at System.Runtime.Remoting.Channels.Tcp.TcpServerChannel.StopListening (System.Object data) [0x00022] in /Users/marek/git/mono/mcs/class/System.Runtime.Remoting/System.Runtime.Remoting.Channels.Tcp/TcpServerChannel.cs:257
at System.Runtime.Remoting.Channels.Tcp.TcpChannel.StopListening (System.Object data) [0x00013] in /Users/marek/git/mono/mcs/class/System.Runtime.Remoting/System.Runtime.Remoting.Channels.Tcp/TcpChannel.cs:105
at System.Runtime.Remoting.Channels.ChannelServices.UnregisterChannel (IChannel chnl) [0x00057] in /Users/marek/git/mono/mcs/class/corlib/System.Runtime.Remoting.Channels/ChannelServices.cs:463
at MonoTests.Remoting.CallsDomainServer.Stop () [0x00012] in /Users/marek/git/mono/mcs/class/System.Runtime.Remoting/Test/BaseCalls.cs:445
at (wrapper remoting-invoke-with-check) MonoTests.Remoting.CallsDomainServer:Stop ()
at (wrapper xdomain-dispatch) MonoTests.Remoting.CallsDomainServer:Stop (object,byte[]&,byte[]&)
Zoltan Varga [Thu, 19 Mar 2015 08:18:10 +0000 (04:18 -0400)]
[corlib] Implement TypedReference:MakeTypedReference ().
Zoltan Varga [Thu, 19 Mar 2015 08:15:35 +0000 (04:15 -0400)]
Rename TypedReference test file to TypedReferenceTest.cs.
Marek Safar [Thu, 19 Mar 2015 08:07:37 +0000 (09:07 +0100)]
[corlib] Add TypedReference test
Zoltan Varga [Thu, 19 Mar 2015 07:22:04 +0000 (03:22 -0400)]
[runtime] Extract mono-config-dirs.c into a separate automake convenience library so only that file depends on the MONO_BINDIR etc. defines given on the command line. This enables ccache to work on build done with different prefixes.
Zoltan Varga [Thu, 19 Mar 2015 07:20:01 +0000 (03:20 -0400)]
[runtime] Disable the locking of archives in libtool, it was a workaround around an old darwin bug which got fixed years ago: lists.gnu.org/archive/html/bug-libtool/2009-05/msg00062.html.
Zoltan Varga [Thu, 19 Mar 2015 06:04:56 +0000 (02:04 -0400)]
[runtime] Add a new mono-config-dirs.c file which is the only one depending on the MONO_CFG_DIR etc. defines defined in metadata/Makefile.am.
Alex Rønne Petersen [Thu, 19 Mar 2015 00:34:08 +0000 (01:34 +0100)]
[profiler] Fix finding methods in other domains than the current one.
In certain cross-domain scenarios, the method we're executing
is not necessarily emitted in the current domain. So we need
to scan all domains for it.
Alex Rønne Petersen [Thu, 19 Mar 2015 00:33:43 +0000 (01:33 +0100)]
Add scripts/mono-symbolicate to .gitignore.
Joel Martinez [Wed, 18 Mar 2015 19:32:38 +0000 (15:32 -0400)]
[mdoc] Updated csproj to target .NET 4.5
João Matos [Wed, 18 Mar 2015 16:27:28 +0000 (16:27 +0000)]
Merge pull request #1639 from alexrp/profiler-mingw
[profiler] Don't build the profiler on Windows.
Alex Rønne Petersen [Wed, 18 Mar 2015 16:25:27 +0000 (17:25 +0100)]
[profiler] Don't build the profiler on Windows.
Marek Safar [Wed, 18 Mar 2015 11:00:47 +0000 (12:00 +0100)]
[corlib] Update mobile tests
Marek Safar [Wed, 18 Mar 2015 10:57:30 +0000 (11:57 +0100)]
[corlib] Default Egypt calendar is gregorian. Fixes #27725
João Matos [Wed, 18 Mar 2015 09:26:14 +0000 (09:26 +0000)]
Merge pull request #1637 from soimort/fix-build
Fix build on Linux and Windows
Mort Yao [Wed, 18 Mar 2015 08:57:11 +0000 (16:57 +0800)]
[runtime] Fix build for Linux
Mort Yao [Wed, 18 Mar 2015 08:42:43 +0000 (16:42 +0800)]
[runtime] Add missing semicolon in mono_rand_try_get_bytes ()
Marek Safar [Wed, 18 Mar 2015 08:58:58 +0000 (09:58 +0100)]
[corlib] Disable more remoting code for mobile
Marek Safar [Wed, 18 Mar 2015 08:58:24 +0000 (09:58 +0100)]
Revert "Fixes build"
This reverts commit
0f25e60f9c4c550e5274ee77b5564f1bc7f6d314.
Marek Safar [Wed, 18 Mar 2015 08:47:09 +0000 (09:47 +0100)]
Fixes build
Marek Safar [Wed, 18 Mar 2015 08:18:39 +0000 (09:18 +0100)]
[System.Runtime.Serialization.Formatters.Soap] Updated to work with reference sources serialization
Zoltan Varga [Wed, 18 Mar 2015 01:18:54 +0000 (21:18 -0400)]
[gsharedvt] Make sure the gsharedvt method we use in class_type_info () is not partially shared.
Alex Rønne Petersen [Tue, 17 Mar 2015 22:02:00 +0000 (23:02 +0100)]
Merge pull request #1636 from alexrp/profiler-stuff
[profiler] Redesign buffer flushing and method reporting.
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.
Zoltan Varga [Tue, 17 Mar 2015 21:20:03 +0000 (17:20 -0400)]
Atsushi Eno [Tue, 17 Mar 2015 20:16:25 +0000 (04:16 +0800)]
[xlinq] add test from bug #18171 (partly).
Ludovic Henry [Tue, 17 Mar 2015 19:16:44 +0000 (19:16 +0000)]
[threadpool] Add licensing header
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.
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
Ludovic Henry [Fri, 27 Feb 2015 20:34:23 +0000 (15:34 -0500)]
[runtime] Add CPU usage utility function
Zoltan Varga [Tue, 17 Mar 2015 18:20:19 +0000 (14:20 -0400)]
[jit] Avoid disabling direct calls to icalls on arm64+llvm.
Marek Safar [Tue, 17 Mar 2015 18:16:34 +0000 (19:16 +0100)]
[corlib] Bump corlib version for
8d097349b3289b35c6052d1a8612e33de2a7bbbf (icall added)
Marek Safar [Tue, 17 Mar 2015 18:14:12 +0000 (19:14 +0100)]
[System.Runtime.Remoting] Update internal TypeFilter levels
João Matos [Tue, 17 Mar 2015 18:15:40 +0000 (18:15 +0000)]
[genproj] Re-generated the class library projects.
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.
João Matos [Tue, 17 Mar 2015 12:23:55 +0000 (12:23 +0000)]
[genproj] Ignore temporary project generation inputs.
João Matos [Tue, 17 Mar 2015 12:23:28 +0000 (12:23 +0000)]
[genproj] Added support for mcs "/-getresourcestrings" switch.
João Matos [Tue, 17 Mar 2015 12:22:37 +0000 (12:22 +0000)]
[genproj] Remove non .NET 4.5 solutions from being generated.
Marek Safar [Tue, 17 Mar 2015 16:42:11 +0000 (17:42 +0100)]
[corlib] Fixes remoting response message arguments assignment
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
Alex Rønne Petersen [Mon, 9 Mar 2015 18:03:44 +0000 (19:03 +0100)]
[profiler] Redesign buffer flushing and method reporting.
The main goal of this change is to ensure that all methods have a `TYPE_JIT`
event emitted in the stream before they are referenced in other events. Before
this change, `TYPE_JIT` events could arrive out of order or not be emitted at
all because of generic sharing.
We now use a separate thread for writing log buffers to the output file.
Whenever a method is referenced in a TLS log buffer, we add it to a TLS list of
methods. When we ship the TLS log buffer off to the writer thread, we also send
the TLS list of methods. The writer thread first goes over all the methods and,
if some of them haven't had a `TYPE_JIT` event emitted yet, emits them to a
temporary buffer which is flushed just before flushing the main log buffer.
This approach ensures that `TYPE_JIT` events will *always* come before the
events that reference them.
Bookkeeping of which methods have been emitted to the output stream is done in
a global, concurrent hash table. Before a thread adds a method to its TLS list
of methods, it checks if the method is in the hash table. If it is, we know
that the method has already been emitted to the output stream, so it isn't
added to the list. The writer thread is the only thread that updates the hash
table (which happens when it flushes the temporary method buffer). So,
eventually, all TLS method lists will end up being empty because all methods
have been emitted to the output stream.
Alex Rønne Petersen [Mon, 9 Mar 2015 18:01:04 +0000 (19:01 +0100)]
[profiler] Make `perf` syscall work on ARM64.
Alex Rønne Petersen [Mon, 9 Mar 2015 18:00:32 +0000 (19:00 +0100)]
[profiler] Clean up some unused declarations.
Alex Rønne Petersen [Thu, 12 Mar 2015 23:36:20 +0000 (00:36 +0100)]
[mini] Expose mono_aot_get_method () as an API-unstable function.
This will be used by the profiler.
Alex Rønne Petersen [Mon, 9 Mar 2015 17:58:25 +0000 (18:58 +0100)]
[mini] Expose an API-unstable mono_get_jit_info_from_method () function.
This will be used by the profiler.
Alex Rønne Petersen [Mon, 9 Mar 2015 17:57:25 +0000 (18:57 +0100)]
[mcs] Ignore .dep_dirs-* files.
Alex Rønne Petersen [Mon, 9 Mar 2015 17:56:49 +0000 (18:56 +0100)]
[configure] Add a `--disable-perf-events` flag to disable `perf` on Linux.
Alex Rønne Petersen [Tue, 17 Mar 2015 15:13:44 +0000 (16:13 +0100)]
[corlib] Implement security properties on FieldInfo/MethodInfo.
Alex Rønne Petersen [Tue, 17 Mar 2015 14:25:30 +0000 (15:25 +0100)]
[coreclr] Add mono_security_core_clr_field_level () function.
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.
Marcos Henrich [Tue, 17 Mar 2015 11:20:36 +0000 (11:20 +0000)]
[runtime] Assert that thread_resume returns KERN_SUCCESS.
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.
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
Marek Safar [Tue, 17 Mar 2015 13:03:39 +0000 (14:03 +0100)]
[system.date] Fix DefaultValue expression serialization
Atsushi Eno [Tue, 17 Mar 2015 10:56:10 +0000 (18:56 +0800)]
[xlinq] add test from bug #14856.
Atsushi Eno [Tue, 17 Mar 2015 10:55:34 +0000 (18:55 +0800)]
[xml] add test from bug #2917.
Marek Safar [Tue, 17 Mar 2015 08:37:01 +0000 (09:37 +0100)]
[corlib] Always pass ProxyCheckCast check
Marek Safar [Tue, 17 Mar 2015 08:36:39 +0000 (09:36 +0100)]
[corlib] Add missing public type
Marek Safar [Tue, 17 Mar 2015 07:03:08 +0000 (08:03 +0100)]
[corlib] Serialization from reference sources
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.
Zoltan Varga [Tue, 17 Mar 2015 04:55:02 +0000 (00:55 -0400)]
[jit] Disable direct icalls for now to fix the build.