Rodrigo Kumpera [Thu, 9 Jun 2011 01:59:51 +0000 (22:59 -0300)]
Fix darwin-arm build.
Rodrigo Kumpera [Fri, 10 Jun 2011 01:42:36 +0000 (22:42 -0300)]
Add regression tests for delegate invokes
Rodrigo Kumpera [Fri, 10 Jun 2011 01:38:54 +0000 (22:38 -0300)]
Add test for missing binding behavior
Rodrigo Kumpera [Fri, 10 Jun 2011 00:42:05 +0000 (21:42 -0300)]
Handle more delegate invoke cases.
* marshal.c (mono_marshal_get_delegate_invoke): Handle
instance methods of valuetypes. Be either with a null target
of with the 'this' parameter been passed as part of the delegate
param list. The 'this' parameter can be either byval or byref.
* object.c (mono_delegate_ctor_with_method): Don't add unbox
wrappers when the 'this' parameter is a valuetype and is been
passed byref.
* mini-trampolines.c (mono_delegate_trampoline): Correctly
detect callvirt trampolines. Don't add unbox wrappers for
delegates with explicit 'this' passed byref. Disable optimized
tramps for delegates to instance methods that have no target.
Fixes #695978
Rodrigo Kumpera [Thu, 2 Jun 2011 19:21:07 +0000 (16:21 -0300)]
Fixes Delegate.CreateDelegate with valuetype argument on the 'this' position.
* Delegate.cs (CreateDelegate): Allow binding del(vt&) to an instance
method of vt.
* DelegateTest.cs: Add regression tests.
Fixes #695978
Jonathan Pryor [Thu, 9 Jun 2011 18:27:55 +0000 (14:27 -0400)]
[mdoc-update] Generate proper lower bounds for multi-dimensional arrays.
Consider the method `void M(double[,,])`. When attempting to import
documentation for this method, `mdoc-update` should generate the CREF
"M(System.Double[0:,0:,0:])", otherwise some documentation isn't imported.
Due to this (and `mcs /doc`-related fixes) and other changes, flush the
expected output as more docs are properly imported.
Marek Safar [Thu, 9 Jun 2011 17:07:12 +0000 (18:07 +0100)]
Check parameter names collision for members without block
Jérémie Laval [Thu, 9 Jun 2011 16:43:55 +0000 (18:43 +0200)]
Potential fix for #690944
Jérémie Laval [Thu, 9 Jun 2011 16:04:38 +0000 (18:04 +0200)]
Setup status and scheduler correctly when calling RunSynchronously on a Task
Sebastien Pouliot [Thu, 9 Jun 2011 14:30:07 +0000 (10:30 -0400)]
Refactor MonoMac's MarkNSObjects substep so it can be reused in other products
Marek Safar [Thu, 9 Jun 2011 13:31:47 +0000 (14:31 +0100)]
Fix capturing of lambda's this under async context
Marek Habersack [Thu, 9 Jun 2011 08:35:15 +0000 (01:35 -0700)]
Merge pull request #110 from skolima/master
I've missed several NotImplementedExceptions previously, this is now fixed.
Zoltan Varga [Wed, 8 Jun 2011 22:51:53 +0000 (15:51 -0700)]
Merge pull request #111 from Unity-Technologies/master-debugger-attaching
[SDB] Fixup connection-time messages on attaching.
Tak [Wed, 8 Jun 2011 14:10:23 +0000 (16:10 +0200)]
[SDB] Fixup connection-time messages on attaching.
* mini/debugger-agent.c: Fixup connection-time messages on attaching.
License: MIT/X11
Zoltan Varga [Tue, 7 Jun 2011 19:56:01 +0000 (21:56 +0200)]
Fix a warning.
Zoltan Varga [Tue, 7 Jun 2011 19:55:22 +0000 (21:55 +0200)]
Fix the check for the -Wno-unused-but-set-variable gcc option.
Leszek 'skolima' Ciesielski [Sat, 4 Jun 2011 14:35:14 +0000 (16:35 +0200)]
[MSBuild] Finishing Microsoft.Build.Construction
No more NotImplementedException.
Marek Safar [Tue, 7 Jun 2011 16:49:06 +0000 (17:49 +0100)]
Update gitignore
Marek Safar [Tue, 7 Jun 2011 16:46:47 +0000 (17:46 +0100)]
Correctly calculate parsed array index for full AST
Marek Safar [Mon, 6 Jun 2011 17:34:44 +0000 (18:34 +0100)]
Update translationf files
Marek Safar [Mon, 6 Jun 2011 15:45:43 +0000 (16:45 +0100)]
Don't crash on invalid GetAwaiter
Marek Safar [Mon, 6 Jun 2011 15:45:16 +0000 (16:45 +0100)]
Add more test files
Marek Safar [Mon, 6 Jun 2011 09:54:27 +0000 (10:54 +0100)]
[697296] Fix documentation output for jagged arrays
Marek Safar [Mon, 6 Jun 2011 09:23:08 +0000 (10:23 +0100)]
Add some caching for generic task
Marek Safar [Mon, 6 Jun 2011 08:55:58 +0000 (09:55 +0100)]
Update test
Marek Safar [Mon, 6 Jun 2011 08:55:15 +0000 (09:55 +0100)]
Persist more literals in full ast mode
Zoltan Varga [Sat, 4 Jun 2011 17:13:03 +0000 (19:13 +0200)]
Update LLVM backend to latest LLVM code.
Zoltan Varga [Sat, 4 Jun 2011 13:20:46 +0000 (15:20 +0200)]
Fix a corner case where an inlined bblock which had its next_bb set was the last bblock in a method. Fixes #693905.
Jb Evain [Sat, 4 Jun 2011 10:38:41 +0000 (12:38 +0200)]
update tuner
Zoltan Varga [Fri, 3 Jun 2011 23:01:00 +0000 (16:01 -0700)]
Merge pull request #109 from rnagy/master
Fix OpenBSD. KERN_PROC2 is not needed anymore here.
Jonathan Pryor [Fri, 3 Jun 2011 21:17:59 +0000 (17:17 -0400)]
Allow Android'd support_boehm=no to work.
The AC_ARG_ENABLE(boehm, ..., ..., support_boehm=yes) resulted in
support_boehm always being 'yes', even for `--host=arm-linux-androidabi`,
which was not the intention. Using `support_boehm=${support_boehm:-yes}`
generates correct behavior.
Jonathan Pryor [Fri, 3 Jun 2011 20:42:38 +0000 (16:42 -0400)]
Simplify building with the Android NDK.
Check --host against *-*-linux-android* for Android-specific configure fixes,
and improve **/Makefile.am to simplify Android support:
./configure \
--build=`./config.guess` \
--host=armv5-linux-androideabi \
--target=armv5-linux-androideabi \
--enable-nls=no --with-mcs-docs=no --enable-mcs-build=no \
CC="/path/to/ndk/arm-linux-androideabi-gcc --sysroot=/path/to/sysroot" \
AR="..." AS="..." CPP="..." CXX="..." LD="..." RANLIB="..." STRIP="..."
CFLAGS="-DARM_FPU_NONE=1" CXXFLAGS="-DARM_FPU_NONE=1"
See also Android NDK docs/STANDALONE-TOOLCHAIN.html.
The Android NDK/bionic is "interesting", in that it's lacking header files and
macros normally present on Linux which otherwise break the build (e.g. no
<link.h> which breaks Boehm support). Using --host with an android target
works around the known issues, simplifying the building of libmonosgen-2.0.so
with the Android NDK toolchain.
Marek Safar [Fri, 3 Jun 2011 13:32:54 +0000 (14:32 +0100)]
Fix parsing of generic partial methods
Marek Safar [Fri, 3 Jun 2011 10:02:15 +0000 (11:02 +0100)]
Remove gitattributes
Zoltan Varga [Fri, 3 Jun 2011 13:23:22 +0000 (15:23 +0200)]
Make mono_gc_pthread_create () call pthread_create () directly, so libgc pthread redirection works again. Make mono_threads_pthread_create () call mono_gc_pthread_create () instead. Fixes the OpenBSD build among others.
Zoltan Varga [Fri, 3 Jun 2011 10:28:52 +0000 (12:28 +0200)]
Fix the previous change.
Zoltan Varga [Fri, 3 Jun 2011 06:37:00 +0000 (08:37 +0200)]
Fix a warning.
Atsushi Eno [Fri, 3 Jun 2011 10:46:01 +0000 (19:46 +0900)]
Support RemoteEndpointMessageProperty.
Robert Nagy [Fri, 3 Jun 2011 08:01:01 +0000 (10:01 +0200)]
Fix OpenBSD. KERN_PROC2 is not needed anymore here.
Marek Safar [Fri, 3 Jun 2011 07:44:54 +0000 (08:44 +0100)]
Block await inside unsafe context
Marek Safar [Fri, 3 Jun 2011 07:44:32 +0000 (08:44 +0100)]
Add gitignore
Zoltan Varga [Thu, 2 Jun 2011 21:40:02 +0000 (23:40 +0200)]
Fix NOMAP32BIT support in specific trampolines.
Robert Nagy [Thu, 2 Jun 2011 21:39:41 +0000 (23:39 +0200)]
Fix openbsd build.
Marek Safar [Thu, 2 Jun 2011 15:12:14 +0000 (16:12 +0100)]
Initial async support for simple Task
Marek Safar [Thu, 2 Jun 2011 14:52:12 +0000 (15:52 +0100)]
[697674] Fixes MEF embedded string resources
Marek Safar [Wed, 1 Jun 2011 17:19:38 +0000 (18:19 +0100)]
Fix error number
Jb Evain [Thu, 2 Jun 2011 14:40:27 +0000 (16:40 +0200)]
update tuner
Jb Evain [Thu, 2 Jun 2011 14:39:24 +0000 (16:39 +0200)]
update Mono.Cecil.Mdb
Jb Evain [Thu, 2 Jun 2011 14:39:06 +0000 (16:39 +0200)]
update Mono.Cecil
Tom Philpot [Wed, 1 Jun 2011 23:48:26 +0000 (16:48 -0700)]
Fixes crash when calling Process.Start on a file with a ' in the path when UseShellExecute is set to false
Rodrigo Kumpera [Wed, 1 Jun 2011 17:55:30 +0000 (14:55 -0300)]
Handle a vtable layout corner case.
class.c (mono_class_inflate_generic_method_full_checked): Don't
inflate a method if the provided context won't change it.
This change, in particular, avoid inflating a generic method
of a non-generic class if the context has class only vars.
This fixes #696593 as the above was causing the vtable of
Class3 ending up with an inflated Class1::Method<> that
comes from inflated Class2<object> parent.
Then the parent override pass would collect a non-inflated
Class1::Method<> overide that would then not match the one
on the vtable causing Class3 to have an abstract method on
its vtable and thus failing to load.
Big explanation means tricky change, might break tons of stuff.
Rodrigo Kumpera [Wed, 1 Jun 2011 17:54:35 +0000 (14:54 -0300)]
Improve vtable layout tracing.
Mark Probst [Tue, 31 May 2011 21:04:26 +0000 (23:04 +0200)]
[sgen] Split the minor scan function between parallel and non-parallel.
In making the nursery collector configurable between parallel vs
non-parallel we made the scan function check which one it was for each
pointer encountered, which is a potential performance issue. This
brings things back to normal.
Mark Probst [Tue, 31 May 2011 21:02:33 +0000 (23:02 +0200)]
[sgen] Make nursery collector for parallel M&S non-parallel again.
Thread synchronization for the parallel nursery collector is (still)
too high to pay off. Also, it currently crashes on the corlib
testsuite.
It can now be turned on and off with the nursery_collector_is_parallel
variable. We will make this configurable via MONO_GC_PARAMS once the
bug is found and fixed.
Jonathan Pryor [Tue, 31 May 2011 17:32:42 +0000 (13:32 -0400)]
[mdoc] Add MonoDevelop project files.
Code completion is nice...
Marek Safar [Tue, 31 May 2011 17:06:08 +0000 (18:06 +0100)]
Better test
Marek Safar [Tue, 31 May 2011 16:57:52 +0000 (17:57 +0100)]
[697236] Generic type parameter attributes can precede variance modifiers
Marek Safar [Tue, 31 May 2011 15:57:25 +0000 (16:57 +0100)]
[696822] Reset eval completion on error handling
Atsushi Eno [Tue, 31 May 2011 11:56:30 +0000 (20:56 +0900)]
Support WebHttpBinding configuration.
Marek Safar [Tue, 31 May 2011 11:43:20 +0000 (12:43 +0100)]
Persist parsed values of literal constants in full ast mode
Marek Safar [Tue, 31 May 2011 10:28:49 +0000 (11:28 +0100)]
Fix location of numeric literals
Zoltan Varga [Tue, 31 May 2011 00:56:09 +0000 (02:56 +0200)]
Fix some warnings.
Atsushi Eno [Tue, 31 May 2011 09:51:36 +0000 (18:51 +0900)]
Ref parameter was not covered by ParameterInfo.IsOut. Fixed bug #696784.
Zoltan Varga [Mon, 30 May 2011 23:38:48 +0000 (01:38 +0200)]
Emit write barriers after/before volatile loads/stores.
Rodrigo Kumpera [Mon, 30 May 2011 21:31:24 +0000 (18:31 -0300)]
batch compiler fails on osx due to thread exaustion
Rodrigo Kumpera [Mon, 30 May 2011 21:30:23 +0000 (18:30 -0300)]
Regression test #696817
Rodrigo Kumpera [Mon, 30 May 2011 21:11:08 +0000 (18:11 -0300)]
Properly handle field RVA under moving collector.
* reflection.c (typebuilder_setup_fields): Alloc RVA data
on the image mempool so it works with a moving collector.
Fixes #696817
Marek Habersack [Mon, 30 May 2011 20:18:53 +0000 (13:18 -0700)]
Merge pull request #97 from skolima/master
Second part of Microsoft.Build.Construction: loading project files
Rodrigo Kumpera [Mon, 30 May 2011 18:58:27 +0000 (15:58 -0300)]
Fix invalid instantiations on method calls.
* verify.c: Disalow GTDs on method position.
Fixes #656913
Rodrigo Kumpera [Mon, 30 May 2011 15:21:32 +0000 (12:21 -0300)]
Fix sgen under xen
Gonzalo Paniagua Javier [Mon, 30 May 2011 01:06:53 +0000 (18:06 -0700)]
Merge pull request #107 from duarten/master
Allow a thread to set its interruption state
Duarte Nunes [Sun, 29 May 2011 20:38:21 +0000 (21:38 +0100)]
Threads can now self-interrupt, as expected
Leszek 'skolima' Ciesielski [Fri, 29 Apr 2011 20:40:22 +0000 (22:40 +0200)]
[MSBuild] Microsoft.Build.Construction loading project files
Mark Probst [Sat, 28 May 2011 15:06:15 +0000 (17:06 +0200)]
[sgen] Allocate small IDs for worker threads.
Worker threads require SMR to work because they use the lock-free
internal allocator, so they need to have a small ID. We introduce a
new function in mono-threads that just allocates and registers a small
ID for a thread.
Ankit Jain [Fri, 27 May 2011 19:49:16 +0000 (01:19 +0530)]
[xbuild] Add property $(SkipCopyUnchangedFiles)
Microsoft.Common.targets: Use new property
$(SkipCopyUnchangedFiles) to control SkipUnchangedFiles property
of the various Copy tasks. Also, allow skipping when
copying CopyToOutputDirectory files in PreserveNewest case.
Patch from Tom Philpot <tom.philpot@logos.com>
Marek Safar [Fri, 27 May 2011 10:05:20 +0000 (03:05 -0700)]
Merge pull request #106 from XTZGZoReX/master
mcs: Remove ctest target (dead NET_1_0 code)
XTZGZoReX [Fri, 27 May 2011 12:03:21 +0000 (14:03 +0200)]
mcs: Remove ctest target (dead NET_1_0 code).
Atsushi Eno [Fri, 27 May 2011 08:29:05 +0000 (17:29 +0900)]
Add test for XmlMembersMapping.TypeName and .Namespace (not very useful yet...)
Atsushi Eno [Fri, 27 May 2011 08:24:01 +0000 (17:24 +0900)]
Fill type info in MessagePartDescription from XmlSerializer-based wsdl importer.
It still needs some fixes to import message elements.
Rodrigo Kumpera [Thu, 26 May 2011 23:36:39 +0000 (20:36 -0300)]
Fix HEAVY_STATS
Rodrigo Kumpera [Thu, 26 May 2011 23:36:23 +0000 (20:36 -0300)]
Add stats for the nursery allocator
Rodrigo Kumpera [Thu, 26 May 2011 22:05:26 +0000 (19:05 -0300)]
Sanitize assertions in the unmanaged object allocator.
Rodrigo Kumpera [Thu, 26 May 2011 20:45:15 +0000 (17:45 -0300)]
Change the managed allocator so the tlab wastage trick works with it enabled.
Rodrigo Kumpera [Thu, 26 May 2011 15:39:58 +0000 (12:39 -0300)]
Bound tlab wastage to SGEN_MAX_NURSERY_WASTE.
* sgen-gc.c: When a new tlab is needed we check if we should
alloc the object directly into the nursery and spare discarding
the current tlab.
This reduces nursery wastage by 5x on httplistener. It's a silly
test, but should how important this change is.
Rodrigo Kumpera [Thu, 26 May 2011 15:39:23 +0000 (12:39 -0300)]
Cleanup and move nursery allocator tunables to sgen-gc.h
Rodrigo Kumpera [Thu, 26 May 2011 23:08:32 +0000 (20:08 -0300)]
Add nursery wastage accounting under heavy stats
Rodrigo Kumpera [Thu, 26 May 2011 14:25:07 +0000 (11:25 -0300)]
Introduce mono_sgen_nursery_retire_region.
* sgen-nursery-allocator.c: Add function that is notified of
wasted tlab space.
Rodrigo Kumpera [Wed, 25 May 2011 04:54:13 +0000 (01:54 -0300)]
Implement nursery allocation tracking.
* sgen-nursery-allocator.c: Add lighweight logging of
all nursery operations done by the allocator and have
functions that spill the data. This is very helpfull to
debug and analyse nursery related issues.
Rodrigo Kumpera [Tue, 17 May 2011 06:23:30 +0000 (03:23 -0300)]
Implement lock free nursery allocation.
* sgen-gc.c (mono_gc_try_alloc_obj_nolock): Now try to
expand the TLAB or allocate directly from the nursery.
* sgen-nursery-allocator.c (alloc_from_fragment): Use
M. Michael's linked-list removal to have a lock-free
walkable linked-list. SMR is not required since we never
reclaim fragments.
Rodrigo Kumpera [Tue, 17 May 2011 03:38:13 +0000 (00:38 -0300)]
Use a separate field to hold freed fragments
Rodrigo Kumpera [Tue, 17 May 2011 02:51:11 +0000 (23:51 -0300)]
Kill nursery_next, now each fragment has a bump pointer.
Rodrigo Kumpera [Mon, 16 May 2011 21:38:48 +0000 (18:38 -0300)]
Add mono_sgen_can_alloc_size and trim some unusued parts of the API
Rodrigo Kumpera [Sat, 14 May 2011 22:43:40 +0000 (19:43 -0300)]
Finish spliting sgen-nursery-allocator into a separate compilation unit
Rodrigo Kumpera [Sat, 14 May 2011 21:38:35 +0000 (18:38 -0300)]
Export mono_sgen_get_nursery_clear_policy from sgen-gc
Rodrigo Kumpera [Sat, 14 May 2011 21:26:11 +0000 (18:26 -0300)]
Rename functions that will be part of the nursery-allocator API.
* sgen-gc.c: Move more nursery-allocator behavior to
the new file.
Rodrigo Kumpera [Sat, 14 May 2011 21:04:04 +0000 (18:04 -0300)]
Move more nursery fragment code from sgen-gc.c
Rodrigo Kumpera [Sat, 14 May 2011 18:56:15 +0000 (15:56 -0300)]
Move nursery fragment handling to a separate file
Marek Safar [Thu, 26 May 2011 10:08:57 +0000 (03:08 -0700)]
Merge pull request #104 from XTZGZoReX/master
[repl] Make some output consistent.
XTZGZoReX [Thu, 26 May 2011 11:40:26 +0000 (13:40 +0200)]
[repl] Make some output consistent.
Marek Safar [Thu, 26 May 2011 08:28:42 +0000 (09:28 +0100)]
Inferred type argument cannot be of method group