Zoltan Varga [Fri, 19 Jul 2013 18:52:12 +0000 (20:52 +0200)]
Share byref arguments in runtime invoke signatures with int&. Remove the restrictions on sharing runtime invoke wrappers of valuetype instance methods, its not longer needed.
Zoltan Varga [Fri, 19 Jul 2013 15:55:11 +0000 (17:55 +0200)]
Properly null terminate strings in mono_dwarf_escape_path (). Fixes #13050.
Sebastien Pouliot [Fri, 19 Jul 2013 13:38:58 +0000 (09:38 -0400)]
Disable TestDisposeOnCallback for MONOTOUCH, the test does not really work as the state is null (and throws in a separate thread)
Zoltan Varga [Thu, 18 Jul 2013 17:44:58 +0000 (19:44 +0200)]
Avoid calling mono_domain_free () in a cross-compiler, it causes a GC, and the unwind infrastructure is not properly set up when cross-compiling.
Mark Probst [Thu, 18 Jul 2013 17:37:47 +0000 (10:37 -0700)]
Simplify emit_write_barrier().
We have two ways of passing in the value - by MonoInst* and by register.
Remove the second and always pass a MonoInst*.
Marek Safar [Thu, 18 Jul 2013 12:42:12 +0000 (14:42 +0200)]
Add nested partial types inside nested partial types to AST. Fixes #13316
Marek Safar [Thu, 18 Jul 2013 08:53:33 +0000 (10:53 +0200)]
Nested partial type inside generic class can have base type defined later than current type inflation happens. Fixes #13289
Marek Safar [Wed, 17 Jul 2013 15:14:55 +0000 (17:14 +0200)]
Don't try to match lifted equality operators on same reference types
Zoltan Varga [Thu, 18 Jul 2013 03:36:50 +0000 (05:36 +0200)]
Fix an overflow if MONO_ZERO_LEN_ARRAY is not 0. Fixes #13233.
Alex Rønne Petersen [Thu, 18 Jul 2013 02:15:32 +0000 (04:15 +0200)]
Add a mono_hwcap_init () call to parse_optimizations ().
This is necessary because we need hardware features to be
detected by the time we call mono_arch_cpu_optimizations ().
Alex Rønne Petersen [Thu, 18 Jul 2013 01:38:04 +0000 (03:38 +0200)]
Make mono_hwcap_init () only perform initialization if not already done.
This moves arch-specific initialization to mono_hwcap_arch_init ().
Mark Probst [Wed, 17 Jul 2013 23:26:46 +0000 (16:26 -0700)]
Weaken a race condition in object initialization.
It's still there in a different form, but it's not easy to fix.
Mark Probst [Wed, 17 Jul 2013 22:28:59 +0000 (15:28 -0700)]
[sgen] Binary protocol improvements.
Protocol domain unloads, and allow greping for vtable.
Zoltan Varga [Wed, 17 Jul 2013 21:54:16 +0000 (23:54 +0200)]
Add support for constrained calls with one ref parameter to gsharedvt, enought to support AsyncMethodBuilder methods.
Zoltan Varga [Wed, 17 Jul 2013 21:10:41 +0000 (23:10 +0200)]
Fix a warning.
Zoltan Varga [Wed, 17 Jul 2013 21:07:30 +0000 (23:07 +0200)]
Add support for a simple form of constrained calls to gsharedvt, enough to support AsyncMethodBuilder.Start ().
Zoltan Varga [Wed, 17 Jul 2013 00:58:13 +0000 (02:58 +0200)]
Fix a warning.
Rodrigo Kumpera [Wed, 17 Jul 2013 18:09:18 +0000 (11:09 -0700)]
Merge pull request #706 from elijahtaylor/fixdyncode
Fix nacl_dyncode include
Marek Safar [Wed, 17 Jul 2013 06:18:55 +0000 (23:18 -0700)]
Merge pull request #705 from alesliehughes/master
Allow TrySetApartmentState to set the same state multiple times.
Alistair Leslie-Hughes [Wed, 17 Jul 2013 05:22:54 +0000 (15:22 +1000)]
Allow TrySetApartmentState to set the same state multiple times.
License: This patch is under the MIT/X11 license.
Alex Rønne Petersen [Wed, 17 Jul 2013 02:59:23 +0000 (04:59 +0200)]
mono-hwcap: Add ARM version detection for iOS.
Zoltan Varga [Tue, 16 Jul 2013 21:45:10 +0000 (23:45 +0200)]
Avoid printing an extra newline when printing fp results while tracing.
Mark Probst [Thu, 11 Jul 2013 20:25:42 +0000 (13:25 -0700)]
Fix race conditions in finalizer/weak link staging.
Elijah Taylor [Tue, 16 Jul 2013 21:14:31 +0000 (14:14 -0700)]
Fix nacl_dyncode include
Zoltan Varga [Tue, 16 Jul 2013 16:54:14 +0000 (18:54 +0200)]
Fix MONO_GC_DEBUG=collect-before-allocs. mono_gc_alloc_obj_nolock () was not called for the majority of allocations.
Zoltan Varga [Tue, 16 Jul 2013 14:16:51 +0000 (16:16 +0200)]
Fix the dependencies of the corlib test suite so the test suite is not rebuilt every time.
Zoltan Varga [Mon, 15 Jul 2013 21:44:48 +0000 (23:44 +0200)]
Fix a crash in thread_suspend_func () if the thread has no tls set.
Marek Safar [Tue, 16 Jul 2013 08:13:07 +0000 (10:13 +0200)]
Remove redundant status capturing
Marek Safar [Tue, 16 Jul 2013 07:59:33 +0000 (09:59 +0200)]
Fixes scheduling of non-inlined sychronous continuations.
Zoltan Varga [Mon, 15 Jul 2013 20:15:06 +0000 (22:15 +0200)]
Avoid an assert in mono_save_seq_point_info () if no seq points are generated for a method, as in wrappers in android. Hopefully fixes #12995.
Zoltan Varga [Mon, 15 Jul 2013 18:54:09 +0000 (20:54 +0200)]
Make wrappers whose signature is static static.
Zoltan Varga [Mon, 15 Jul 2013 18:34:39 +0000 (20:34 +0200)]
Fix synchronized_generic_cache.
Sebastien Pouliot [Thu, 11 Jul 2013 19:37:43 +0000 (15:37 -0400)]
Escape the .file path name generated in the asembly code. clang does not mind, but gcc does
Zoltan Varga [Mon, 15 Jul 2013 18:09:45 +0000 (20:09 +0200)]
Put the unbox_trampolines table into the .text segment instead of .rodata on mt since it contains code.
Rodrigo Kumpera [Mon, 15 Jul 2013 16:30:03 +0000 (12:30 -0400)]
[runtime] Add a fallback on the TLS probing code that does a range scan in the pthread structure.
Rodrigo Kumpera [Wed, 10 Jul 2013 22:50:49 +0000 (18:50 -0400)]
Bump master version to 3.3.0.
Alex Rønne Petersen [Mon, 15 Jul 2013 14:48:13 +0000 (16:48 +0200)]
Avoid using dmb/dsb/dib instructions on ARM v6.
This only worked by accident before the HAVE_ARMV<N>
changes because __ARM_ARCH_6__ is never defined by
any compiler.
Zoltan Varga [Mon, 15 Jul 2013 14:36:53 +0000 (16:36 +0200)]
Remove test-sgen from make check in tests/, it takes too much time.
Zoltan Varga [Mon, 15 Jul 2013 14:36:25 +0000 (16:36 +0200)]
Fix gshared synchronized wrappers for static methods.
Marek Safar [Sat, 13 Jul 2013 15:58:56 +0000 (17:58 +0200)]
Implement webrequest cancellation. Fixes #13200
Alex Rønne Petersen [Sun, 14 Jul 2013 20:56:16 +0000 (13:56 -0700)]
Merge pull request #700 from jack-pappas/patch-1
Call 'awk' instead of 'gawk' for cross-platform compatibility.
Atsushi Eno [Sat, 13 Jul 2013 14:56:59 +0000 (23:56 +0900)]
Revert "Merge pull request #622 from killabytenow/master"
This reverts commit
392bae3c453763e8f887f447678ab0202a36228a, reversing
changes made to
61cd9ee8b63bdd34fd3b5ebd58f2de3fce507a61.
Jack Pappas [Sat, 13 Jul 2013 11:56:24 +0000 (07:56 -0400)]
Call 'awk' instead of 'gawk' for cross-platform compatibility.
Call `awk` instead of `gawk` for cross-platform compatibility. Linux systems normally have a symbolic link from `awk` to `gawk`, so there should be no difference in the functionality on those systems.
Alex Rønne Petersen [Fri, 12 Jul 2013 18:39:02 +0000 (20:39 +0200)]
configure: Also consider __ARM_ARCH_7S__ when checking for ARM v7.
This is defined by Apple's iOS gcc with -arch armv7s.
Jeffrey Stedfast [Fri, 12 Jul 2013 18:05:55 +0000 (14:05 -0400)]
Prevent potential integer overflows in SortedList's binary search midpoint calculation
Marek Safar [Fri, 12 Jul 2013 15:44:53 +0000 (17:44 +0200)]
Don't eat exception from timer handler (this is system timer not SWF timer)
Marek Safar [Fri, 12 Jul 2013 14:23:01 +0000 (16:23 +0200)]
Prefer user operators over predefined operators for binary enum operations too. Fixes #13202
Marek Safar [Fri, 12 Jul 2013 13:13:42 +0000 (15:13 +0200)]
Allow async for explicitly implemented interface methods. Fixes #13197
Martin Baulig [Fri, 12 Jul 2013 08:42:12 +0000 (10:42 +0200)]
.spec file, again.
Atsushi Eno [Fri, 12 Jul 2013 05:17:05 +0000 (22:17 -0700)]
Merge pull request #622 from killabytenow/master
UTF8 encoding/decoding improvements
Alex Rønne Petersen [Thu, 11 Jul 2013 22:03:02 +0000 (00:03 +0200)]
Replace more __ARM_ARCH_... checks with HAVE_ARMV<N>.
Gerardo García Peña [Thu, 11 Jul 2013 21:52:35 +0000 (23:52 +0200)]
Gerardo García Peña [Thu, 11 Jul 2013 21:49:47 +0000 (23:49 +0200)]
Better and more homogeneous error handling.
Alex Rønne Petersen [Thu, 11 Jul 2013 19:19:34 +0000 (21:19 +0200)]
Add ARM version detection to configure and use the resulting macros.
This defines ARM_VERSION_{5,6,7}. Several of these can be
defined at once. For example ARM_VERSION_5 and ARM_VERSION_6
will both be defined if the target is an ARM v6 CPU.
Previously, we defined HAVE_ARMV6 based on running a program.
This obviously didn't work for cross-compilation. This new
approach does, and detects more cases (v5, v6, v7) than the
previous check (v6).
Alex Rønne Petersen [Thu, 11 Jul 2013 18:12:01 +0000 (20:12 +0200)]
Add a mono-hwcap module to utils.
This is an attempt to unify all the ad-hoc CPU feature
detection we do all over the codebase (mostly in Mini
back ends). It will also be used to detect and use SMP
instructions on older ARM devices (we need this info in
utils/, not just in mini/).
Each architecture has a mono-hwcap-$TARGET.h header if
it has specified one. So for example, if you want to
find out if a VFP unit is available on ARM, you would
include mono-hwcap-arm.h and read mono_hwcap_arm_has_vfp.
Remember to guard inclusions of these files with a check
along the lines of:
#ifdef TARGET_ARM
#include "mono/utils/mono-hwcap-arm.h"
/* ... */
#endif
Architectures that don't specify a file simply get an
empty implementation with no feature variables. This
empty implementation is also used if Mono itself is
compiled as a cross compiler.
Initialization of the mono-hwcap module is done in the
mini_init () function in mini/mini.c, very early in the
startup process. So in general, calling it is not needed.
Alex Rønne Petersen [Thu, 11 Jul 2013 17:54:35 +0000 (19:54 +0200)]
Fix the tests makefile.
Gerardo García Peña [Thu, 11 Jul 2013 16:54:11 +0000 (18:54 +0200)]
If 'flush' flag is enabled when calling decoding/encoding function, flush buffer when input run out (satisfies test 'SufficientByteArray').
Alex Rønne Petersen [Thu, 11 Jul 2013 16:42:18 +0000 (18:42 +0200)]
Fix (hopefully) the last architecture casing inconsistency.
Alex Rønne Petersen [Thu, 11 Jul 2013 16:38:36 +0000 (18:38 +0200)]
Remove an m68k check from configure.
Alex Rønne Petersen [Thu, 11 Jul 2013 16:37:51 +0000 (18:37 +0200)]
Alex Rønne Petersen [Thu, 11 Jul 2013 16:36:31 +0000 (18:36 +0200)]
Add missing TARGET_* defines for SPARC and Itanium.
Martin Baulig [Wed, 10 Jul 2013 16:09:14 +0000 (18:09 +0200)]
Oops, remove extra %endif in .spec file.
Martin Baulig [Wed, 10 Jul 2013 14:51:53 +0000 (16:51 +0200)]
[PCL]: Add System.Linq.Expressions type-forwarders.
Martin Baulig [Wed, 10 Jul 2013 14:46:02 +0000 (16:46 +0200)]
Add libmonoboehm package to the spec file.
Marek Safar [Wed, 10 Jul 2013 14:26:26 +0000 (16:26 +0200)]
Ignore only local Makefile
Gerardo García Peña [Wed, 10 Jul 2013 09:26:26 +0000 (11:26 +0200)]
An #if has been negated (bugfix)
Alex Rønne Petersen [Wed, 10 Jul 2013 04:54:33 +0000 (06:54 +0200)]
Add atomic.c/.h to libmonoutils.vcxproj.
Alex Rønne Petersen [Wed, 10 Jul 2013 04:47:02 +0000 (06:47 +0200)]
configure: Set TARGET=S390X instead of S390x for consistency.
Alex Rønne Petersen [Wed, 10 Jul 2013 04:27:40 +0000 (21:27 -0700)]
Merge pull request #695 from jack-pappas/patch-4
Fix preprocessor/compiler warning due to unbalanced apostophe (') character
Jack Pappas [Wed, 10 Jul 2013 01:44:19 +0000 (21:44 -0400)]
Fix preprocessor/compiler warning due to unbalanced apostophe (') character
Reworded the warning message to be displayed when the fall-through case is taken by the preprocessor in `mono_thread_get_stack_bounds()`.
Sebastien Pouliot [Wed, 10 Jul 2013 00:17:37 +0000 (20:17 -0400)]
Ensure the new FileStream unit tests does not throw in the non-main thread (which nunit-console won't report but other tools, like Touch.Unit, will)
Rodrigo Kumpera [Tue, 9 Jul 2013 22:28:58 +0000 (18:28 -0400)]
Use a non rooted symlink and make it point to the right mono.
Rodrigo Kumpera [Tue, 9 Jul 2013 22:06:11 +0000 (18:06 -0400)]
[runtime]Revert the fast tls check as we always need it on mach. Add another iOS 7 offset.
Martin Baulig [Tue, 9 Jul 2013 22:05:28 +0000 (00:05 +0200)]
Bump libmonosgen version in the .spec file.
Martin Baulig [Tue, 9 Jul 2013 20:44:16 +0000 (22:44 +0200)]
[build]: Use a relative symlink from mono to mono-sgen.
Rodrigo Kumpera [Tue, 9 Jul 2013 20:19:54 +0000 (13:19 -0700)]
Merge pull request #694 from madewokherd/pthreadinclude
Don't include pthread.h when it's not needed.
Alex Rønne Petersen [Tue, 9 Jul 2013 19:41:12 +0000 (21:41 +0200)]
Fix a #define style issue in mini.c.
Introduced in
d4016989729bd58274c03d7b8ed9495bfbfef82f.
Alex Rønne Petersen [Tue, 9 Jul 2013 19:34:59 +0000 (21:34 +0200)]
Only require mono_arch_is_soft_float () to be defined when needed.
Now, only ports that define MONO_ARCH_SOFT_FLOAT_FALLBACK have to
provide this function. For ports that don't define this, a default
function is provided that returns FALSE.
Alex Rønne Petersen [Tue, 9 Jul 2013 19:34:44 +0000 (21:34 +0200)]
Add an MSVC branch to MONO_ALWAYS_INLINE.
Rodrigo Kumpera [Tue, 9 Jul 2013 19:49:51 +0000 (15:49 -0400)]
[runtime] On mach-arm don't probe for tls offsets if the runtime was not built with support for fast tls.
Alex Rønne Petersen [Tue, 9 Jul 2013 16:56:38 +0000 (18:56 +0200)]
Change the way we do soft float to a fallback mechanism.
MONO_ARCH_SOFT_FLOAT previously meant that a back end was using
soft float unconditionally. It's now MONO_ARCH_SOFT_FLOAT_FALLBACK
and actually indicates whether the back end has a soft float
fallback compiled in - not necessarily that it's used.
A new port function has been added:
gboolean mono_arch_is_soft_float (void) MONO_INTERNAL;
This function is what actually tells Mini whether the back end is
going to use soft float. If MONO_ARCH_SOFT_FLOAT_FALLBACK is not
defined, it must return FALSE. Otherwise, it should return TRUE or
FALSE depending on whether the back end determines that the hardware
supports floating point. Once mono_arch_init () has been called,
the value returned from this function must be constant for the rest
of the VM's lifetime.
For example, on ARM, we now try to detect VFP via /proc/self/auxv
or /proc/cpuinfo and, if found, return FALSE from the function. This
only applies to Linux and Android as iOS always has VFP.
It's important to note that if the runtime is built with the 'softfp'
or 'hard' ABIs, the soft float fallback is not compiled in, as the
runtime is assumed to only be executed on VFP-capable systems.
Finally, the ARM feature detection code has been moved from the
mono_arch_cpu_optimizations () function to mono_arch_init () so that
FPU detection/initialization is done in one place.
Rodrigo Kumpera [Tue, 9 Jul 2013 17:21:54 +0000 (13:21 -0400)]
[build] Add dep tracking between Makefile.am.in and Makefile.am when the extension module is disabled.
Rodrigo Kumpera [Tue, 9 Jul 2013 17:16:09 +0000 (13:16 -0400)]
[runtime]On install, symlink mono to the right binary.
Martin Baulig [Tue, 9 Jul 2013 16:37:34 +0000 (18:37 +0200)]
Fix the spec file; we don't create any .mdb's for the PCL Facades anymore.
Vincent Povirk [Wed, 3 Jul 2013 20:15:41 +0000 (15:15 -0500)]
Don't include pthread.h when it's not needed.
Fixes mingw-w64 build.
This commit is licensed under MIT/X11.
Alex Rønne Petersen [Tue, 9 Jul 2013 15:49:58 +0000 (08:49 -0700)]
Merge pull request #692 from jack-pappas/patch-2
Use the NI_MAXHOST constant to initialize the size of the hostname buffer.
Alex Rønne Petersen [Tue, 9 Jul 2013 14:48:15 +0000 (16:48 +0200)]
MIPS: Set USE_MUL to 0 by default (for now).
Setting it to 1 breaks on Loongson CPUs which are the most common
desktop MIPS CPUs supported by e.g. Debian.
This change can be reverted when more investigation is done to find
out why exactly this breaks.
Thanks to Jo Shields (@directhex) for lots of testing and debugging
and spotting this define that turned out to be the culprit.
Gerardo García Peña [Tue, 9 Jul 2013 14:22:37 +0000 (16:22 +0200)]
Added new test for checking EncoderFallbackException exception behaviour.
Marek Safar [Tue, 9 Jul 2013 12:42:18 +0000 (05:42 -0700)]
Merge pull request #693 from jack-pappas/patch-3
Print diagnostic messages for platform detection
Jack Pappas [Tue, 9 Jul 2013 12:35:26 +0000 (08:35 -0400)]
Print diagnostic messages for platform detection
Print some diagnostic messages when running 'make' on this file, so it's clear when a platform has not been explicitly specified and we're going to compile with a platform value which has been automatically selected.
Jack Pappas [Tue, 9 Jul 2013 12:12:41 +0000 (08:12 -0400)]
Use the NI_MAXHOST constant to initialize the size of the hostname buffer.
The NI_MAXHOST constant should be used when creating the hostname buffer to avoid potential buffer overflows.
Marek Safar [Tue, 9 Jul 2013 09:14:56 +0000 (11:14 +0200)]
Update test name
Marek Safar [Tue, 9 Jul 2013 09:12:33 +0000 (11:12 +0200)]
Equality structural comparer needs to do recursive comparisons. Fixes #13110
Marek Safar [Tue, 9 Jul 2013 08:47:29 +0000 (10:47 +0200)]
Update failing test
Marek Safar [Tue, 9 Jul 2013 08:41:55 +0000 (10:41 +0200)]
Rodrigo Kumpera [Mon, 8 Jul 2013 23:20:10 +0000 (19:20 -0400)]
[runtime] Don't return success on invalid parameters, raise an exception instead.
Zoltan Varga [Mon, 8 Jul 2013 22:26:39 +0000 (00:26 +0200)]
Place the method_addresses symbol into the .text segment on mt, not rodata, since it is actually code.
Rodrigo Kumpera [Mon, 8 Jul 2013 21:47:00 +0000 (17:47 -0400)]
Bump mono to 3.1.1
Gerardo García Peña [Mon, 8 Jul 2013 21:31:06 +0000 (23:31 +0200)]
Added new test for checking DecoderFallbackException exception behaviour.
Marek Safar [Mon, 8 Jul 2013 21:11:00 +0000 (23:11 +0200)]
Update after newline update