Andrew Jorgensen [Tue, 31 Aug 2010 15:38:38 +0000 (09:38 -0600)]
Revert "Make the 'LABELS' make variable the same as the 'TEST_HARNESS_VERBOSE' variable, because it is easier to remember and type."
Not compatible with the version of make we are using on windows:
*** only one `else' per conditional.
This reverts commit
fb1ba2f139d26a7b4de258d4ca83bcc3d2db79be.
Jérémie Laval [Tue, 31 Aug 2010 16:50:47 +0000 (17:50 +0100)]
Fix non 4.0 build of ReaderWriterLockSlim.
It needs to be cleaned up though.
Zoltan Varga [Tue, 31 Aug 2010 16:39:15 +0000 (18:39 +0200)]
AOT mscorlib along with gmcs.
Jérémie Laval [Tue, 31 Aug 2010 15:44:50 +0000 (16:44 +0100)]
Add unit tests for recursive acquire of a Write or Upgradeable lock from a Read lock state
Jérémie Laval [Tue, 31 Aug 2010 15:19:02 +0000 (16:19 +0100)]
Add unit test for ReaderWriterLockSlim basic recursion support.
Jérémie Laval [Tue, 31 Aug 2010 15:18:13 +0000 (16:18 +0100)]
Enable basic recursion support in ReaderWriterLockSlim. Works when reacquiring lock of the same type.
Jérémie Laval [Tue, 31 Aug 2010 13:28:58 +0000 (14:28 +0100)]
Use ManualResetEventSlim instances to wait for lock changes instead of hardcoded Thread.Sleep calls in ReaderWriterLockSlim.
Jérémie Laval [Tue, 31 Aug 2010 11:14:38 +0000 (12:14 +0100)]
Remove unused bit position constants in ReaderWriterLockSlim
Jérémie Laval [Tue, 31 Aug 2010 10:28:21 +0000 (11:28 +0100)]
Tune thread count in ReaderWriterLockSlim unit tests
Jérémie Laval [Tue, 31 Aug 2010 10:26:22 +0000 (11:26 +0100)]
Fix ReaderWriterLockSlim unit tests.
In the latest revision of the framework, ReaderWriterLockSlim is totally fair and thus a call to TryEnterReadLock musn't succeed when writers are waiting to get the lock before them (and when the lock is currently in read mode).
Jérémie Laval [Tue, 31 Aug 2010 10:23:52 +0000 (11:23 +0100)]
Fix ReaderWriterLockSlim unit tests.
As stated by MSDN, to be fully downgraded to a read lock state a call to ExitUpgradableReadLock must be issued straight after EnterReadLock.
Jérémie Laval [Tue, 31 Aug 2010 10:22:02 +0000 (11:22 +0100)]
Finish reimplementation of ReaderWriterLockSlim so that it pass unit tests.
Jérémie Laval [Tue, 31 Aug 2010 10:17:39 +0000 (11:17 +0100)]
Factorize tatas pattern in TryRelaxedSet method in AtomicBoolean, add AtomicBoolean to the compilation file list for System.Core
Jérémie Laval [Fri, 27 Aug 2010 15:59:46 +0000 (16:59 +0100)]
Refactor ThreadLockState acquisition into a real per-thread, per-rwlock-instance value
Jérémie Laval [Thu, 26 Aug 2010 15:56:49 +0000 (16:56 +0100)]
Rework ReaderWriterLockSlim to use simpler Interlocked arithmetic.
Rolf Bjarne Kvinge [Tue, 31 Aug 2010 10:54:08 +0000 (12:54 +0200)]
Trim the uri in UriParser::GetComponents, just like we do in Uri::Parse
Rolf Bjarne Kvinge [Tue, 31 Aug 2010 14:17:23 +0000 (16:17 +0200)]
Make moonlight build again
Zoltan Varga [Tue, 31 Aug 2010 14:12:36 +0000 (16:12 +0200)]
Add AOT support for GC inline write barriers.
Ankit Jain [Tue, 31 Aug 2010 12:01:31 +0000 (17:31 +0530)]
[xbuild] Task 'Touch' should pass even if the file already exists.
Microsoft.Build.Tasks/Microsoft.Build.Tasks/Touch.cs:
Task should 'succeed' even if the files already exist.
Ankit Jain [Tue, 31 Aug 2010 11:59:31 +0000 (17:29 +0530)]
[xbuild] Quote filenames for resgen.
Microsoft.Build.Tasks/Microsoft.Build.Tasks/GenerateResource.cs:
Quote filenames passed to resgen.
Ankit Jain [Tue, 31 Aug 2010 11:38:55 +0000 (17:08 +0530)]
[xbuild] Fix 635767. Support enums for task property Outputs.
Add support for task properties to be enums, when publishing
Output.
Marek Safar [Tue, 31 Aug 2010 09:43:40 +0000 (10:43 +0100)]
Merge branch 'master' of github.com:mono/mono
Marek Safar [Tue, 31 Aug 2010 09:41:15 +0000 (10:41 +0100)]
[635714] Inconsistent accessibility between nested private and protected internal types
Atsushi Eno [Tue, 31 Aug 2010 08:41:15 +0000 (17:41 +0900)]
Avoid NRE when converting contract-based instances to contract-neutral objects. Add Windows async workaround all around to not block further hacking.
Marek Safar [Tue, 31 Aug 2010 08:11:51 +0000 (09:11 +0100)]
Don't use break in jay
Marek Safar [Sun, 29 Aug 2010 18:13:36 +0000 (19:13 +0100)]
Don't generate tracing for the parser, it slows it down unnecessary
Marek Safar [Sun, 29 Aug 2010 18:12:56 +0000 (19:12 +0100)]
Add more rules for static initializers
Marek Safar [Sun, 29 Aug 2010 16:53:47 +0000 (17:53 +0100)]
Wrap any non-trivial rule into a method, speeds up the parser by 10-20%.
Marek Safar [Sun, 29 Aug 2010 10:48:01 +0000 (11:48 +0100)]
Removed misused break, format long comment
Carlos Alberto Cortez [Mon, 30 Aug 2010 21:57:55 +0000 (23:57 +0200)]
Actually make use of SerializationBinder.BindToName for BinaryFormatter.
* ObjectWriter.cs: Actually take SerializationBinder.BindToName
into account when serializing data.
Carlos Alberto Cortez [Mon, 30 Aug 2010 21:56:03 +0000 (23:56 +0200)]
Add tests for SerializationBinder.BindToName usage with BinaryFormatter.
* BinaryFormatterTest.cs: Add tests for
SerializationBinder.BindToName usage with BinaryFormatter.
Rolf Bjarne Kvinge [Mon, 30 Aug 2010 23:16:51 +0000 (01:16 +0200)]
Uri: fix path component of merged uris with parent directory references above the root directory
Zoltan Varga [Mon, 30 Aug 2010 23:31:24 +0000 (01:31 +0200)]
Fix make dist.
Zoltan Varga [Mon, 30 Aug 2010 23:30:56 +0000 (01:30 +0200)]
Fix the ppc build.
Zoltan Varga [Mon, 30 Aug 2010 23:29:18 +0000 (01:29 +0200)]
Fix the order of the arguments to the ppc_store macros.
Andrew Jorgensen [Mon, 30 Aug 2010 22:10:53 +0000 (16:10 -0600)]
Relatively major overhaul of the .spec file
Cleanup of legacy conditionals, addition of llvm and sgen conditionals
Rodrigo Kumpera [Mon, 30 Aug 2010 21:15:43 +0000 (18:15 -0300)]
Merge branch 'sgen_cardtable_64bits_support'
Rodrigo Kumpera [Mon, 30 Aug 2010 20:48:04 +0000 (17:48 -0300)]
Remove leftover from testing.
Rodrigo Kumpera [Mon, 30 Aug 2010 20:45:53 +0000 (17:45 -0300)]
Fix a of by one error.
* sgen-cardtable.c (cards_in_range): This should
take into account the first card.
Rodrigo Kumpera [Mon, 30 Aug 2010 18:13:29 +0000 (15:13 -0300)]
Fix cardtable code under amd64.
* method-to-ir.c (emit_write_barrier): Amd64 can't use
big immediates (> 32bits) with ALU operations so
we assert if the cardtable ends been allocated in a high
address.
Rodrigo Kumpera [Thu, 26 Aug 2010 21:36:19 +0000 (18:36 -0300)]
Enable cardtable on 64bits targets.
Rodrigo Kumpera [Thu, 26 Aug 2010 21:34:58 +0000 (18:34 -0300)]
Don't scan blocks without references.
Rodrigo Kumpera [Thu, 26 Aug 2010 21:20:05 +0000 (18:20 -0300)]
Improve check consistency assertion.
Rodrigo Kumpera [Thu, 26 Aug 2010 14:59:03 +0000 (11:59 -0300)]
Add support for card overlapping.
* sgen-cardtable.c: In order to support cardtables with 64bits we
allow cards to overlap each other. Cards are copied to a shadow
cardtable at the beginning of the scanning.
* gc-internals.h: Change signature of mono_gc_get_card_table to
return the card table mask.
* mini.h: Add PAND_IMM.
* method-to-ir.c: Handle card table masks.
* mini-x86.c: Ditto.
Rodrigo Kumpera [Thu, 26 Aug 2010 02:30:21 +0000 (23:30 -0300)]
Extract card scanning code.
* sgen-cardtable.c: Add functions that test if a given
card or range or cards should be scanned. Those function
make sure the card are clear on return.
* sgen-gc.h: Export new functions.
* sgen-los.c: Use to new functions.
* sgen-marksweep.c: Ditto.
Rodrigo Kumpera [Wed, 25 Aug 2010 21:43:00 +0000 (18:43 -0300)]
Replace clear_card functions with block enumeration API.
* sgen-cardtable.c: Use live block enumeration API
to clean blocks instead of a custom API.
* sgen-los.c: Add los_iterate_live_block_ranges.
* sgen-marksweep.c: Add major_iterate_live_block_ranges.
* sgen-gc.h: Adjust for new function.
Zoltan Varga [Mon, 30 Aug 2010 20:18:27 +0000 (22:18 +0200)]
Avoid loading the LLVM backend if llvm is not requested at runtime.
Andrew Jorgensen [Mon, 30 Aug 2010 19:34:03 +0000 (13:34 -0600)]
Remove obsolete Microsoft.Vsa and Microsoft.JScript
Atsushi Eno [Mon, 30 Aug 2010 13:27:58 +0000 (22:27 +0900)]
Fix a couple of Hello/Probe serialization issues.
Atsushi Eno [Mon, 30 Aug 2010 13:26:03 +0000 (22:26 +0900)]
Uri was also not supported in Read*ContentAs().
Atsushi Eno [Mon, 30 Aug 2010 09:41:57 +0000 (18:41 +0900)]
Add TimeSpan support in Read*ContentAs() methods.
Atsushi Eno [Mon, 30 Aug 2010 09:22:47 +0000 (18:22 +0900)]
Fix bogus discovery contract wrapper names.
Atsushi Eno [Mon, 30 Aug 2010 09:15:26 +0000 (18:15 +0900)]
Add not-working code for TransferMode support.
Atsushi Eno [Mon, 30 Aug 2010 09:14:07 +0000 (18:14 +0900)]
Add workaround for bug #633945. On Windows async operation does not work.
Zoltan Varga [Sun, 29 Aug 2010 00:20:36 +0000 (02:20 +0200)]
Remove obsolete LLVM passes.
Zoltan Varga [Sat, 28 Aug 2010 17:52:50 +0000 (19:52 +0200)]
Get rid of filter clauses in runtime invoke wrappers. This increases their size slighly, but allows them to be compiled by LLVM.
Zoltan Varga [Sat, 28 Aug 2010 17:03:44 +0000 (19:03 +0200)]
Get rid of MONO_ARCH_HAVE_THROW_CORLIB_EXCEPTION.
Jonathan Pryor [Sat, 28 Aug 2010 03:03:37 +0000 (23:03 -0400)]
[mdoc-validate] Support & validate the ECMA XML dialect.
This required adding some elements from the ECMA DTD.
We also add trivial XSLT support for things like <leq/> to ≤, etc.
Jonathan Pryor [Fri, 27 Aug 2010 20:42:57 +0000 (16:42 -0400)]
[update-ecma-xml] Don't generate <Type/>s for types we've already generated.
Fixes a duplicate System.Action within CLILibraryTypes.Updated.xml.
Zoltan Varga [Sat, 28 Aug 2010 01:47:04 +0000 (03:47 +0200)]
Print the unimplemented interface method warnings using the mono_trace ()
infrastructure.
Zoltan Varga [Sat, 28 Aug 2010 01:40:44 +0000 (03:40 +0200)]
Avoid the loading of metadata for IMT calls from AOT code too.
Zoltan Varga [Sat, 28 Aug 2010 01:23:18 +0000 (03:23 +0200)]
Reorganize the vtable slot patching code a bit.
Zoltan Varga [Sat, 28 Aug 2010 00:55:38 +0000 (02:55 +0200)]
Remove a redundant if ().
Zoltan Varga [Sat, 28 Aug 2010 00:42:39 +0000 (02:42 +0200)]
Avoid allocating empty arrays in ves_icall_Type_GetInterfaces ().
Zoltan Varga [Sat, 28 Aug 2010 00:41:24 +0000 (02:41 +0200)]
Use the klass pointer instead of the klass name when computing the hash in mymono_metadata_type_hash (), since it is much faster.
Zoltan Varga [Sat, 28 Aug 2010 00:40:58 +0000 (02:40 +0200)]
Add a g_hash_table_print_stats () helper function.
Zoltan Varga [Sat, 28 Aug 2010 00:40:37 +0000 (02:40 +0200)]
Optimize g_utf8_to_utf16 for the common case of ASCII strings.
Gonzalo Paniagua Javier [Fri, 27 Aug 2010 21:28:25 +0000 (17:28 -0400)]
Call SetEndOfSendNotification
We have to call SetEndOfSendNotification() as soon as the context is ready.
Fixes bug #632253.
Gonzalo Paniagua Javier [Fri, 27 Aug 2010 20:55:47 +0000 (16:55 -0400)]
Add env.var. to control revocation mode.
Added a new environment variable, MONO_X509_REVOCATION_MODE that lets
the user choose the default validation mode for X509 chains.
Zoltan Varga [Fri, 27 Aug 2010 20:06:39 +0000 (22:06 +0200)]
Improve the hashing of MonoTypes representing type variables.
Zoltan Varga [Fri, 27 Aug 2010 20:06:20 +0000 (22:06 +0200)]
Add a mono_g_hash_table_print_stats () function to print hash table stats.
Jonathan Pryor [Fri, 27 Aug 2010 19:58:07 +0000 (15:58 -0400)]
[mdoc] Add response file support to all mdoc commands.
...because it's so much easier dealing with 77 arguments for
mdoc-update-ecma-xml when I can use a text editor instead of bash...
Jonathan Pryor [Fri, 27 Aug 2010 18:45:00 +0000 (14:45 -0400)]
[update-ecma-xml] Implement support for updating an existing file.
First, we refactor out the "overwrite only if content has changed" logic in
monodocer into MdocFile.UpdateFile() so that we can reuse this same logic.
After that, it's primary all about MDocUpdateEcmaXml.UpdateExistingLibraries():
scan through the document looking for libraries we're interested in. If we
encounter one we don't care about, copy directly. If we do, enumerate it's
contents looking for types we care about, and either copy the old version
as-is if we don't care, or copy over the mdoc(5) version if we do.
Jonathan Pryor [Fri, 27 Aug 2010 15:29:25 +0000 (11:29 -0400)]
[update-ecma-xml] Fix nested type documentation lookup.
Attempting to load docs for e.g. System.Environment.SpecialFolder resulted in
an infinite loop. Oops. Also support "global" types.
Jonathan Pryor [Fri, 27 Aug 2010 04:05:19 +0000 (00:05 -0400)]
Add 'mdoc update-ecma-xml' command.
This is for ECMA support: it's intended to take an existing
CLILibraryTypes.xml file (from the ECMA 335 standard) and update the specified
types within it. If no existing file is specified, it'll generate a new one
based on command-line arguments.
Update support is currently lacking, but it'll generate a new document with:
mono mdoc.exe update-ecma-xml -o - \
--library BCL --type=System.Environment Test/en.expected
Zoltan Varga [Fri, 27 Aug 2010 19:24:03 +0000 (21:24 +0200)]
Install the generated gmcs.exe.so.
Zoltan Varga [Fri, 27 Aug 2010 19:11:45 +0000 (21:11 +0200)]
Delete gmcs.exe.so on make clean.
Zoltan Varga [Fri, 27 Aug 2010 19:09:14 +0000 (21:09 +0200)]
Use $(PROFILE)/gmcs.exe as INTERNAL_GMCS for consistency.
Zoltan Varga [Fri, 27 Aug 2010 18:56:47 +0000 (20:56 +0200)]
Add a new directory which is used for AOTing the c# compiler before compiling most of the class libs. This cuts the mcs build time by about 30%.
Sebastien Pouliot [Fri, 27 Aug 2010 18:28:09 +0000 (14:28 -0400)]
Fix public key in [InternalsVisibleTo] attribute
mcs/class/System.ServiceModel.Web/Assembly/AssemblyInfo.cs: Use the
Silverlight public key (instead of the regular FX public key) for
NET_2_1
Atsushi Eno [Fri, 27 Aug 2010 17:07:56 +0000 (02:07 +0900)]
ISerializable type didn't iterate all base types to pick up all target fields.
Atsushi Eno [Fri, 27 Aug 2010 16:49:04 +0000 (01:49 +0900)]
Use XmlConvert.EncodeLocalName() to not introduce xml syntax violation for not-WF member names.
Atsushi Eno [Fri, 27 Aug 2010 16:47:57 +0000 (01:47 +0900)]
XmlWriterSettings could be null.
Jérémie Laval [Fri, 27 Aug 2010 16:26:48 +0000 (17:26 +0100)]
[PLinq] Remove the scwl noise in ParallelEnumerable TestOrderByAgeAscendingTheByNameDescending test
Jérémie Laval [Fri, 27 Aug 2010 16:23:56 +0000 (17:23 +0100)]
Move the predicate call under launched.TrySet protection in Task's ContinueWithCore
Sometimes the predicate was also called multiple time generating exception that weren't caught by the general Task handler and thus swallowed by the runtime causing Thread shutdown and ultimately deadlocks.
Zoltan Varga [Fri, 27 Aug 2010 15:36:10 +0000 (17:36 +0200)]
Make the 'LABELS' make variable the same as the 'TEST_HARNESS_VERBOSE' variable, because it is easier to remember and type.
Jérémie Laval [Fri, 27 Aug 2010 14:59:37 +0000 (15:59 +0100)]
Increase the number of repeated run in stress test.
Jérémie Laval [Fri, 27 Aug 2010 14:01:08 +0000 (15:01 +0100)]
Allow at max one Remove operation to fail in tests.
Some concurrent collections don't necessarily guarantee that a call to Dequeue/Pop/equivalent will succeed even in the case there are elements in the collection. When one of such operation fail in test, retry it immediately to check for that sort of cases.
Jérémie Laval [Fri, 27 Aug 2010 14:00:28 +0000 (15:00 +0100)]
Don't PopTop from our personnal bag in ConcurrentBag.
Marek Safar [Fri, 27 Aug 2010 13:55:04 +0000 (14:55 +0100)]
Implement dynamic sites for hoisted mvar types
Marek Safar [Fri, 27 Aug 2010 08:30:26 +0000 (09:30 +0100)]
Check also modifier for identical ref/out parameters
Jérémie Laval [Fri, 27 Aug 2010 13:07:34 +0000 (14:07 +0100)]
Change the way continuation delegates are stored and processed in Task. Fix random the random hangs.
Atsushi Eno [Fri, 27 Aug 2010 09:37:42 +0000 (18:37 +0900)]
Add integrated test case.
Atsushi Eno [Fri, 27 Aug 2010 09:31:34 +0000 (18:31 +0900)]
They are system endpoints.
Marek Safar [Fri, 27 Aug 2010 07:50:17 +0000 (08:50 +0100)]
Fixes build
Marek Safar [Fri, 27 Aug 2010 07:41:04 +0000 (08:41 +0100)]
Don't convert ByRef parameters
Marek Safar [Thu, 26 Aug 2010 18:59:58 +0000 (19:59 +0100)]
Consider parameter constraints when choosing applicable method candidate
Marek Safar [Thu, 26 Aug 2010 16:51:39 +0000 (17:51 +0100)]
Always build type from compiler type when flagged
Marek Safar [Fri, 27 Aug 2010 07:42:49 +0000 (08:42 +0100)]
Merge branch 'master' of github.com:mono/mono
Marek Safar [Fri, 27 Aug 2010 07:42:15 +0000 (08:42 +0100)]
New test