mono.git
8 years agoAvoid creating plt entries for empty plt sections.
Zoltan Varga [Wed, 8 Jul 2015 23:22:38 +0000 (19:22 -0400)]
Avoid creating plt entries for empty plt sections.

8 years agoDisable the dyn call runtime invoke code in llvm-only mode.
Zoltan Varga [Wed, 8 Jul 2015 17:21:42 +0000 (13:21 -0400)]
Disable the dyn call runtime invoke code in llvm-only mode.

8 years agoDisable the usage of delegate trampolines in llvm-only mode.
Zoltan Varga [Wed, 8 Jul 2015 17:08:33 +0000 (13:08 -0400)]
Disable the usage of delegate trampolines in llvm-only mode.

8 years agoProperly inflate methods called from llvm code without trampolines.
Zoltan Varga [Wed, 8 Jul 2015 17:08:06 +0000 (13:08 -0400)]
Properly inflate methods called from llvm code without trampolines.

8 years agoAvoid emitting symbols for jitted code if all methods were compiled by llvm.
Zoltan Varga [Wed, 8 Jul 2015 02:56:09 +0000 (22:56 -0400)]
Avoid emitting symbols for jitted code if all methods were compiled by llvm.

8 years agoDon't put references to LLVM compiled methods into the method_addresses table, its...
Zoltan Varga [Wed, 8 Jul 2015 01:52:45 +0000 (21:52 -0400)]
Don't put references to LLVM compiled methods into the method_addresses table, its not needed.

8 years agoImplement virtual/interface calls by calling a jit icall to resolve the method to...
Zoltan Varga [Wed, 8 Jul 2015 01:24:32 +0000 (21:24 -0400)]
Implement virtual/interface calls by calling a jit icall to resolve the method to be called.

8 years agoImplement unbox trampolines for llvm compiled methods in llvm as functions which...
Zoltan Varga [Wed, 8 Jul 2015 01:00:02 +0000 (21:00 -0400)]
Implement unbox trampolines for llvm compiled methods in llvm as functions which do a tail call to the real method.

8 years agoMove the lookup of llvm compiled methods into a generated llvm function.
Zoltan Varga [Wed, 8 Jul 2015 00:55:33 +0000 (20:55 -0400)]
Move the lookup of llvm compiled methods into a generated llvm function.

8 years agoImplement rgctx fetches by calling a JIT icall.
Zoltan Varga [Wed, 8 Jul 2015 00:35:59 +0000 (20:35 -0400)]
Implement rgctx fetches by calling a JIT icall.

8 years agoImplement support for self-initialization in methods, i.e. methods which initialize...
Zoltan Varga [Wed, 8 Jul 2015 00:12:50 +0000 (20:12 -0400)]
Implement support for self-initialization in methods, i.e. methods which initialize themselves instead of depending on plt entries to do it.

8 years agoAdd a GOT entry pointing to the AOT module.
Zoltan Varga [Tue, 7 Jul 2015 23:07:40 +0000 (19:07 -0400)]
Add a GOT entry pointing to the AOT module.

8 years agoTemporarily disable running opt.
Zoltan Varga [Tue, 7 Jul 2015 22:51:53 +0000 (18:51 -0400)]
Temporarily disable running opt.

8 years agoAdd an 'llvmonlycheck' makefile target to run the jit tests in llvm-only mode.
Zoltan Varga [Wed, 17 Jun 2015 00:09:25 +0000 (20:09 -0400)]
Add an 'llvmonlycheck' makefile target to run the jit tests in llvm-only mode.

8 years agoAdd 'llvmonly' aot option and a corresponding --llvmonly runtime option, these are...
Zoltan Varga [Tue, 7 Jul 2015 22:37:39 +0000 (18:37 -0400)]
Add 'llvmonly' aot option and a corresponding --llvmonly runtime option, these are extensions of full-aot.

8 years ago[process] Fix race between Exited and OutputDataReceived/ErrorDataReceived
Ludovic Henry [Thu, 8 Oct 2015 09:17:50 +0000 (10:17 +0100)]
[process] Fix race between Exited and OutputDataReceived/ErrorDataReceived

Because the previous implementation of the Exited would not wait on
async_output and async_error to complete before calling the Exited event
that would lead to race condition (observable in the test-runner).

The previous implementation was using the
ThreadPool.RegisterWaitForSingleObject method which, in the case of
Mono, would simply enqueue a work item that would wait on this handle.
So instead of monopolizing a ThreadPool thread for that, we create a
dedicated one that simply call WaitForExit.

8 years agoMerge pull request #2116 from cmp-/fix-sdb-trampoline-windows-x64
Zoltan Varga [Thu, 8 Oct 2015 20:40:53 +0000 (16:40 -0400)]
Merge pull request #2116 from cmp-/fix-sdb-trampoline-windows-x64

Fix sdb trampoline on Windows x64

8 years agoMerge pull request #2114 from cmp-/fix-sgen-gchandle-truncation-windows-x64
Mark Probst [Thu, 8 Oct 2015 19:53:16 +0000 (12:53 -0700)]
Merge pull request #2114 from cmp-/fix-sgen-gchandle-truncation-windows-x64

Fix sgen gchandle truncating pointers on Windows x64

8 years agoMerge pull request #1949 from lewurm/fixtype
Alexis Christoforides [Thu, 8 Oct 2015 19:27:12 +0000 (15:27 -0400)]
Merge pull request #1949 from lewurm/fixtype

[mono-config] use right type for result of strlen

8 years agoMerge pull request #2117 from Numpsy/ObjectSecurity
Marek Safar [Thu, 8 Oct 2015 18:06:49 +0000 (20:06 +0200)]
Merge pull request #2117 from Numpsy/ObjectSecurity

Add stub implementation of System.DirectoryServices.DirectoryEntry.Ob…

8 years agoFix sdb trampoline on Windows x64
cmp [Thu, 8 Oct 2015 12:21:13 +0000 (13:21 +0100)]
Fix sdb trampoline on Windows x64

On Windows x64 (and possibly other x64 systems) the offset between code
and the called function can be larger than 32 bits, but amd64_call_code
is just a wrapper around x86_call_code.

8 years agoAdd stub implementation of System.DirectoryServices.DirectoryEntry.ObjectSecurity...
Richard Webb [Thu, 8 Oct 2015 16:34:47 +0000 (17:34 +0100)]
Add stub implementation of System.DirectoryServices.DirectoryEntry.ObjectSecurity property

Add stub implementation of
System.DirectoryServices.DirectoryEntry.ObjectSecurity property (throws
on access)

8 years ago[mcs] Resolve target before resolving collection/dictionary initializers. Fixes ...
Marek Safar [Thu, 8 Oct 2015 13:03:04 +0000 (15:03 +0200)]
[mcs] Resolve target before resolving collection/dictionary initializers. Fixes #34604

8 years ago[threadpool-ms] Refactor thread parking
Ludovic Henry [Wed, 7 Oct 2015 19:49:12 +0000 (20:49 +0100)]
[threadpool-ms] Refactor thread parking

Use a global condition variable as opposed to one per parked thread.
This remove any memory passed to the interrupt token, as this could be
an issue.

The problem comes from the fact that a destroy on a cond variable could
make a wait on this cond variable fail with EINVAL, and this would
trigger an assertion in the mono-mutex code.

8 years ago[linker] Both the TypeSpecification (T) along with the GenericArguments (G) must...
Sebastien Pouliot [Thu, 8 Oct 2015 00:54:15 +0000 (20:54 -0400)]
[linker] Both the TypeSpecification (T) along with the GenericArguments (G) must be preserved from custom attributes, e.g. T<G>

8 years agoFix sgen gchandle truncating pointers on Windows x64
cmp [Wed, 7 Oct 2015 19:41:31 +0000 (20:41 +0100)]
Fix sgen gchandle truncating pointers on Windows x64

On Windows x64 sizeof(unsigned long) == 4, so & ~3UL ends up truncating
the upper 32 bits of the pointer.

8 years ago[test] The process output/error is finished only when null is passed
Ludovic Henry [Wed, 7 Oct 2015 18:38:37 +0000 (19:38 +0100)]
[test] The process output/error is finished only when null is passed

8 years ago[corlib] Rework some test to avoid unhandled and swallowed exception
Ludovic Henry [Wed, 7 Oct 2015 11:33:05 +0000 (12:33 +0100)]
[corlib] Rework some test to avoid unhandled and swallowed exception

These tests could fail randomly (timing issues) and this would lead to
unhandled exceptions. By using Task, instead of the ThreadPool directly,
we avoid these cases. We also ensure to wait for these tasks so we get
the test failing at the right moment and place.

8 years ago[threadpool-ms] Remove recursivity of active_threads_lock
Ludovic Henry [Tue, 6 Oct 2015 14:27:57 +0000 (15:27 +0100)]
[threadpool-ms] Remove recursivity of active_threads_lock

There was a recursive lock because of the interaction between
worker_kill and work_wait_interrupt, but as a matter of fact it is not
needed. This is because we cannot have an interrupt token with
worker_wait_interrupt, and the current thread in active_threads at
the same time.

8 years ago[Facades] Add reflection Facades back to xammac. XM 2.4.0 shipped them so we can...
Rodrigo Kumpera [Tue, 6 Oct 2015 19:42:46 +0000 (15:42 -0400)]
[Facades] Add reflection Facades back to xammac. XM 2.4.0 shipped them so we can't just drop them now.

8 years agoMerge pull request #2112 from madewokherd/lowercaseinclude
João Matos [Tue, 6 Oct 2015 21:44:16 +0000 (22:44 +0100)]
Merge pull request #2112 from madewokherd/lowercaseinclude

Standardize on lower-case names for Windows include files.

8 years agoStandardize on lower-case names for Windows include files.
Vincent Povirk [Tue, 6 Oct 2015 21:41:00 +0000 (16:41 -0500)]
Standardize on lower-case names for Windows include files.

This is needed for mingw builds on Linux.

8 years ago[runtime] Fix the handling of large allocation sizes in Marshal.AllocHGlobal/ReAllocH...
Zoltan Varga [Tue, 6 Oct 2015 17:41:27 +0000 (13:41 -0400)]
[runtime] Fix the handling of large allocation sizes in Marshal.AllocHGlobal/ReAllocHGlobal. Fixes #34382.

8 years ago[runtime] Fixed the MSVC build.
triton [Tue, 6 Oct 2015 14:58:14 +0000 (15:58 +0100)]
[runtime] Fixed the MSVC build.

8 years agoMerge pull request #1978 from ludovic-henry/coop-interrupt
Rodrigo Kumpera [Tue, 6 Oct 2015 14:41:50 +0000 (10:41 -0400)]
Merge pull request #1978 from ludovic-henry/coop-interrupt

[socket] Enable Thread.Abort on blocking syscall

8 years agoMerge pull request #2060 from ludovic-henry/socket-rework-async
Rodrigo Kumpera [Tue, 6 Oct 2015 14:40:47 +0000 (10:40 -0400)]
Merge pull request #2060 from ludovic-henry/socket-rework-async

[socket] Complete refactor of Begin/End and Async

8 years agoMerge pull request #2110 from ludovic-henry/threadpool-exit-worker
Rodrigo Kumpera [Tue, 6 Oct 2015 14:19:19 +0000 (10:19 -0400)]
Merge pull request #2110 from ludovic-henry/threadpool-exit-worker

[threadpool-ms] Exit worker thread after 5 to 60 seconds

8 years ago[socket] Enable Thread.Abort on blocking syscall
Ludovic Henry [Tue, 15 Sep 2015 10:21:55 +0000 (11:21 +0100)]
[socket] Enable Thread.Abort on blocking syscall

By installing interrupt token around the blocking syscalls, we make it possible to abort them with signals.

Previously, the only way to interrupt a blocking syscall, would have been to dispose of the SafeSocketHandle associated to the socket. But that make it impossible to abort the following case:
 - thread T1 accept a socket S and launch T2 (as a background thread) to receive on S
 - T2 block on receive
 - T1 (the main thread) quit, and the shutdown code try to abort T2

T2 would never be aborted, because S would never return from its blocking syscall, and that's because T2:
 - would still have a reference to S, making it impossible to call the finalizer on S
 - will not call Dispose on S before returning from the blocking syscall

This fixes the hang observed on System.Net.HttpWebRequestTest.GetRequestStream with the cooperative GC.

8 years ago[runtime] Cleanup of mono_unhandled_exception
Ludovic Henry [Thu, 1 Oct 2015 13:29:35 +0000 (14:29 +0100)]
[runtime] Cleanup of mono_unhandled_exception

8 years ago[threadpool-ms] Exit worker thread after 5 to 60 seconds
Ludovic Henry [Wed, 30 Sep 2015 13:25:25 +0000 (14:25 +0100)]
[threadpool-ms] Exit worker thread after 5 to 60 seconds

The timeout before exiting a worker thread is random to limit the worst case scenario where, if the timeout is set to N seconds, the user would launch a lot of work item simultaneously, at an interval of N + 1 seconds. In this case, we would have to kill all the threads at once, and starts them all over again 1 second later. The randomization makes the creation and destruction more linear in time, and avoid burst.

8 years ago[System] Make process pipe creation exception more verbose
Ludovic Henry [Tue, 6 Oct 2015 13:19:33 +0000 (14:19 +0100)]
[System] Make process pipe creation exception more verbose

8 years ago[mdoc] Update expected results due to 3156d1b05d75a2f70f1f2a882dab031a8ceed9f9
Marek Safar [Tue, 6 Oct 2015 11:43:36 +0000 (13:43 +0200)]
[mdoc] Update expected results due to 3156d1b05d75a2f70f1f2a882dab031a8ceed9f9

8 years ago[xbuild] Make ToolsVersion 14.0 targeting 4.5.* frameworks work
Marek Safar [Tue, 6 Oct 2015 11:16:43 +0000 (13:16 +0200)]
[xbuild] Make ToolsVersion 14.0 targeting 4.5.* frameworks work

8 years agoFixed HttpWebRequestTest to compile with mobile NUnit.
João Matos [Tue, 6 Oct 2015 11:05:34 +0000 (12:05 +0100)]
Fixed HttpWebRequestTest to compile with mobile NUnit.

Fixes an error in the mono-master-monodroid lane.

[9:24:52] Errors:
[9:24:52]
[9:24:52] /Users/builder/data/lanes/1845/aa3aab5f/source/monodroid/tests/bcl-test/BclTests.sln (default targets) ->
[9:24:52] (Build target) ->
[9:24:52] /Users/builder/data/lanes/1845/aa3aab5f/source/monodroid/tests/bcl-test/BclTests.csproj (default targets) ->
[9:24:52] /Library/Frameworks/Mono.framework/Versions/4.2.0/lib/mono/4.5/Microsoft.CSharp.Targets (CoreCompile target) ->
[9:24:52]
[9:24:52]  src/System/Test/System.Net/HttpWebRequestTest.cs(2336,13): error CS0117: `NUnit.Framework.Assert' does not contain a definition for `Greater'
[9:24:52]
[9:24:52]   13 Warning(s)
[9:24:52]   1 Error(s)

8 years ago[tests] Add test for apploading related crashes due to repetitive load/unload of...
Rodrigo Kumpera [Mon, 5 Oct 2015 22:53:59 +0000 (18:53 -0400)]
[tests] Add test for apploading related crashes due to repetitive load/unload of the same assembly.

Right there's a test for the gsharing/image set bad interaction. It doesn't crash, but produces bad pointers when under MONO_DEBUG_ASSEMBLY_UNLOAD=1

8 years ago[runtime/appdomain] Fix a bad interaction between appdomains and generic sharing.
Rodrigo Kumpera [Mon, 5 Oct 2015 22:36:44 +0000 (18:36 -0400)]
[runtime/appdomain] Fix a bad interaction between appdomains and generic sharing.

mini-generic-sharing.c (get_shared_gparam): This function is used to produce placeholder types
to be used in the sharing instances that are actually JIT'd.

The problem comes from creating a MonoGenericParam whose image is corlib but it's allocated on
a different image.

This becomes an issue in metadata.c:mono_metadata_get_generic_inst when computing the image set
the generic instance should live in. By setting the generic param image to corlib we effectively
lie to the ImageSet code about what are the images.

So, say we have assembly A and we call get_shared_gparam on a type on this assembly. The returned type
will be allocated on A mempool but say it belongs to corlib.

The image set for such a generic instance will be [corlib].

Now we unload A.

Now we have a MonoGenericInstance in the [corlib] mempool that points to memory in the freed
mempool of A.

The fix is to set owner to the right image whenever possible. This would have changed the image
set to [A] (or more likely, [A, corlib]). Either mempool would be freed when A is unloaded.

Testing this behavior turned out to be incredibly more complicated than expected and even though
I managed to produce a test case which has the bad pointers, I could not trigger a crash even with
MONO_DEBUG_ASSEMBLY_UNLOAD=1.

8 years ago[socket] Refactor SocketAsyncEventArgs creation
Ludovic Henry [Tue, 15 Sep 2015 21:33:26 +0000 (22:33 +0100)]
[socket] Refactor SocketAsyncEventArgs creation

8 years ago[socket] Move callbacks out of SocketAsyncEventArgs
Ludovic Henry [Tue, 15 Sep 2015 21:16:36 +0000 (22:16 +0100)]
[socket] Move callbacks out of SocketAsyncEventArgs

8 years ago[socket] Remove SocketAsyncCallback dead code
Ludovic Henry [Tue, 15 Sep 2015 21:02:22 +0000 (22:02 +0100)]
[socket] Remove SocketAsyncCallback dead code

8 years ago[socket] Remove SocketAsyncWorker
Ludovic Henry [Tue, 15 Sep 2015 20:30:12 +0000 (21:30 +0100)]
[socket] Remove SocketAsyncWorker

By having the callbacks directly in Socket, we can remove the SocketAsyncWorker class. This also greatly simplify this part of the code, as the callbacks are at the same place as the Begin/End invokes.

8 years ago[socket] Remove SocketAsyncEventArgs.Dispatcher
Ludovic Henry [Tue, 15 Sep 2015 19:21:43 +0000 (20:21 +0100)]
[socket] Remove SocketAsyncEventArgs.Dispatcher

8 years ago[socket] Remove SocketAsyncEventArgs.Init
Ludovic Henry [Tue, 15 Sep 2015 19:00:09 +0000 (20:00 +0100)]
[socket] Remove SocketAsyncEventArgs.Init

8 years ago[socket] Factor SocketAsyncResult and ProcessAsyncResult common parts into IOAsyncRes...
Ludovic Henry [Wed, 16 Sep 2015 10:17:03 +0000 (11:17 +0100)]
[socket] Factor SocketAsyncResult and ProcessAsyncResult common parts into IOAsyncResult + Abstract IO Threadpool jobs with IOSelectorJob

This simplifies greatly the native code, as we do not need to worry anymore about all IAsyncResult related work (call the callback, set completed, etc.), and we only need to care about the handle we are watching, and the callback to call when something happens on this handle.

This is quite a big commit, but unfortunatly, it's very hard to break it down in smaller commits as everything is very interwind.

8 years agoBump reference sources
Marek Safar [Mon, 5 Oct 2015 14:08:54 +0000 (16:08 +0200)]
Bump reference sources

8 years ago[mcs] Keep documentation formatting as was written in source code. Fixes #34409
Marek Safar [Mon, 5 Oct 2015 14:05:51 +0000 (16:05 +0200)]
[mcs] Keep documentation formatting as was written in source code. Fixes #34409

8 years ago[system.web] Expand reference source strings
Marek Safar [Mon, 5 Oct 2015 08:50:20 +0000 (10:50 +0200)]
[system.web] Expand reference source strings

8 years agoMerge pull request #2107 from kasthack/system.web.sr
Marek Safar [Mon, 5 Oct 2015 08:22:13 +0000 (10:22 +0200)]
Merge pull request #2107 from kasthack/system.web.sr

[System.Web] Generated SR class

8 years agoMerge pull request #2108 from kasthack/patch-1
Marek Safar [Mon, 5 Oct 2015 07:48:34 +0000 (09:48 +0200)]
Merge pull request #2108 from kasthack/patch-1

[System.ComponentModel.DataAnnotations] More resource strings

8 years ago[System.ComponentModel.DataAnnotations] More resource strings
kasthack [Sun, 4 Oct 2015 21:06:28 +0000 (00:06 +0300)]
[System.ComponentModel.DataAnnotations] More resource strings

8 years ago[docs] Update the man page. Remove dead env var, document a couple of GC options.
Rodrigo Kumpera [Fri, 2 Oct 2015 21:04:45 +0000 (17:04 -0400)]
[docs] Update the man page. Remove dead env var, document a couple of GC options.

8 years agoMerge pull request #2103 from xen2/calli_generic
João Matos [Fri, 2 Oct 2015 14:55:23 +0000 (15:55 +0100)]
Merge pull request #2103 from xen2/calli_generic

Inflate calli generic method signature even if not a wrapper

8 years agoInflate calli generic method signature even if not a wrapper
Virgile Bello [Fri, 2 Oct 2015 13:40:47 +0000 (22:40 +0900)]
Inflate calli generic method signature even if not a wrapper

8 years agoMerge pull request #1921 from mattzink/master
Miguel de Icaza [Thu, 1 Oct 2015 21:44:17 +0000 (17:44 -0400)]
Merge pull request #1921 from mattzink/master

Allow disabling the mono-find-provides/requires RPM processing scripts

8 years agoMerge pull request #2025 from sawachika-kenji/patch-1
Miguel de Icaza [Thu, 1 Oct 2015 21:43:20 +0000 (17:43 -0400)]
Merge pull request #2025 from sawachika-kenji/patch-1

Update FormsAuthentication.cs

8 years agoMerge pull request #2087 from joelmartinez/mdoc-membername-fixup
Miguel de Icaza [Thu, 1 Oct 2015 21:40:35 +0000 (17:40 -0400)]
Merge pull request #2087 from joelmartinez/mdoc-membername-fixup

[mdoc] Now rewriting incorrect `MemberName`.

8 years agoMerge pull request #2098 from evincarofautumn/fix-gchandle-assert
Miguel de Icaza [Thu, 1 Oct 2015 21:39:43 +0000 (17:39 -0400)]
Merge pull request #2098 from evincarofautumn/fix-gchandle-assert

Fix assertion in mono_gchandle_get_target.

8 years ago[System/build] Xamarin.Mac's bare/System.dll does not compile with SECURITY_DEP,...
Miguel de Icaza [Thu, 1 Oct 2015 21:31:02 +0000 (17:31 -0400)]
[System/build] Xamarin.Mac's bare/System.dll does not compile with SECURITY_DEP, like the desktop assemblies

8 years ago[runtime] Fixed fast TLS detection on WatchOS.
João Matos [Thu, 1 Oct 2015 16:36:00 +0000 (17:36 +0100)]
[runtime] Fixed fast TLS detection on WatchOS.

8 years agoMerge pull request #2099 from AdamBurgess/master
Jo Shields [Thu, 1 Oct 2015 08:00:58 +0000 (09:00 +0100)]
Merge pull request #2099 from AdamBurgess/master

[Tools] Add user option to cert-sync, fix a few string formatting errors

8 years ago[Tools] Add 'user' option to cert-sync
Adam Burgess [Wed, 30 Sep 2015 15:52:18 +0000 (01:52 +1000)]
[Tools] Add 'user' option to cert-sync
Syncs certificates with the current user's certificate store instead of the local machine's.
To be used when root is not available.

8 years ago[Tools] Fix formatting in cert-sync
Adam Burgess [Wed, 30 Sep 2015 12:20:39 +0000 (22:20 +1000)]
[Tools] Fix formatting in cert-sync

8 years agoMove System.IO.Compression and System.IO.Compression.FileSystem from the _parallels...
Miguel de Icaza [Wed, 30 Sep 2015 15:07:11 +0000 (11:07 -0400)]
Move System.IO.Compression and System.IO.Compression.FileSystem from the _parallels directory to the non-parallel ones, hoping that this will fix the issue where Facades that depend on the latter are built only after those are built, currently, we break (see https://wrench.internalx.com/Wrench/WebServices/Download.aspx?workfile_id=9795720)

8 years ago[linker] allow to specify filename for linker dependencies file
Radek Doulik [Wed, 30 Sep 2015 13:07:37 +0000 (15:07 +0200)]
[linker] allow to specify filename for linker dependencies file

 - also do not use the timestamp in default filename as it
   can be now done by specifying the filename if needed

8 years agoMerge pull request #2045 from BillSeurer/timezone
Marcos Henrich [Wed, 30 Sep 2015 14:00:15 +0000 (15:00 +0100)]
Merge pull request #2045 from BillSeurer/timezone

[ppc] Fix exception when reading from timezone file.

8 years ago[System] Fixes SmtpClientTest.Deliver_Async
Marcos Henrich [Wed, 30 Sep 2015 09:43:36 +0000 (10:43 +0100)]
[System] Fixes SmtpClientTest.Deliver_Async

8 years ago[CJK] fix bug #34059 - reviewed dead code and added some comments.
Atsushi Eno [Wed, 30 Sep 2015 02:59:09 +0000 (10:59 +0800)]
[CJK] fix bug #34059 - reviewed dead code and added some comments.

8 years ago[runtime] Make '--arch' more robust and OS X specific.
Alexis Christoforides [Tue, 29 Sep 2015 21:49:47 +0000 (17:49 -0400)]
[runtime] Make '--arch' more robust and OS X specific.
Also add missing man page entry.

8 years ago[amd64] Fix cross compiling to amd64.
Zoltan Varga [Tue, 29 Sep 2015 22:07:21 +0000 (18:07 -0400)]
[amd64] Fix cross compiling to amd64.

8 years ago[arm] Clean up unused ARMv7s / ARMv7k hwcap checks.
João Matos [Tue, 29 Sep 2015 17:00:05 +0000 (18:00 +0100)]
[arm] Clean up unused ARMv7s / ARMv7k hwcap checks.

8 years ago[arm] Fix the build.
Zoltan Varga [Tue, 29 Sep 2015 16:25:32 +0000 (12:25 -0400)]
[arm] Fix the build.

8 years agoMerge pull request #2086 from BillSeurer/testcases
Alex Rønne Petersen [Tue, 29 Sep 2015 16:21:26 +0000 (18:21 +0200)]
Merge pull request #2086 from BillSeurer/testcases

[ppc] Updated ELF ABI v2 test cases to include returning structures f…

8 years ago[corlib] Fix dispose race condition in CancellationTokenSource
Ludovic Henry [Tue, 29 Sep 2015 14:56:41 +0000 (15:56 +0100)]
[corlib] Fix dispose race condition in CancellationTokenSource

The race condition would manifest in the following code:

```
for (int i = 0, total = 100000; i < total; ++i) {
    if (i % 50 == 0)
            Console.WriteLine ("{0}/{1}", i, total);

    var c1 = new CancellationTokenSource ();
    var wh = c1.Token.WaitHandle;
    c1.CancelAfter (1);
    Thread.Sleep (1);
    c1.Dispose ();
}
```

And we would observe the following exception:
```
Unhandled Exception: System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Threading.ManualResetEvent'.
 at System.Threading.WaitHandle.CheckDisposed () [0x00016] in /Users/builder/data/lanes/1196/33e00ac6/source/mono/mcs/class/corlib/System.Threading/WaitHandle.cs:426
 at System.Threading.EventWaitHandle.Set () [0x0000c] in /Users/builder/data/lanes/1196/33e00ac6/source/mono/mcs/class/corlib/System.Threading/EventWaitHandle.cs:205
 at (wrapper remoting-invoke-with-check) System.Threading.EventWaitHandle:Set ()
 at System.Threading.CancellationTokenSource.NotifyCancellation (Boolean throwOnFirstException) [0x00051] in /Users/builder/data/lanes/1196/33e00ac6/source/mono/external/referencesource/mscorlib/system/threading/CancellationTokenSource.cs:723
 at System.Threading.CancellationTokenSource.Cancel (Boolean throwOnFirstException) [0x00006] in /Users/builder/data/lanes/1196/33e00ac6/source/mono/external/referencesource/mscorlib/system/threading/CancellationTokenSource.cs:409
 at System.Threading.CancellationTokenSource.Cancel () <0x7d75ada8 + 0x00017> in <filename unknown>:0
 at System.Threading.CancellationTokenSource.TimerCallbackLogic (System.Object obj) [0x00012] in /Users/builder/data/lanes/1196/33e00ac6/source/mono/external/referencesource/mscorlib/system/threading/CancellationTokenSource.cs:538
```

This would be a race condition between the TimerCallbackLogic call to Cancel and the call to Dispose on another thread. You could trigger it more reliably by putting a Thread.Sleep at CancellationTokenSource.cs:599.

Also fixes ConcurrentCancelLinkedTokenSourceWhileDisposing race condition between Cancel and Dispose, by applying the same pattern as CancellationTokenSource.TimerCallbackLogic.

8 years ago[runtime] Fixed opcode emulation logic for ARMv7k.
João Matos [Tue, 29 Sep 2015 14:43:37 +0000 (15:43 +0100)]
[runtime] Fixed opcode emulation logic for ARMv7k.

8 years ago[runtime] Fixed ARMv7k detection logic.
João Matos [Tue, 29 Sep 2015 14:43:21 +0000 (15:43 +0100)]
[runtime] Fixed ARMv7k detection logic.

8 years agoMerge pull request #2096 from kasthack/system-web-more-replacements
Marek Safar [Tue, 29 Sep 2015 06:47:27 +0000 (08:47 +0200)]
Merge pull request #2096 from kasthack/system-web-more-replacements

[System.Web] Reference source import

8 years ago[arm] Use 16 byte frame alignment on watchos.
Zoltan Varga [Tue, 29 Sep 2015 01:57:12 +0000 (21:57 -0400)]
[arm] Use 16 byte frame alignment on watchos.

8 years ago[System.Web] Generated SR class
kasthack [Tue, 29 Sep 2015 01:39:11 +0000 (04:39 +0300)]
[System.Web] Generated SR class

8 years ago[amd64] Fix the msvc build. Fixes #34371.
Zoltan Varga [Mon, 28 Sep 2015 23:16:55 +0000 (19:16 -0400)]
[amd64] Fix the msvc build. Fixes #34371.

8 years ago[amd64] Fix the sigctx<->monoctx conversion code to work even if MONO_SIGNAL_USE_SIGA...
Zoltan Varga [Mon, 28 Sep 2015 23:12:34 +0000 (19:12 -0400)]
[amd64] Fix the sigctx<->monoctx conversion code to work even if MONO_SIGNAL_USE_SIGACTION is not defined.

8 years ago[System.Web] 20 attributes from reference source
kasthack [Mon, 28 Sep 2015 23:09:35 +0000 (02:09 +0300)]
[System.Web] 20 attributes from reference source

8 years ago[amd64] Transition to using trampolines to implement single stepping/breakpoints...
Zoltan Varga [Mon, 28 Sep 2015 22:16:00 +0000 (18:16 -0400)]
[amd64] Transition to using trampolines to implement single stepping/breakpoints in JIT mode too.

8 years agoMerge pull request #2093 from directhex/fully-qualified-masm-path
João Matos [Mon, 28 Sep 2015 21:57:47 +0000 (22:57 +0100)]
Merge pull request #2093 from directhex/fully-qualified-masm-path

Bundle modified masm.props with fully qualified ml.exe call.

8 years ago[runtime] Attempt to resolve DllImport using the installation lib dir.
Alexis Christoforides [Mon, 28 Sep 2015 19:26:56 +0000 (15:26 -0400)]
[runtime] Attempt to resolve DllImport using the installation lib dir.

8 years agoFix assertion in mono_gchandle_get_target.
Jon Purdy [Mon, 28 Sep 2015 20:18:01 +0000 (13:18 -0700)]
Fix assertion in mono_gchandle_get_target.

8 years ago[arm] Fix another bunch of frame alignment problems.
Zoltan Varga [Mon, 28 Sep 2015 17:36:43 +0000 (13:36 -0400)]
[arm] Fix another bunch of frame alignment problems.

8 years ago[tests] Enable tests for xambug #28777 on Android
Marek Habersack [Mon, 28 Sep 2015 14:37:09 +0000 (16:37 +0200)]
[tests] Enable tests for xambug #28777 on Android

The issue was fixed in XA, we can enable the tests now

8 years ago[arm] Fix the unaligned stack check.
Zoltan Varga [Mon, 28 Sep 2015 14:21:40 +0000 (10:21 -0400)]
[arm] Fix the unaligned stack check.

8 years agoRevert "[jit] Add a new mono_arch_init_compile () backend function which is used...
Zoltan Varga [Sun, 27 Sep 2015 18:42:56 +0000 (14:42 -0400)]
Revert "[jit] Add a new mono_arch_init_compile () backend function which is used to set various flags in MonoCompile. Use this instead to get rid of some of the #ifdef MONO_ARCH_.. blocks. Add a default implementation which sets the flags based on the MONO_ARCH_.. defines."

This reverts commit bc50c6630337e2a6b40c653d1a0f73c89b519a82.

Revert this as it seems to break the build.

8 years agoMerge pull request #2057 from directhex/monolite-on-jenkins
João Matos [Sun, 27 Sep 2015 13:11:51 +0000 (14:11 +0100)]
Merge pull request #2057 from directhex/monolite-on-jenkins

Move monolite URL to Jenkins, not Boston NAS

8 years ago[jit] Add a new mono_arch_init_compile () backend function which is used to set vario...
Zoltan Varga [Sun, 27 Sep 2015 05:51:26 +0000 (01:51 -0400)]
[jit] Add a new mono_arch_init_compile () backend function which is used to set various flags in MonoCompile. Use this instead to get rid of some of the #ifdef MONO_ARCH_.. blocks. Add a default implementation which sets the flags based on the MONO_ARCH_.. defines.