Paolo Molaro [Wed, 10 Nov 2010 09:34:05 +0000 (10:34 +0100)]
Profiler: added new API for notification of thread names.
* profiler-private.h, profiler.c, profiler.h: users can now get a callback
when the name of a thread gets set when MONO_PROFILE_THREADS is enabled.
* threads.c: notify profilers about thread name changes.
Paolo Molaro [Tue, 9 Nov 2010 13:57:39 +0000 (14:57 +0100)]
Log profiler: added support for GC handles tracking.
* proflog.c, proflog.h: added support for tracking GC handle creation
and destruction. Updated profiler version.
* decode.c: added support for GC handles in the GC report, including
backtraces.
Paolo Molaro [Tue, 9 Nov 2010 13:55:31 +0000 (14:55 +0100)]
Added profiler interface to track GC handles.
* profiler-private.h, profiler.c, profiler.h: new API to get notiffications
when GC handles are created or destroyed.
* gc.c: notify the profiler on GC handle creation/destruction.
Marek Safar [Wed, 10 Nov 2010 09:04:48 +0000 (09:04 +0000)]
Reorder logic in DMO type conversion
Marek Safar [Wed, 10 Nov 2010 09:00:51 +0000 (09:00 +0000)]
Fixes a logic error in filtering out operators like methods
Marek Safar [Tue, 9 Nov 2010 19:23:24 +0000 (19:23 +0000)]
Don't crash on liften null left/right shift
Marek Safar [Tue, 9 Nov 2010 18:59:05 +0000 (18:59 +0000)]
Logical binary operarions with dynamic arguments have to be unfolded
Zoltan Varga [Wed, 10 Nov 2010 08:24:34 +0000 (09:24 +0100)]
Add an AOT flag for aot images compiled with soft-debugging support, and avoid loading aot images without this flag when running with the soft debugger.
Ankit Jain [Wed, 10 Nov 2010 05:18:42 +0000 (10:48 +0530)]
[xbuild] Emit /platform: for *mcs
Emit /platform:foo for the *mcs. Based on patch from
technomage1972 <dellis1972@googlemail.com> .
Geoff Norton [Wed, 10 Nov 2010 04:39:11 +0000 (23:39 -0500)]
[OSX] Prevent an invalid write to mono_lmf_addr
mono_set_lmf () calls *(mono_get_lmf_addr ()) = lmf, but
mono_get_lmf_addr could potentially point to the address we just
g_free'd. Ensure that we clear the settings, before freeing the memory.
Geoff Norton [Wed, 10 Nov 2010 04:37:03 +0000 (23:37 -0500)]
[OSX] Disabled eglib tests build by default
On OSX our local system glib might be 32 or 64 bit, and we have
no simple way of testing wether it meeds the needs of the current
built, lets just disable tests by default for now
Alex Fort [Tue, 9 Nov 2010 20:22:49 +0000 (15:22 -0500)]
Add support for the CancelKeyPress event on Windows
Adds a call to the Win32 function SetConsoleCtrlHandler for Windows,
which adds the DoWindowsConsoleCancelEvent wrapper for
DoConsoleCancelEvent to the Ctrl-C handler when an event handler is
added, and removes the handler once all event handlers are removed.
Rodrigo Kumpera [Tue, 9 Nov 2010 20:04:32 +0000 (18:04 -0200)]
Add test for transitive constraint validation.
Rodrigo Kumpera [Tue, 9 Nov 2010 20:00:53 +0000 (18:00 -0200)]
Fix banshee breakage with trunk.
* verify.c (mono_generic_param_is_constraint_compatible):
Handle transitive constraints where one type can only satisfy
the constraints required by means of the other types it's
constainted to. For example:
Bar<K> where K : IFace
Foo<T, U> where T : U where U : IFace
Bar<T>
On the above example, T can only satisfy K constraint by means
of the constraints that U has.
Zoltan Varga [Tue, 9 Nov 2010 19:00:23 +0000 (20:00 +0100)]
Fix the previous change.
Zoltan Varga [Tue, 9 Nov 2010 18:52:33 +0000 (19:52 +0100)]
Speed up Thread.ManagedThreadId.
Andreia Gaita [Tue, 9 Nov 2010 17:48:28 +0000 (17:48 +0000)]
[Xml] Only call Close on the base Writer if it hasn't been closed yet. Fixes #651647
The serialization classes provided by the SL toolkit
(System.Runtime.Serialization.dll) don't like having Close called more than
once, so it seems that they don't check their own state and we have to do it
to avoid making repeated Close calls.
Atsushi Eno [Tue, 9 Nov 2010 16:11:44 +0000 (01:11 +0900)]
Add and/or altered a bunch of XamlXmlReader tests based on common reader tests.
Lots of tests are duplicate for the same XML inputs, so they are just removed.
Rodrigo Kumpera [Tue, 9 Nov 2010 15:10:08 +0000 (13:10 -0200)]
Fix handling of LastIndexOf and empty strings.
* String.cs (LastIndexOf): All all overloads to
be compatible with MS with empty strings.
* String.cs (LastIndexOfAny): Ditto.
* StringTest.cs: Add tests for the above.
Fixes #605340
Jérémie Laval [Tue, 9 Nov 2010 14:56:32 +0000 (14:56 +0000)]
Remove CurrentLockState in ReaderWriterLockSlim and reuse ThreadLockState instance more often.
Jérémie Laval [Tue, 9 Nov 2010 13:41:53 +0000 (13:41 +0000)]
Use ulong to represent element hashes internally allowing full width 32bits hashes. Replace SpinLock+ManualResetEvent based bucket resize with a simpler reader-writer lock. Revert from two layers storage to a bare array storage for buckets temporarily as it causes a weird concurrency bug.
Jérémie Laval [Mon, 8 Nov 2010 18:20:02 +0000 (18:20 +0000)]
Small condition fix in ReaderWriterLockSlim, avoid an extra loop pass.
Marek Habersack [Tue, 9 Nov 2010 14:14:52 +0000 (15:14 +0100)]
[wcf] AJAX GET requests work now.
HttpListenerManagerTable always looked up HttpListerManager instances using the full URI
while it should have disregarded the /operation?parameters part of the request in order
to match the service endpoint's base address.
Marek Safar [Tue, 9 Nov 2010 11:32:01 +0000 (11:32 +0000)]
Import declaring type base type when walking up the tree
Atsushi Eno [Tue, 9 Nov 2010 10:02:45 +0000 (19:02 +0900)]
Making XamlObjectReader tests for common basis to XamlXmlReader.
... as it turned out that their behaviors are almost the same.
Paolo Molaro [Tue, 9 Nov 2010 08:50:44 +0000 (09:50 +0100)]
Log profiler: osx/win32 portability fixes.
Zoltan Varga [Tue, 9 Nov 2010 08:27:25 +0000 (09:27 +0100)]
Add a workaround for a failed assert in the amd64 EH code which happens when running under the soft debugger.
Zoltan Varga [Tue, 9 Nov 2010 07:52:55 +0000 (08:52 +0100)]
Fix the DISABLE_REFLECTION_EMIT build. Fixes #652188.
Zoltan Varga [Tue, 9 Nov 2010 07:52:26 +0000 (08:52 +0100)]
Tidy up the configure output a bit.
Zoltan Varga [Tue, 9 Nov 2010 07:51:46 +0000 (08:51 +0100)]
Fix a warning.
Atsushi Eno [Tue, 9 Nov 2010 06:41:01 +0000 (15:41 +0900)]
Fix generic XamlTypeName output and GetType() to get some xml reader case working.
Marek Habersack [Tue, 9 Nov 2010 01:15:11 +0000 (02:15 +0100)]
[asp.net] Don't instantiate the hash algorithm used to encrypt resource URLs on each request if it can be reused.
The algorithm instance is kept in a thread-local variable.
Marek Habersack [Tue, 9 Nov 2010 00:40:59 +0000 (01:40 +0100)]
[asp.net] Optimize buffer reuse in HttpWriter.
When HttpWriter requests a byte buffer to send data to the output stream it now uses
a thread-local static buffer pre-allocated to at most 128KB (all threads' buffers should
not exceed 4MB). If a buffer exceeding the static buffer size is requested, a transient
one is allocated.
Marek Habersack [Tue, 9 Nov 2010 00:39:49 +0000 (01:39 +0100)]
[asp.net] A micro-optimization to not call String.Format too much in a loop.
Paolo Molaro [Mon, 8 Nov 2010 20:01:12 +0000 (21:01 +0100)]
Log profiler: disable zlib support on windows.
Someone on windows needs to look at this: it defines HAVE_ZLIB but
doesn't actually have it (missing zlib.h or not linking to -lz).
Zoltan Varga [Mon, 8 Nov 2010 20:02:08 +0000 (21:02 +0100)]
Revert "Avoid building the log profiler on windows, it has no libz."
This reverts commit
3d81ea258fb94930af86c1fd089c712ca8c1d096.
Zoltan Varga [Mon, 8 Nov 2010 20:00:33 +0000 (21:00 +0100)]
Avoid building the log profiler on windows, it has no libz.
Rodrigo Kumpera [Mon, 8 Nov 2010 19:40:10 +0000 (17:40 -0200)]
Add regression test for ##595044
Rodrigo Kumpera [Mon, 8 Nov 2010 19:34:38 +0000 (17:34 -0200)]
IL can't reference literal fields.
* verify.c (verifier_load_field): Fail if the
field is literal.
Fixes #595044
Marek Safar [Mon, 8 Nov 2010 19:28:37 +0000 (19:28 +0000)]
API compatibility work
Marek Safar [Mon, 8 Nov 2010 19:27:43 +0000 (19:27 +0000)]
Emit correctly EndInvoke parameters attributes and names
Marek Safar [Mon, 8 Nov 2010 16:36:53 +0000 (16:36 +0000)]
Fixed ambiguity for overload resolution between params and optional parameter of same type
Marek Safar [Mon, 8 Nov 2010 10:06:35 +0000 (10:06 +0000)]
Clean up event expression assigning error reporting
Marek Safar [Mon, 8 Nov 2010 10:04:02 +0000 (10:04 +0000)]
New test
Marek Safar [Mon, 8 Nov 2010 09:32:10 +0000 (09:32 +0000)]
[651547] Check definitely assigned struct this access correctly.
Marek Safar [Mon, 8 Nov 2010 09:28:23 +0000 (09:28 +0000)]
Removed platform attributes
Marek Safar [Sat, 6 Nov 2010 18:30:32 +0000 (18:30 +0000)]
Report error duplicate only when expected error has been found
Marek Safar [Sat, 6 Nov 2010 18:28:58 +0000 (18:28 +0000)]
Add missing default ctor call
Zoltan Varga [Mon, 8 Nov 2010 19:22:30 +0000 (20:22 +0100)]
Fix a typo in process_breakpoint_inner which doesn't break our tests for some reason.
Paolo Molaro [Mon, 8 Nov 2010 19:03:38 +0000 (20:03 +0100)]
Log profiler: better object tracking.
* decode.c: the --track option can now take more than one object address to track.
Added the --find option to automatically track objects of a given size and/or
type name. When backtrace and heapshot information is present, we can now, for
example, find when and where all the byte[] arrays bigger than a certain size
have been created and which other heap objects reference them.
Paolo Molaro [Mon, 8 Nov 2010 16:33:26 +0000 (17:33 +0100)]
Log profiler: more timer compatibility fixes.
Paolo Molaro [Mon, 8 Nov 2010 16:06:45 +0000 (17:06 +0100)]
Log profiler: track and display contended monitor wait times.
Paolo Molaro [Mon, 8 Nov 2010 15:30:56 +0000 (16:30 +0100)]
Log profiler: fill and display a few more data fields in the header.
Paolo Molaro [Mon, 8 Nov 2010 14:16:03 +0000 (15:16 +0100)]
More log profiler doc clarifications.
Rodrigo Kumpera [Mon, 8 Nov 2010 15:30:20 +0000 (13:30 -0200)]
Don't allow zero local var tokens.
* metadata-verify.c (is_valid_method_header): The local
token cannot have a zero index.
* metadata.c (mono_metadata_parse_mh_full): Fail if locals
token index is zero.
Fixes #651682
Zoltan Varga [Mon, 8 Nov 2010 15:00:09 +0000 (16:00 +0100)]
Transition ves_icall_get_frame_info () to use find_jit_info_ext (), remove the managed->native wrapper hacks.
Marek Habersack [Mon, 8 Nov 2010 14:41:18 +0000 (15:41 +0100)]
[asp.net] Optimize memory usage a bit. String hashes are cached in thread-local storage.
Rodrigo Kumpera [Fri, 5 Nov 2010 20:20:29 +0000 (18:20 -0200)]
Work with classes been loaded.
* metadata.c (do_mono_metadata_parse_type): It's possible
that we're decoding a reference to a class that it's currently
been loaded so byval_arg.type will be zero.
Rodrigo Kumpera [Fri, 5 Nov 2010 20:19:54 +0000 (18:19 -0200)]
Fix FieldInfo::GetFieldFromHandle signature.
Paolo Molaro [Mon, 8 Nov 2010 13:44:51 +0000 (14:44 +0100)]
Fixed make dist for log profiler.
Paolo Molaro [Mon, 8 Nov 2010 11:40:55 +0000 (12:40 +0100)]
Emit object heap sizes for allocations and heap-shot in the log profiler.
Atsushi Eno [Mon, 8 Nov 2010 11:37:37 +0000 (20:37 +0900)]
Forgot to add a test xml.
Atsushi Eno [Mon, 8 Nov 2010 11:35:12 +0000 (20:35 +0900)]
Fix positional parameter argument output location check.
MarkupExtension with multiple arguments are prohibited at top level.
Paolo Molaro [Mon, 8 Nov 2010 11:29:13 +0000 (12:29 +0100)]
Added a check for a corner case of a stack walk during thread startup.
* mini-exceptions.c: sometimes an allocation happens at thread startup
where the data structures are not yet setup to allow stack walking.
If we request a stack trace there, we'd crash. To reproduce the crash
without this change, just run xsp with the log profiler with the nocalls
option.
Atsushi Eno [Mon, 8 Nov 2010 11:22:09 +0000 (20:22 +0900)]
Fix attribute state management to handle x:Key inside MarkupExtension correctly.
Namely TypeExtension (it got working).
Paolo Molaro [Mon, 8 Nov 2010 09:52:20 +0000 (10:52 +0100)]
More log profiler portability and warning fixes.
Paolo Molaro [Mon, 8 Nov 2010 09:38:41 +0000 (10:38 +0100)]
Integrated the log profiler in the build, warning and portability fixes.
Paolo Molaro [Sun, 7 Nov 2010 18:19:29 +0000 (19:19 +0100)]
Log profiler: added copyright header and comments.
Paolo Molaro [Sun, 7 Nov 2010 18:07:08 +0000 (19:07 +0100)]
Ported log profiler to windows (untested) and OSX time factor fix.
Paolo Molaro [Sun, 7 Nov 2010 17:05:08 +0000 (18:05 +0100)]
Documented the current version for the log profiler data format.
Zoltan Varga [Mon, 8 Nov 2010 10:19:39 +0000 (11:19 +0100)]
Make frames of type FRAME_TYPE_MANAGED_TO_NATIVE act as a marker, i.e. the caller should ignore them and unwind once more to get the last managed frame and its associated context.
Atsushi Eno [Mon, 8 Nov 2010 08:46:38 +0000 (17:46 +0900)]
Fix PositionalParameter serialization in collections.
Dictionary still needs another fix.
Atsushi Eno [Mon, 8 Nov 2010 07:51:32 +0000 (16:51 +0900)]
Forgot to remove old internal stuff.
Atsushi Eno [Mon, 8 Nov 2010 07:41:43 +0000 (16:41 +0900)]
Fixed member order in Dictionary key and item in XamlObjectReader.
This requires messy and complicated change and sort of illogical member ordering!
Zoltan Varga [Mon, 8 Nov 2010 07:04:22 +0000 (08:04 +0100)]
Fix llvm build with LLVM 2.8.
Mark Probst [Sun, 7 Nov 2010 01:46:11 +0000 (02:46 +0100)]
Merge branch 'marksweep-evacuate'
Mark Probst [Sat, 6 Nov 2010 14:29:31 +0000 (15:29 +0100)]
[sgen] Don't compile evacuation for parallel mark.
Parallel Mark doesn't yet support evacuation, so don't compile
it in.
Mark Probst [Sat, 30 Oct 2010 14:22:30 +0000 (16:22 +0200)]
[sgen] User-settable evacuation threshold.
A MONO_GC_PARAMS option for setting the evacuation
threshold.
Mark Probst [Sat, 30 Oct 2010 12:40:05 +0000 (14:40 +0200)]
[sgen] Mark&Sweep evacuation.
When the occupancy for some block size falls below a certain
threshold the objects in that block size will be evacuated in
the next major collection, resulting in optimal occupancy.
Mark Probst [Thu, 28 Oct 2010 22:23:08 +0000 (00:23 +0200)]
[sgen] Function for querying current collection generation.
This lets the major collector query whether the current collection
is a minor or a major one.
Mark Probst [Mon, 18 Oct 2010 12:30:39 +0000 (14:30 +0200)]
[sgen] Dump Mark&Sweep heap occupancy.
For each block size dump the occupancy to the heap-dump
file.
Mark Probst [Wed, 20 Oct 2010 12:18:31 +0000 (14:18 +0200)]
[sgen] Flush the binary protocol file when protocol is flushed.
Zoltan Varga [Sat, 6 Nov 2010 18:27:03 +0000 (19:27 +0100)]
Remove the s390 hacks from the EH code by decreasing the ip stored into ctx->ip by 1, as it is done on all other platforms.
Zoltan Varga [Sat, 6 Nov 2010 15:00:25 +0000 (16:00 +0100)]
Add another assert to the amd64 EH code.
Zoltan Varga [Sat, 6 Nov 2010 14:57:49 +0000 (15:57 +0100)]
Add a few exceptions to the EH code to determine whenever they hold on all platforms in all cases.
Zoltan Varga [Sat, 6 Nov 2010 14:16:25 +0000 (15:16 +0100)]
Reorganize mono_handle_exception_internal ():
* Use mono_find_jit_info_ext ()
* Avoid putting the main body of code inside two if's.
Zoltan Varga [Sat, 6 Nov 2010 09:14:14 +0000 (10:14 +0100)]
Rework an if () inside an #ifdef since it confuses emacs.
Zoltan Varga [Sat, 6 Nov 2010 07:26:14 +0000 (08:26 +0100)]
Fix encode/decode_sleb128 () on 64 bit systems.
Marek Safar [Fri, 5 Nov 2010 23:03:29 +0000 (23:03 +0000)]
Add *.xml to ignore list
Marek Safar [Fri, 5 Nov 2010 22:56:38 +0000 (22:56 +0000)]
Merge branch 'marek'
Geoff Norton [Fri, 5 Nov 2010 21:23:29 +0000 (17:23 -0400)]
Implement the new logging profiler on OSX
Atsushi Eno [Fri, 5 Nov 2010 19:14:37 +0000 (04:14 +0900)]
Dictionary key might be inappropriately serialized into an attribute.
Sebastien Pouliot [Fri, 5 Nov 2010 18:38:12 +0000 (14:38 -0400)]
Add CookieParser to Moonlight's System.Net assembly
* moonlight_raw_System.Net.dll.sources: Add new CookieParser to the
build
Sebastien Pouliot [Fri, 5 Nov 2010 18:35:30 +0000 (14:35 -0400)]
Refactoring to ease fix cookie support in moonlight client stack
* System.Net/CookieParser.cs: Add more common/shared code
* System.Net/HttpWebResponse.cs: Move out CookieParser class and some
utility methods so they can be shared with Moonlight http client stack
* System.dll.sources:
* mobile_System.dll.sources:
* moonlight_shared_System.dll.sources:
Add new CookieParser.cs to the build
Atsushi Eno [Fri, 5 Nov 2010 18:32:08 +0000 (03:32 +0900)]
Add support for ContentPropertyAttribute (e.g. Reference) in XamlXmlWriter.
Atsushi Eno [Fri, 5 Nov 2010 18:18:15 +0000 (03:18 +0900)]
Implement member pending at StartMember when it should be indeterminant. Lots of code cleanup.
Zoltan Varga [Fri, 5 Nov 2010 18:10:07 +0000 (19:10 +0100)]
Enlarge try-finally blocks preceeded by a Monitor.Enter () call to include the call itself, to avoid races inherent in such code. Fixes #651546.
Atsushi Eno [Fri, 5 Nov 2010 17:11:17 +0000 (02:11 +0900)]
Add new XamlXmlWriter implementation. Marked some as NotWorking while removed a lot.
Atsushi Eno [Fri, 5 Nov 2010 17:10:18 +0000 (02:10 +0900)]
MarkupExtension type xml names are omitted their "Extension" parts.
Atsushi Eno [Fri, 5 Nov 2010 17:09:24 +0000 (02:09 +0900)]
indent text xml.