mono.git
9 years ago[delegate-trampoline] Fallback to slow path in case of failure to create fast path
Ludovic Henry [Mon, 7 Jul 2014 20:01:44 +0000 (16:01 -0400)]
[delegate-trampoline] Fallback to slow path in case of failure to create fast path

9 years agoMove amd64 to use object offsets.
Rodrigo Kumpera [Mon, 7 Jul 2014 20:26:07 +0000 (16:26 -0400)]
Move amd64 to use object offsets.

9 years agoPoking Jenkins again...
Alex Rønne Petersen [Mon, 7 Jul 2014 16:02:58 +0000 (18:02 +0200)]
Poking Jenkins again...

9 years agoMerge pull request #1147 from akoeplinger/misc-test-cleanup
Alex Rønne Petersen [Mon, 7 Jul 2014 12:27:03 +0000 (14:27 +0200)]
Merge pull request #1147 from akoeplinger/misc-test-cleanup

Cleanup untracked test files

9 years ago[mdoc] Ignore generated test files
Alexander Köplinger [Wed, 2 Jul 2014 01:26:07 +0000 (03:26 +0200)]
[mdoc] Ignore generated test files

9 years ago[System.Drawing] Delete test files after test
Alexander Köplinger [Wed, 2 Jul 2014 01:17:05 +0000 (03:17 +0200)]
[System.Drawing] Delete test files after test

9 years ago[System.IO.Compression] Delete test file after test
Alexander Köplinger [Wed, 2 Jul 2014 01:09:35 +0000 (03:09 +0200)]
[System.IO.Compression] Delete test file after test

9 years ago[MWF] Get rid of unused resx.resx file
Alexander Köplinger [Wed, 2 Jul 2014 00:20:55 +0000 (02:20 +0200)]
[MWF] Get rid of unused resx.resx file

The other tests already use GetResXFileWithNode () to create this file, make this consistent and get rid of the checked-in file

9 years ago[System.Web] Remove superfluous write to file in test
Alexander Köplinger [Tue, 1 Jul 2014 16:42:11 +0000 (18:42 +0200)]
[System.Web] Remove superfluous write to file in test

The written file is never used, all the Asserts happen in RenderPostBackEvent_OnSaveStateComplete ().

9 years agoMerge pull request #1124 from UCIS/patch-5
Alex Rønne Petersen [Mon, 7 Jul 2014 12:18:49 +0000 (14:18 +0200)]
Merge pull request #1124 from UCIS/patch-5

Fixed NullReferenceExcepton in Socket.Connect for non-IP endpoints

9 years agoAdd a build status badge to README.md.
Alex Rønne Petersen [Mon, 7 Jul 2014 12:16:37 +0000 (14:16 +0200)]
Add a build status badge to README.md.

9 years ago[mcs] Flow analysis of moved arguments. Fixes #20983
Marek Safar [Mon, 7 Jul 2014 08:00:30 +0000 (10:00 +0200)]
[mcs] Flow analysis of moved arguments. Fixes #20983

9 years ago[mono] Ignore *.trs files in unit-tests
Alexander Köplinger [Wed, 2 Jul 2014 01:29:49 +0000 (03:29 +0200)]
[mono] Ignore *.trs files in unit-tests

9 years agoIgnore automake 'test-driver' file
Alexander Köplinger [Tue, 1 Jul 2014 16:50:44 +0000 (18:50 +0200)]
Ignore automake 'test-driver' file

This was introduced by automake 1.12 and can be safely ignored.

9 years ago[jit] Rename MonoJitInfo.used_regs to 'unwind_info' to better reflect its current...
Zoltan Varga [Sat, 5 Jul 2014 19:51:56 +0000 (21:51 +0200)]
[jit] Rename MonoJitInfo.used_regs to 'unwind_info' to better reflect its current purpose.

9 years agoAdd support for precise unwind info in epilogs on amd64:
Zoltan Varga [Sat, 5 Jul 2014 02:43:03 +0000 (04:43 +0200)]
Add support for precise unwind info in epilogs on amd64:

* Implement DW_CFA_remember_state/restore_state opcodes.
* Add a DW_CFA_mono_advance_loc opcode to advance to a location stored outside
  of the unwind info. Use this to allow the sharing of unwind info between
  methods.

This is need to prevent crashes during unwinding when the ip of the last frame is in the epilog. This can be reproduced by
running sgen-new-threads-dont-join-stw.exe in a loop.

9 years agoUpdate the required bootstrap mono version to 2.10, 2.4 will no longer work.
Zoltan Varga [Fri, 4 Jul 2014 16:13:24 +0000 (18:13 +0200)]
Update the required bootstrap mono version to 2.10, 2.4 will no longer work.

9 years ago[corlib] Update 6b94215d0b82c0a24786cb33ecce3f89d6c4d879 to work with not null target...
Marek Safar [Fri, 4 Jul 2014 14:25:22 +0000 (16:25 +0200)]
[corlib] Update 6b94215d0b82c0a24786cb33ecce3f89d6c4d879 to work with not null targets too

9 years ago[mcs] Allow more conversions for CallerLineNumberAttribute
Marek Safar [Fri, 4 Jul 2014 11:22:53 +0000 (13:22 +0200)]
[mcs] Allow more conversions for CallerLineNumberAttribute

9 years ago[sdb] Add support for out arguments in invokes.
Zoltan Varga [Fri, 4 Jul 2014 13:56:02 +0000 (15:56 +0200)]
[sdb] Add support for out arguments in invokes.

9 years ago[corlib] Fix Delegate::DynamicInvoke for open delegates of instance methods and close...
Marek Safar [Fri, 4 Jul 2014 08:14:56 +0000 (10:14 +0200)]
[corlib] Fix Delegate::DynamicInvoke for open delegates of instance methods and closed delegates of static methods

9 years agoEmpty commit, poking Jenkins...
Alex Rønne Petersen [Fri, 4 Jul 2014 02:55:16 +0000 (04:55 +0200)]
Empty commit, poking Jenkins...

10 years ago[runtime] Use sleep (1) instead of sleep (0) in the native SIGSEGV suspend loop to...
Zoltan Varga [Fri, 4 Jul 2014 01:08:23 +0000 (03:08 +0200)]
[runtime] Use sleep (1) instead of sleep (0) in the native SIGSEGV suspend loop to reduce cpu usage.

10 years ago[sdb] Add support for returning the changed valuetype receiver after invokes to value...
Zoltan Varga [Thu, 3 Jul 2014 21:18:26 +0000 (23:18 +0200)]
[sdb] Add support for returning the changed valuetype receiver after invokes to valuetype methods.

10 years ago[mcs] Don't cache lambda expressions in static constructor context
Marek Safar [Thu, 3 Jul 2014 12:08:13 +0000 (14:08 +0200)]
[mcs] Don't cache lambda expressions in static constructor context

10 years ago[mcs] Fixes flow analysis of if statement with constant expression
Marek Safar [Thu, 3 Jul 2014 11:42:38 +0000 (13:42 +0200)]
[mcs] Fixes flow analysis of if statement with constant expression

10 years ago[mcs] Overload resolution should not fail when type inference infers inaccessible...
Marek Safar [Thu, 3 Jul 2014 10:32:30 +0000 (12:32 +0200)]
[mcs] Overload resolution should not fail when type inference infers inaccessible types but other overload exists

10 years ago[mcs] Methodgroup probing checks are not allowed
Marek Safar [Thu, 3 Jul 2014 09:35:28 +0000 (11:35 +0200)]
[mcs] Methodgroup probing checks are not allowed

10 years ago[mcs] Methodgroup conversion involving user defined operators
Marek Safar [Thu, 3 Jul 2014 08:43:35 +0000 (10:43 +0200)]
[mcs] Methodgroup conversion involving user defined operators

10 years ago[mcs] Use same result conversion rules of predefined enum operators for unary and...
Marek Safar [Wed, 2 Jul 2014 15:56:23 +0000 (17:56 +0200)]
[mcs] Use same result conversion rules of predefined enum operators for unary and binary expressions

10 years ago[mcs] A value for params parameter with default valus is still empty array
Marek Safar [Wed, 2 Jul 2014 15:13:01 +0000 (17:13 +0200)]
[mcs] A value for params parameter with default valus is still empty array

10 years ago[runtime] Enable aot on 64 bit osx.
Zoltan Varga [Thu, 3 Jul 2014 14:49:34 +0000 (16:49 +0200)]
[runtime] Enable aot on 64 bit osx.

10 years agoRevert "[corlib] Re-enable TaskContinuationChainLeak test."
Alex Rønne Petersen [Thu, 3 Jul 2014 03:54:01 +0000 (05:54 +0200)]
Revert "[corlib] Re-enable TaskContinuationChainLeak test."

This reverts commit 265060cc22a863326d68cef3d0c79998bac37fc7.

The test is still failing:

2) MonoTests.System.Threading.Tasks.TaskTests.TaskContinuationChainLeak :   Expected: False
  But was:  True

at MonoTests.System.Threading.Tasks.TaskTests+TaskContinuationChainLeakTester.Verify () [0x00000] in /var/lib/jenkins/workspace/Mono/mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs:1991
at MonoTests.System.Threading.Tasks.TaskTests.TaskContinuationChainLeak () [0x00022] in /var/lib/jenkins/workspace/Mono/mcs/class/corlib/Test/System.Threading.Tasks/TaskTest.cs:1948
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00054] in /var/lib/jenkins/workspace/Mono/mcs/class/corlib/System.Reflection/MonoMethod.cs:230

10 years ago[System] Add more logging to the BeginConnectMultiple test.
Alex Rønne Petersen [Thu, 3 Jul 2014 00:46:21 +0000 (02:46 +0200)]
[System] Add more logging to the BeginConnectMultiple test.

10 years ago[WCF] Disable CloseTest and OpenTest4 in CustomPeerResolverServiceTest.
Alex Rønne Petersen [Thu, 3 Jul 2014 00:31:07 +0000 (02:31 +0200)]
[WCF] Disable CloseTest and OpenTest4 in CustomPeerResolverServiceTest.

These tests occasionally time out:

Test Case Failures:
1) MonoTests.System.ServiceModel.PeerResolvers.CustomPeerResolverServiceTest.CloseTest : System.TimeoutException : The operation has timed-out.
at System.ServiceModel.Channels.HttpRequestChannel+HttpChannelRequestAsyncResult.WaitEnd () [0x00000] in <filename unknown>:0
at System.ServiceModel.Channels.HttpRequestChannel.EndRequest (IAsyncResult result) [0x00000] in <filename unknown>:0
at System.ServiceModel.Channels.HttpRequestChannel.Request (System.ServiceModel.Channels.Message message, TimeSpan timeout) [0x00000] in <filename unknown>:0
at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (System.ServiceModel.Channels.Message msg, TimeSpan timeout) [0x00000] in <filename unknown>:0
at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (System.ServiceModel.Description.OperationDescription od, System.Object[] parameters) [0x00000] in <filename unknown>:0
at System.ServiceModel.MonoInternal.ClientRuntimeChannel.DoProcess (System.Reflection.MethodBase method, System.String operationName, System.Object[] parameters) [0x00000] in <filename unknown>:0
at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Process (System.Reflection.MethodBase method, System.String operationName, System.Object[] parameters) [0x00000] in <filename unknown>:0

I.e. we're timing out waiting for the async wait handle here: https://github.com/mono/mono/blob/master/mcs/class/System.ServiceModel/System.ServiceModel.Channels/HttpRequestChannel.cs#L495

Since we have no current WCF maintainer and this is deep, deep within
WCF land and causes unstable builds on Jenkins, disable these tests
for now.

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

10 years ago[System] Add some debugging code to BeginConnectMultiple test.
Alex Rønne Petersen [Thu, 3 Jul 2014 00:18:09 +0000 (02:18 +0200)]
[System] Add some debugging code to BeginConnectMultiple test.

The WaitOne () call has a tendency to time out on the Jenkins
VMs. However, reproducing the problem outside of Jenkins has
proven futile.

This makes the WaitOne () call block for as long as needed and
still fails the test if the elapsed time was longer than 30s.
We print the actual elapsed time to the console.

Hopefully this'll help us find out if it's just taking quite a
long time to run or if it's a hang.

10 years ago[runtime] Add cross helper extensions.
Rodrigo Kumpera [Wed, 2 Jul 2014 19:34:10 +0000 (15:34 -0400)]
[runtime] Add cross helper extensions.

10 years ago[sgen] Use gc_stats minor and major collection counts instead of local variable
Ludovic Henry [Wed, 2 Jul 2014 17:52:57 +0000 (13:52 -0400)]
[sgen] Use gc_stats minor and major collection counts instead of local variable

10 years ago[runtime] Fix the win32 build.
Zoltan Varga [Wed, 2 Jul 2014 17:10:22 +0000 (19:10 +0200)]
[runtime] Fix the win32 build.

10 years ago[mcs] Constant folding of null strings casted to object
Marek Safar [Wed, 2 Jul 2014 13:33:16 +0000 (15:33 +0200)]
[mcs] Constant folding of null strings casted to object

10 years ago[mcs] Add new test
Marek Safar [Wed, 2 Jul 2014 13:32:20 +0000 (15:32 +0200)]
[mcs] Add new test

10 years ago[mcs] Parsing of nullable type cast inside statement with open parens
Marek Safar [Wed, 2 Jul 2014 13:31:06 +0000 (15:31 +0200)]
[mcs] Parsing of nullable type cast inside statement with open parens

10 years ago[mcs] Switch with user conversion to nullable governing type
Marek Safar [Wed, 2 Jul 2014 10:59:53 +0000 (12:59 +0200)]
[mcs] Switch with user conversion to nullable governing type

10 years ago[mcs] Object initializer for events which can be initialized using field expression
Marek Safar [Wed, 2 Jul 2014 10:54:00 +0000 (12:54 +0200)]
[mcs] Object initializer for events which can be initialized using field expression

10 years ago[ppc] Lower long_rem_imm to long_rem when on ppc64.
Alex Rønne Petersen [Wed, 2 Jul 2014 08:50:07 +0000 (10:50 +0200)]
[ppc] Lower long_rem_imm to long_rem when on ppc64.

10 years agomcs/class/Makefile: Remove duplicate System.Web entry.
Alex Rønne Petersen [Tue, 1 Jul 2014 23:19:00 +0000 (01:19 +0200)]
mcs/class/Makefile: Remove duplicate System.Web entry.

Second take on 5fbb351375a38232ff9cb5ca6602f183321e0a47.

10 years agomcs/class/Makefile: Merge common_dirs into net_2_0_dirs.
Alex Rønne Petersen [Tue, 1 Jul 2014 23:18:24 +0000 (01:18 +0200)]
mcs/class/Makefile: Merge common_dirs into net_2_0_dirs.

They're used in the same places so we may as well simplify.

10 years agoRevert "Remove duplicate System.Web in mcs/class/Makefile."
Alex Rønne Petersen [Tue, 1 Jul 2014 23:16:47 +0000 (01:16 +0200)]
Revert "Remove duplicate System.Web in mcs/class/Makefile."

This reverts commit 5fbb351375a38232ff9cb5ca6602f183321e0a47.

This breaks the build because System.Runtime.Remoting needs System.Web.

10 years ago[runtime] First pass of cross compilation cleanup. Allow offsets and alignment to...
Rodrigo Kumpera [Tue, 1 Jul 2014 23:12:28 +0000 (19:12 -0400)]
[runtime] First pass of cross compilation cleanup. Allow offsets and alignment to be externally calculated.

10 years agoRemove duplicate System.Web in mcs/class/Makefile.
Alex Rønne Petersen [Tue, 1 Jul 2014 22:31:46 +0000 (00:31 +0200)]
Remove duplicate System.Web in mcs/class/Makefile.

It was listed both in net_2_0_dirs and common_dirs so
it would get tested twice in some profiles.

10 years agoRemove duplicate System.ServiceModel in mcs/class/Makefile.
Alex Rønne Petersen [Tue, 1 Jul 2014 21:29:33 +0000 (23:29 +0200)]
Remove duplicate System.ServiceModel in mcs/class/Makefile.

This was causing tests to be run several times in the same profile(s).

10 years ago[runtime] Fix the android build.
Rodrigo Kumpera [Tue, 1 Jul 2014 20:18:43 +0000 (16:18 -0400)]
[runtime] Fix the android build.

10 years ago[corlib] Re-enable TaskContinuationChainLeak test.
Alex Rønne Petersen [Tue, 1 Jul 2014 19:22:17 +0000 (21:22 +0200)]
[corlib] Re-enable TaskContinuationChainLeak test.

This is hopefully fixed after a57fb5b.

10 years ago[ppc] Clean up atomic opcodes.
Alex Rønne Petersen [Tue, 1 Jul 2014 01:01:55 +0000 (03:01 +0200)]
[ppc] Clean up atomic opcodes.

* Support atomic_add_i4 on ppc32 in addition to ppc64.
* Make the atomic_add_* code more in line with the atomic_cas_* code.

10 years ago[mini] Simplify the way the JIT emits atomic opcodes.
Alex Rønne Petersen [Tue, 1 Jul 2014 00:41:47 +0000 (02:41 +0200)]
[mini] Simplify the way the JIT emits atomic opcodes.

* MONO_ARCH_HAVE_ATOMIC_* macros have been removed.
* Backends now report whether they support atomic opcodes via
  the mono_arch_opcode_supported () function.
* The default implementation of mono_arch_opcode_supported ()
  has been removed as almost all backends need to define one
  anyway.
* All old atomic_add_* opcodes have been removed. These were no
  longer being used but some backends still had code for them.
* atomic_add_new_* opcodes have been renamed to atomic_add_* as
  they are now the only atomic add opcodes.
* Itanium-specific atomic_add_imm_* opcodes have been moved to
  the __ia64__ section of mini-ops.h.
* Comments have been added to mini-ops.h explaining the precise
  semantics of the atomic opcodes.

The net result of this change is a simpler backend interface at
the cost of a slightly bigger binary.

10 years agoMerge pull request #1143 from akoeplinger/fix-gc-descriptor-error
Alex Rønne Petersen [Tue, 1 Jul 2014 19:40:35 +0000 (21:40 +0200)]
Merge pull request #1143 from akoeplinger/fix-gc-descriptor-error

[tests] gc-descriptors: Only copy file in case of VPATH build

10 years agoMerge pull request #1127 from oleg-st/master
Alex Rønne Petersen [Tue, 1 Jul 2014 19:36:58 +0000 (21:36 +0200)]
Merge pull request #1127 from oleg-st/master

Added fix for Bug 20869

10 years ago[tests] gc-descriptors: Only copy file in case of VPATH build
Alexander Köplinger [Tue, 1 Jul 2014 19:17:53 +0000 (21:17 +0200)]
[tests] gc-descriptors: Only copy file in case of VPATH build

Instead of ignoring the cp error when copying over the same file in non-VPATH builds.

10 years ago[runtime] Make WaitForPendingFinalizers () really wait for the finalizers added by...
Zoltan Varga [Tue, 1 Jul 2014 19:10:19 +0000 (21:10 +0200)]
[runtime] Make WaitForPendingFinalizers () really wait for the finalizers added by a previous GC. Fixes #20503.

10 years agoMerge pull request #1141 from akoeplinger/fix-mono-shlib-cop
Alex Rønne Petersen [Tue, 1 Jul 2014 18:43:40 +0000 (20:43 +0200)]
Merge pull request #1141 from akoeplinger/fix-mono-shlib-cop

[tools] Fixed mono-shlib-cop test

10 years agoFix the marshal7.cs test, longs can be aligned to 4 bytes on 32 bit linux, and the...
Zoltan Varga [Tue, 1 Jul 2014 17:53:05 +0000 (19:53 +0200)]
Fix the marshal7.cs test, longs can be aligned to 4 bytes on 32 bit linux, and the runtime no longer aligns structure sizes to 8 bytes. Fixes #20788.

10 years ago[tools] Fixed mono-shlib-cop test
Alexander Köplinger [Tue, 1 Jul 2014 12:13:49 +0000 (14:13 +0200)]
[tools] Fixed mono-shlib-cop test

MONO_PATH was missing when running the tests.

Use "libMonoPosixHelper.so" in local directory when checking if DllImport of a development library generates a warning (libglib2.0-dev might not be installed, but libMonoPosixHelper is always built with mono)

10 years ago[mcs] Add missing lock expression flow analysis
Marek Safar [Tue, 1 Jul 2014 12:03:53 +0000 (14:03 +0200)]
[mcs] Add missing lock expression flow analysis

10 years ago[mcs] Emit valid code for exception filter using constrained type parameter
Marek Safar [Tue, 1 Jul 2014 10:45:28 +0000 (12:45 +0200)]
[mcs] Emit valid code for exception filter using constrained type parameter

10 years ago[mcs] Emit correct token for inherited nested non-generic types from unbound types
Marek Safar [Tue, 1 Jul 2014 07:45:02 +0000 (09:45 +0200)]
[mcs] Emit correct token for inherited nested non-generic types from unbound types

10 years ago[mcs] Re-add obsolete reporting for enumerators removed in 6643bc119cbe1e94b5634e6452...
Marek Safar [Tue, 1 Jul 2014 06:35:02 +0000 (08:35 +0200)]
[mcs] Re-add obsolete reporting for enumerators removed in 6643bc119cbe1e94b5634e6452dd6eb40c7681c7

10 years agoAllocate the finalizable object in finalizer-exception.cs in another thread to make...
Zoltan Varga [Mon, 30 Jun 2014 22:35:15 +0000 (00:35 +0200)]
Allocate the finalizable object in finalizer-exception.cs in another thread to make it less likely that it is retained. Fixes finalizer-exception.exe on 64 bit osx+llvm.

10 years agoMerge pull request #1140 from kitsilanosoftware/no-gitlink-in-dist
Alex Rønne Petersen [Mon, 30 Jun 2014 22:18:28 +0000 (00:18 +0200)]
Merge pull request #1140 from kitsilanosoftware/no-gitlink-in-dist

[dist] Do not include .git link files in dist tarball

10 years ago[dist] Do not include .git link files in dist tarball
Damien Diederen [Mon, 30 Jun 2014 14:38:09 +0000 (16:38 +0200)]
[dist] Do not include .git link files in dist tarball

Recent versions of Git co-host submodule GIT_DIRs in <root-project>/.git/
by default, and write their relative path into <subproject>/.git,
which is a regular file:

    $ ls -l external/cecil/.git
    -rw-r--r-- 1 foo  bar  42 Jun 16 12:50 external/cecil/.git
    $ cat external/cecil/.git
    gitdir: ../../.git/modules/external/cecil

Relax the expression in Makefile.am to also delete these (broken)
"symlinks" when preparing a distribution tarball.

10 years agoAdd /reflection-load-dir to mono/tests/.gitignore.
Alex Rønne Petersen [Mon, 30 Jun 2014 21:25:49 +0000 (23:25 +0200)]
Add /reflection-load-dir to mono/tests/.gitignore.

10 years agoEmit correct memory barriers in the JIT intrinsic for Interlocked.Read ().
Alex Rønne Petersen [Mon, 30 Jun 2014 21:24:32 +0000 (23:24 +0200)]
Emit correct memory barriers in the JIT intrinsic for Interlocked.Read ().

10 years ago[amd64] Remove the callee saved registers from MonoLMF, save/restore them normally...
Zoltan Varga [Mon, 30 Jun 2014 21:04:16 +0000 (23:04 +0200)]
[amd64] Remove the callee saved registers from MonoLMF, save/restore them normally using the normal register save/restore code.

10 years agoMerge pull request #1138 from akoeplinger/fix-webtest-deadlocks
Alex Rønne Petersen [Mon, 30 Jun 2014 19:12:26 +0000 (21:12 +0200)]
Merge pull request #1138 from akoeplinger/fix-webtest-deadlocks

[System.Web] Tests: Fix deadlock when ThreadAbortException is thrown

10 years ago[System.Web] Tests: Fix deadlock when ThreadAbortException is thrown
Alexander Köplinger [Sun, 29 Jun 2014 15:35:28 +0000 (17:35 +0200)]
[System.Web] Tests: Fix deadlock when ThreadAbortException is thrown

This reverts commit ed11296c511d670391374fbb68e2988a9c1e8789.

When a ThreadAbortException is thrown during request processing in AsyncRun () the _done.Set () call is not executed.
This then results in a deadlock because _done.WaitOne () doesn't get signaled and waits forever.
One solution would be enclosing the _done.Set () in a finally clause, but even then we'd need to relaunch the AsyncRun () loop to be in a usable state.

A simpler solution is to revert the commit that introduced the AsyncRun () in the first place, as it doesn't seem necessary now (the tests pass just fine without it).

The test that was disabled in 429cdf17cf3a4887d9882380beebbf0d119e65ab is reenabled too, as it wasn't the culprit of the problem.

10 years ago[mcs] Not applicable GetEnumerator candidates were not rejected early enough
Marek Safar [Mon, 30 Jun 2014 17:44:32 +0000 (19:44 +0200)]
[mcs] Not applicable GetEnumerator candidates were not rejected early enough

10 years agoMerge pull request #1133 from kitsilanosoftware/mcs-tests-no-jscript
Alex Rønne Petersen [Mon, 30 Jun 2014 17:43:14 +0000 (19:43 +0200)]
Merge pull request #1133 from kitsilanosoftware/mcs-tests-no-jscript

[mcs tests] class/Microsoft.JScript does not exist anymore

10 years ago[jit] Move the 'remove any unused lmf' code from mono_arch_find_jit_info () to mini...
Zoltan Varga [Mon, 30 Jun 2014 17:40:10 +0000 (19:40 +0200)]
[jit] Move the 'remove any unused lmf' code from mono_arch_find_jit_info () to mini-exceptions.c to reduce code duplication and fix some problems where ctx->sp and lmf->sp was used to determine whenever the LMF was below the end of the stack instead of new_ctx->sp and lmf.

10 years ago[amd64] Fix the popping of LMF frames during unwinding. Fixes #20616.
Zoltan Varga [Mon, 30 Jun 2014 16:54:08 +0000 (18:54 +0200)]
[amd64] Fix the popping of LMF frames during unwinding. Fixes #20616.

10 years ago[mcs] Emit partial type parameters attributes too
Marek Safar [Mon, 30 Jun 2014 15:23:33 +0000 (17:23 +0200)]
[mcs] Emit partial type parameters attributes too

10 years ago[mcs] Use same rules in dynamic context as in normal instance member hidding.
Marek Safar [Fri, 27 Jun 2014 14:46:59 +0000 (16:46 +0200)]
[mcs] Use same rules in dynamic context as in normal instance member hidding.

10 years ago[runtime] Fix the marshalling of ByValTStr types which have a size specified. Fixes...
Zoltan Varga [Sun, 29 Jun 2014 13:24:29 +0000 (15:24 +0200)]
[runtime] Fix the marshalling of ByValTStr types which have a size specified. Fixes #20674.

10 years ago[sgen-worker] Improve worker data stealing distribution
Ludovic Henry [Fri, 27 Jun 2014 23:14:52 +0000 (16:14 -0700)]
[sgen-worker] Improve worker data stealing distribution

The idea is simply to make a worker tries to steal work from the workers that are next to him firs, before trying back at the beginning.
This reduce lock contention on the first workers and distribute more evenly work between workers by not starving the first ones.

10 years agoFix a format string warning in decode.c.
Alex Rønne Petersen [Fri, 27 Jun 2014 21:46:33 +0000 (23:46 +0200)]
Fix a format string warning in decode.c.

10 years agoOnly enable finally_block_ending_in_dead_bb.exe on x86/amd64 (not NaCl and Win32).
Alex Rønne Petersen [Fri, 27 Jun 2014 21:36:04 +0000 (23:36 +0200)]
Only enable finally_block_ending_in_dead_bb.exe on x86/amd64 (not NaCl and Win32).

We would previously run this everywhere, but it only works on
x86 and amd64 at the moment (similar to finally_guard.exe).
This meant that it would always fail on e.g. ARM and PPC. We
still disable it under NaCl (because it uses Thread.Abort ())
and Win32.

10 years ago[Ms.Build] Disable 4 tests in ProjectTest and ProjectCollectionTest under NET_4_0.
Alex Rønne Petersen [Fri, 27 Jun 2014 21:33:27 +0000 (23:33 +0200)]
[Ms.Build] Disable 4 tests in ProjectTest and ProjectCollectionTest under NET_4_0.

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

These tests fail under this particular profile only with the following:

1) MonoTests.Microsoft.Build.Evaluation.ProjectCollectionTest.GlobalProperties :   #2
  Expected: True
  But was:  False

at MonoTests.Microsoft.Build.Evaluation.ProjectCollectionTest.GlobalProperties () [0x00000] in <filename unknown>:0
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0

2) MonoTests.Microsoft.Build.Evaluation.ProjectTest.BuildCSharpTargetBuild : Microsoft.Build.Exceptions.InvalidProjectFileException : Attribute "KeepDuplicates" is not known on node "_TargetFrameworkDirectories" [type Microsoft.Build.Construction.ProjectItemElement].  at: /home/alexrp/Projects/mono/mcs/class/lib/net_4_5/Microsoft.Common.targets (182,5)
at Microsoft.Build.Construction.ProjectElement.LoadAttribute (System.String name, System.String value) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectItemElement.LoadAttribute (System.String name, System.String value) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectRootElement.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectRootElement.Create (System.Xml.XmlReader xmlReader, Microsoft.Build.Evaluation.ProjectCollection projectCollection) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Import (Microsoft.Build.Construction.ProjectImportElement import) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project+<EvaluatePropertiesAndImportsAndChooses>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.ToArray[ProjectElement] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Import (Microsoft.Build.Construction.ProjectImportElement import) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project+<EvaluatePropertiesAndImportsAndChooses>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.ToArray[ProjectElement] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.ProcessXml () [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Initialize () [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion, Microsoft.Build.Evaluation.ProjectCollection projectCollection, ProjectLoadSettings loadSettings) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion, Microsoft.Build.Evaluation.ProjectCollection projectCollection) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion) [0x00000] in <filename unknown>:0
at MonoTests.Microsoft.Build.Evaluation.ProjectTest.BuildCSharpTargetBuild () [0x00000] in <filename unknown>:0
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0

3) MonoTests.Microsoft.Build.Evaluation.ProjectTest.CreateProjectInstance : Microsoft.Build.Exceptions.InvalidProjectFileException : Attribute "KeepDuplicates" is not known on node "_TargetFrameworkDirectories" [type Microsoft.Build.Construction.ProjectItemElement].  at: /home/alexrp/Projects/mono/mcs/class/lib/net_4_5/Microsoft.Common.targets (182,5)
at Microsoft.Build.Construction.ProjectElement.LoadAttribute (System.String name, System.String value) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectItemElement.LoadAttribute (System.String name, System.String value) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectRootElement.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectRootElement.Create (System.Xml.XmlReader xmlReader, Microsoft.Build.Evaluation.ProjectCollection projectCollection) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Import (Microsoft.Build.Construction.ProjectImportElement import) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project+<EvaluatePropertiesAndImportsAndChooses>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.ToArray[ProjectElement] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Import (Microsoft.Build.Construction.ProjectImportElement import) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project+<EvaluatePropertiesAndImportsAndChooses>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.ToArray[ProjectElement] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.ProcessXml () [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Initialize () [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion, Microsoft.Build.Evaluation.ProjectCollection projectCollection, ProjectLoadSettings loadSettings) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion, Microsoft.Build.Evaluation.ProjectCollection projectCollection) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion) [0x00000] in <filename unknown>:0
at MonoTests.Microsoft.Build.Evaluation.ProjectTest.CreateProjectInstance () [0x00000] in <filename unknown>:0
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0

4) MonoTests.Microsoft.Build.Evaluation.ProjectTest.LoadCaseInsensitive : Microsoft.Build.Exceptions.InvalidProjectFileException : Attribute "KeepDuplicates" is not known on node "_TargetFrameworkDirectories" [type Microsoft.Build.Construction.ProjectItemElement].  at: /home/alexrp/Projects/mono/mcs/class/lib/net_4_5/Microsoft.Common.targets (182,5)
at Microsoft.Build.Construction.ProjectElement.LoadAttribute (System.String name, System.String value) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectItemElement.LoadAttribute (System.String name, System.String value) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.LoadValue (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectElementContainer.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectRootElement.Load (System.Xml.XmlReader reader) [0x00000] in <filename unknown>:0
at Microsoft.Build.Construction.ProjectRootElement.Create (System.Xml.XmlReader xmlReader, Microsoft.Build.Evaluation.ProjectCollection projectCollection) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Import (Microsoft.Build.Construction.ProjectImportElement import) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project+<EvaluatePropertiesAndImportsAndChooses>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.ToArray[ProjectElement] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Import (Microsoft.Build.Construction.ProjectImportElement import) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project+<EvaluatePropertiesAndImportsAndChooses>c__Iterator0.MoveNext () [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.ToArray[ProjectElement] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.ProcessXml () [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project.Initialize () [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion, Microsoft.Build.Evaluation.ProjectCollection projectCollection, ProjectLoadSettings loadSettings) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion, Microsoft.Build.Evaluation.ProjectCollection projectCollection) [0x00000] in <filename unknown>:0
at Microsoft.Build.Evaluation.Project..ctor (Microsoft.Build.Construction.ProjectRootElement xml, IDictionary`2 globalProperties, System.String toolsVersion) [0x00000] in <filename unknown>:0
at MonoTests.Microsoft.Build.Evaluation.ProjectTest.LoadCaseInsensitive () [0x00000] in <filename unknown>:0
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0

10 years agoatomic.c: Get rid of the fallback warning.
Alex Rønne Petersen [Fri, 27 Jun 2014 18:18:35 +0000 (20:18 +0200)]
atomic.c: Get rid of the fallback warning.

This is really noisy on platforms like ARM where we
intentionally use the fallback mutex-based code.

10 years ago[MSBuild] Reload projects after parsing sln file
Michael Hutchinson [Fri, 27 Jun 2014 18:30:48 +0000 (14:30 -0400)]
[MSBuild] Reload projects after parsing sln file

When building sln files, they are first converted to sln.proj
files, then the project file is built.

The engine unloaded and reloaded the sln.proj file itself, but
not the projects implicitly loaded while parsing the sln file.
This meant that some state was kept around that prevented
AfterTargets from being handled correctly

BXC18761 - AfterTargets and AfterBuild ignored by xbuild

10 years agoRevert "Don't touch internal feature macros in eglib"
Rodrigo Kumpera [Thu, 26 Jun 2014 21:51:50 +0000 (17:51 -0400)]
Revert "Don't touch internal feature macros in eglib"

This reverts commit dd412cfb2e1968f310f454ee2ec303862cb642d2.

We need to know what target was broken by this and verify that this won't break the platitude of libc's around.

This is currently a non-trivial job, so let's just revert this for now.

10 years ago[MSBuild] Suppress useless message
Michael Hutchinson [Fri, 27 Jun 2014 18:08:08 +0000 (14:08 -0400)]
[MSBuild] Suppress useless message

The DotConfigExtensionsPath won't ever exist unless the user
creates it manually, so prevent spewing out dozens of messages
that it's missing.

10 years ago[System.IO.Compression] Tidy up formatting.
João Matos [Fri, 27 Jun 2014 15:30:32 +0000 (16:30 +0100)]
[System.IO.Compression]  Tidy up formatting.

10 years ago[System.IO.Compression] Fixed archive entry opening for non-Create mode archives.
João Matos [Fri, 27 Jun 2014 15:02:54 +0000 (16:02 +0100)]
[System.IO.Compression] Fixed archive entry opening for non-Create mode archives.

10 years agoMerge pull request #1134 from kitsilanosoftware/mcs-tests-dll-il-distfile
Marek Safar [Fri, 27 Jun 2014 14:52:45 +0000 (16:52 +0200)]
Merge pull request #1134 from kitsilanosoftware/mcs-tests-dll-il-distfile

[mcs tests] Add tests/dlls/*.il to DISTFILES

10 years agoMerge pull request #1135 from kitsilanosoftware/rpm-spec-dead-entries
Marek Habersack [Fri, 27 Jun 2014 14:45:43 +0000 (16:45 +0200)]
Merge pull request #1135 from kitsilanosoftware/rpm-spec-dead-entries

[rpm spec] Mono.Web and OpenSystem.C do not exist anymore

10 years agoUse mono_strtod () instead of strtod () on ARM.
Alex Rønne Petersen [Fri, 27 Jun 2014 14:31:11 +0000 (16:31 +0200)]
Use mono_strtod () instead of strtod () on ARM.

The former used to miscompile back in 2005, but this no
longer appears to be the case. Further, using strtod ()
is problematic on Linux/ARM systems with many non-US
locales that use a comma as the decimal separator.

In particular, this breaks almost all compilation with
MCS because it can't parse floating point literals.

Based on investigation by Damien Diederen <dd@crosstwine.com>.

10 years agoFix a format string warning in decode.c.
Alex Rønne Petersen [Fri, 27 Jun 2014 02:09:59 +0000 (04:09 +0200)]
Fix a format string warning in decode.c.

10 years ago[mcs tests] Add tests/dlls/*.il to DISTFILES
Damien Diederen [Fri, 27 Jun 2014 09:07:19 +0000 (11:07 +0200)]
[mcs tests] Add tests/dlls/*.il to DISTFILES

Without this,

    cd mcs/tests && make run-test

fails when run from a distribution tarball.

10 years ago[mcs tests] class/Microsoft.JScript does not exist anymore
Damien Diederen [Fri, 27 Jun 2014 08:11:51 +0000 (10:11 +0200)]
[mcs tests] class/Microsoft.JScript does not exist anymore

10 years ago[rpm spec] Mono.Web and OpenSystem.C do not exist anymore
Damien Diederen [Mon, 23 Jun 2014 18:01:35 +0000 (20:01 +0200)]
[rpm spec] Mono.Web and OpenSystem.C do not exist anymore

10 years ago[System] Fixes a warning
Marek Safar [Fri, 27 Jun 2014 11:37:50 +0000 (13:37 +0200)]
[System] Fixes a warning

10 years ago[corlib] Array qsort without head allocation. Fixes #20922
Marek Safar [Fri, 27 Jun 2014 10:43:03 +0000 (12:43 +0200)]
[corlib] Array qsort without head allocation. Fixes #20922