Marek Safar [Wed, 2 Dec 2009 15:23:40 +0000 (15:23 -0000)]
2009-12-02 Marek Safar <marek.safar@gmail.com>
* typemanager.cs, parameter.cs, class.cs, delegate.cs, attribute.cs:
Encode dynamic type attribute for elements where attributes cannot
be used.
svn path=/trunk/mcs/; revision=147441
Paolo Molaro [Wed, 2 Dec 2009 14:45:16 +0000 (14:45 -0000)]
Wed Dec 2 15:48:19 CET 2009 Paolo Molaro <lupus@ximian.com>
* metadata.c, class.c, loader.c: remove assert after bsearch() for
incorrect assemblies (bug #553322).
svn path=/trunk/mono/; revision=147439
Marek Safar [Wed, 2 Dec 2009 14:40:44 +0000 (14:40 -0000)]
2009-12-02 Marek Safar <marek.safar@gmail.com>
* DynamicAttribute.cs: Add arguments check.
svn path=/trunk/mcs/; revision=147438
Rodrigo Kumpera [Wed, 2 Dec 2009 14:34:48 +0000 (14:34 -0000)]
2009-12-02 Rodrigo Kumpera <rkumpera@novell.com>
* metadata.c (mono_metadata_inflate_generic_inst): Add MonoError parameter.
* metadata-internals.h: Change signature of mono_metadata_inflate_generic_inst.
* class.c (inflate_generic_type): Use new version of mono_metadata_inflate_generic_inst.
* class.c (inflate_generic_context): Ditto.
* loader.c (method_from_methodspec): Ditto.
Fixes #558230.
svn path=/trunk/mono/; revision=147436
Marek Safar [Wed, 2 Dec 2009 14:33:42 +0000 (14:33 -0000)]
2009-12-02 Marek Safar <marek.safar@gmail.com>
* Makefile: Add LIBC define.
svn path=/trunk/mcs/; revision=147435
Marek Habersack [Wed, 2 Dec 2009 14:18:36 +0000 (14:18 -0000)]
targetNetwork -> targetFramework
svn path=/trunk/mcs/; revision=147434
Rodrigo Kumpera [Wed, 2 Dec 2009 13:24:19 +0000 (13:24 -0000)]
2009-12-02 Rodrigo Kumpera <rkumpera@novell.com>
* class.c (mono_type_retrieve_from_typespec): Use MonoError machinery to report errors.
* class.c (mono_class_create_from_typespec): Ditto.
* class.c (mono_class_get_full): Fix for change on the above 2 functions.
* class.c (mono_type_get_full): Fix for change on the above 2 functions.
Fixes #558184.
svn path=/trunk/mono/; revision=147427
Rodrigo Kumpera [Wed, 2 Dec 2009 12:36:00 +0000 (12:36 -0000)]
Ops, forgot to mention bug number on changelog.
svn path=/trunk/mono/; revision=147423
Rodrigo Kumpera [Wed, 2 Dec 2009 12:34:57 +0000 (12:34 -0000)]
2009-12-02 Rodrigo Kumpera <rkumpera@novell.com>
* verify.c (mono_class_has_default_constructor): Check fror broken signatures.
* verify.c (verify_delegate_compatibility): Ditto.
* verify.c (do_newobj): Ditto.
svn path=/trunk/mono/; revision=147422
Marek Safar [Wed, 2 Dec 2009 11:16:20 +0000 (11:16 -0000)]
2009-12-02 Marek Safar <marek.safar@gmail.com>
* common/basic-profile-check.cs: Bump bootstrap requirement to Mono
2.4+.
svn path=/trunk/mcs/; revision=147415
Marek Habersack [Wed, 2 Dec 2009 09:10:08 +0000 (09:10 -0000)]
2009-12-02 Marek Habersack <mhabersack@novell.com>
* CSharpCodeCompiler.cs: added support for dmcs
svn path=/trunk/mcs/; revision=147403
Marek Habersack [Wed, 2 Dec 2009 09:01:14 +0000 (09:01 -0000)]
2009-12-02 Marek Habersack <mhabersack@novell.com>
* CompilationSection.cs: added two properties -
OptimizeCompilations (3.5+) and TargetNetwork (4.0+)
svn path=/trunk/mcs/; revision=147399
Atsushi Eno [Wed, 2 Dec 2009 08:32:25 +0000 (08:32 -0000)]
2009-12-02 Atsushi Enomoto <atsushi@ximian.com>
* NetTcpBindingTest.cs :
I have to disable a lot of connective tests that somehow blocks
test runs. No idea why it started to happen though.
* DispatchRuntimeTest.cs :
I have to disable a lot of connective tests that somehow blocks
test runs. No idea why it started to happen though.
* CustomPeerResolverServiceTest.cs :
I have to disable a lot of connective tests that somehow blocks
test runs. No idea why it started to happen though.
(It internally uses HTTP binding, which is the indirect source of
the problem here.)
svn path=/trunk/mcs/; revision=147398
Mark Probst [Wed, 2 Dec 2009 02:35:36 +0000 (02:35 -0000)]
2009-12-02 Mark Probst <mark.probst@gmail.com>
* sgen-gc.c: Use a gray queue instead of requiring that gray
objects are in a contiguous region.
* sgen-gray.c: The gray queue implementation.
* Makefile.am: sgen-gray.c added.
svn path=/trunk/mono/; revision=147283
Mark Probst [Wed, 2 Dec 2009 02:09:13 +0000 (02:09 -0000)]
2009-12-02 Mark Probst <mark.probst@gmail.com>
* mono-hash.c: Don't use MONO_ROOT_SETREF for setting keys and
values. It's unnecessary - the hash table has a marking function
which takes care of all GC-tracked keys and values.
svn path=/trunk/mono/; revision=147282
Sebastien Pouliot [Wed, 2 Dec 2009 02:07:13 +0000 (02:07 -0000)]
2009-12-01 Sebastien Pouliot <sebastien@ximian.com>
* DataContractSerializer.cs: Add two missing methods for FX3.0
and SL2/SL3.
svn path=/trunk/mcs/; revision=147280
Mark Probst [Wed, 2 Dec 2009 02:03:03 +0000 (02:03 -0000)]
2009-12-02 Mark Probst <mark.probst@gmail.com>
* appdomain.c: When unloading a domain, zero its static data and
perform a minor collection when using SGen. That will get rid of
all the remsets pointing into that domain's static data.
* sgen-gc.c: Allow remsets into static data. By doing this we
need less checks so we're more efficient.
svn path=/trunk/mono/; revision=147279
Zoltan Varga [Wed, 2 Dec 2009 02:01:10 +0000 (02:01 -0000)]
2009-12-02 Zoltan Varga <vargaz@gmail.com>
* debugger-agent.c (suspend_current): Always set really_suspended.
svn path=/trunk/mono/; revision=147277
Zoltan Varga [Tue, 1 Dec 2009 23:44:07 +0000 (23:44 -0000)]
2009-12-02 Zoltan Varga <vargaz@gmail.com>
* debugger-agent.c (clear_event_request): Clear method entry/exit requests too.
* exceptions-x86.c (mono_arch_get_restore_context): Restore EAX too.
svn path=/trunk/mono/; revision=147273
Zoltan Varga [Tue, 1 Dec 2009 22:26:25 +0000 (22:26 -0000)]
2009-12-01 Zoltan Varga <vargaz@gmail.com>
* VirtualMachine.cs (ErrorHandler): Handle NOT_SUSPENDED error code too.
svn path=/trunk/mcs/; revision=147270
Zoltan Varga [Tue, 1 Dec 2009 22:25:46 +0000 (22:25 -0000)]
2009-12-01 Zoltan Varga <vargaz@gmail.com>
* dtest.cs: Add a a test for invokes on not suspended threads.
svn path=/trunk/mono/; revision=147269
Zoltan Varga [Tue, 1 Dec 2009 22:25:38 +0000 (22:25 -0000)]
2009-12-01 Zoltan Varga <vargaz@gmail.com>
* debugger-agent.c (vm_commands): Don't allow invokes on threads which are not
really suspended.
svn path=/trunk/mono/; revision=147268
Rodrigo Kumpera [Tue, 1 Dec 2009 19:41:38 +0000 (19:41 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* verify.c (mono_method_verify): Check for catch clauses with broken
types.
Fixes #558465.
svn path=/trunk/mono/; revision=147261
Rodrigo Kumpera [Tue, 1 Dec 2009 19:18:49 +0000 (19:18 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* verify.c (code_bounds_check): Do proper overflow checking.
* verify.c (mono_method_verify): The number of switch entries is
an unsigned int. Properly bounds check it.
Fixes #558594.
svn path=/trunk/mono/; revision=147259
Zoltan Varga [Tue, 1 Dec 2009 19:07:15 +0000 (19:07 -0000)]
2009-12-01 Zoltan Varga <vargaz@gmail.com>
* cpu-ppc64.md (store_memindex): Add storei8_memindex.
svn path=/trunk/mono/; revision=147257
Sebastien Pouliot [Tue, 1 Dec 2009 18:24:53 +0000 (18:24 -0000)]
2009-12-01 Sebastien Pouliot <sebastien@ximian.com>
* XmlDictionaryReader.cs: Fix ReadValueAsBase64 return value and
remove NET_2_1 (gui-compare shows this in our 3.0 SP1 profile)
svn path=/trunk/mcs/; revision=147250
Jb Evain [Tue, 1 Dec 2009 18:20:48 +0000 (18:20 -0000)]
2009-12-01 Jb Evain <jbevain@novell.com>
* StackTest.cs: add a test ensuring that disposing the stack
enumerator prevents to iterate further.
svn path=/trunk/mcs/; revision=147249
Jb Evain [Tue, 1 Dec 2009 18:18:30 +0000 (18:18 -0000)]
2009-12-01 Jb Evain <jbevain@novell.com>
* Stack.cs (Enumerator.Dispose): tag the enumerator as finished
upon Dispose.
svn path=/trunk/mcs/; revision=147248
Jb Evain [Tue, 1 Dec 2009 18:00:29 +0000 (18:00 -0000)]
2009-12-01 Jb Evain <jbevain@novell.com>
* TypeTest.cs: add tests for namespaces of generic parameter types.
svn path=/trunk/mcs/; revision=147247
Jb Evain [Tue, 1 Dec 2009 17:59:51 +0000 (17:59 -0000)]
2009-12-01 Jb Evain <jbevain@novell.com>
* class.c (make_generic_param_class): set the namespace of
the generic parameter class from its owner, if available.
svn path=/trunk/mono/; revision=147246
Rodrigo Kumpera [Tue, 1 Dec 2009 17:46:28 +0000 (17:46 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* mini-trampolines.c: Fix MSVC build.
svn path=/trunk/mono/; revision=147245
Rodrigo Kumpera [Tue, 1 Dec 2009 17:46:18 +0000 (17:46 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* metadata.c: Kill mono_metadata_get_param_attrs_checked. Add
mono_metadata_method_has_param_attrs which only checks if a given param
list has a non zero flags entry.
* metadata.c (mono_metadata_get_param_attrs): Add param_count parameter
to inform how many params should we expect to decode.
* loader.c (mono_method_signature): Use mono_metadata_method_has_param_attrs
as it's faster than mono_metadata_get_param_attrs.
* metadata-internals.h: Fix mono_metadata_get_param_attrs signature and
add mono_metadata_method_has_param_attrs.
svn path=/trunk/mono/; revision=147244
Jb Evain [Tue, 1 Dec 2009 16:34:42 +0000 (16:34 -0000)]
2009-12-01 Jb Evain <jbevain@novell.com>
* TypeTest.cs: add test for MakeByRefType on a ByRef type.
svn path=/trunk/mcs/; revision=147241
Jb Evain [Tue, 1 Dec 2009 16:34:14 +0000 (16:34 -0000)]
2009-12-01 Jb Evain <jbevain@novell.com>
* Type.cs (MakeByRefType): throw a TypeLoadException when being
called on type which is already ByRef.
svn path=/trunk/mcs/; revision=147240
Marek Safar [Tue, 1 Dec 2009 16:26:59 +0000 (16:26 -0000)]
removed extra dist
svn path=/trunk/mcs/; revision=147239
Sebastien Pouliot [Tue, 1 Dec 2009 16:02:05 +0000 (16:02 -0000)]
2009-12-01 Sebastien Pouliot <sebastien@ximian.com>
* net_2_1_raw_System.dll.sources: Add existing files that are
part of Silverlight 3 (but were not in Silverlight 2)
svn path=/trunk/mcs/; revision=147237
Marek Safar [Tue, 1 Dec 2009 14:08:12 +0000 (14:08 -0000)]
New tests.
svn path=/trunk/mcs/; revision=147228
Marek Safar [Tue, 1 Dec 2009 14:05:18 +0000 (14:05 -0000)]
2009-12-01 Marek Safar <marek.safar@gmail.com>
argument.cs, assign.cs, expression.cs, cs-parser.jay: Named
arguments by ref.
svn path=/trunk/mcs/; revision=147227
Sebastien Pouliot [Tue, 1 Dec 2009 14:02:23 +0000 (14:02 -0000)]
2009-12-01 Sebastien Pouliot <sebastien@ximian.com>
* CryptoConfig_2_1.cs: Add mapping for SHA256 since it's used
internally in corlib (e.g. HMAC256)
* KeySizes.cs, RandomNumberGenerator.cs, RNGCryptoServiceProvider.cs:
Remove [ComVisible] attribute from NET_2_1 build.
svn path=/trunk/mcs/; revision=147225
Rodrigo Kumpera [Tue, 1 Dec 2009 13:42:52 +0000 (13:42 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* mini-trampolines.c: Check for mono_method_get_vtable_slot failures.
svn path=/trunk/mono/; revision=147220
Rodrigo Kumpera [Tue, 1 Dec 2009 13:42:44 +0000 (13:42 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* class.c (mono_class_setup_vtable_general): Check for mono_method_get_vtable_slot
failures.
* class.c (mono_method_get_vtable_slot): Don't assert if the computed method slot
is -1 but its class is broken.
Fixes #558522.
svn path=/trunk/mono/; revision=147219
Rodrigo Kumpera [Tue, 1 Dec 2009 13:42:35 +0000 (13:42 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* metadata.c: Introduce mono_metadata_get_param_attrs_checked which checks
for parameter overflow.
* metadata.c (mono_metadata_parse_method_signature_full): Use checked version
of mono_metadata_get_param_attrs.
* metadata-internals.h: Add mono_metadata_get_param_attrs_checked to the internal
API.
* loader.c (mono_method_signature): Use checked version of mono_metadata_get_param_attrs.
svn path=/trunk/mono/; revision=147218
Marek Safar [Tue, 1 Dec 2009 13:41:26 +0000 (13:41 -0000)]
Use normal documentation structure
svn path=/trunk/mcs/; revision=147217
Marek Safar [Tue, 1 Dec 2009 13:34:12 +0000 (13:34 -0000)]
Mono.CSharp relocation
svn path=/trunk/mcs/; revision=147216
Rodrigo Kumpera [Tue, 1 Dec 2009 12:30:03 +0000 (12:30 -0000)]
2009-12-01 Rodrigo Kumpera <rkumpera@novell.com>
* class.c (mono_class_setup_fields): Check for fields with broken types.
Fixes #558741.
svn path=/trunk/mono/; revision=147214
Marek Habersack [Tue, 1 Dec 2009 11:37:18 +0000 (11:37 -0000)]
2009-12-01 Marek Habersack <mhabersack@novell.com>
* Cache.cs: ExpireItems dequeues the next item when a disabled
item is found before continuing to look for items to expire. Fixes
bug #559470. Patch from Adriaan van Kekem <avkekem@hotmail.com>,
thanks.
svn path=/trunk/mcs/; revision=147213
Marek Safar [Tue, 1 Dec 2009 08:44:10 +0000 (08:44 -0000)]
2009-12-01 Marek Safar <marek.safar@gmail.com>
A fix for bug #360455
* class.cs: Never report a unused warning for generic events to
workaround wrong expression type.
svn path=/trunk/mcs/; revision=147189
Marek Safar [Tue, 1 Dec 2009 08:37:54 +0000 (08:37 -0000)]
Move docs.
svn path=/trunk/mcs/; revision=147188
Atsushi Eno [Tue, 1 Dec 2009 07:11:53 +0000 (07:11 -0000)]
2009-12-01 Atsushi Enomoto <atsushi@ximian.com>
* Atom10ItemFormatter.cs, Atom10FeedFormatter.cs :
write extensions. Patch by Tom Philpot.
svn path=/trunk/mcs/; revision=147183
Atsushi Eno [Tue, 1 Dec 2009 06:37:20 +0000 (06:37 -0000)]
2009-12-01 Atsushi Enomoto <atsushi@ximian.com>
* SilverlightClientConfigLoader.cs : I made an extraneous change.
svn path=/trunk/mcs/; revision=147181
Carlos Alberto Cortez [Tue, 1 Dec 2009 06:35:39 +0000 (06:35 -0000)]
2009-12-01 Carlos Alberto Cortez <calberto.cortez@gmail.com>
* FileTest.cs: New test for File.Copy throwing an exception if src and
dest are the same.
svn path=/trunk/mcs/; revision=147180
Atsushi Eno [Tue, 1 Dec 2009 06:33:53 +0000 (06:33 -0000)]
2009-12-01 Atsushi Enomoto <atsushi@ximian.com>
* ClientCredentials.cs : more SL3 changes.
* ClientBase.cs, ChannelFactory_1.cs, ChannelFactory.cs :
more SL3 changes.
svn path=/trunk/mcs/; revision=147179
Atsushi Eno [Tue, 1 Dec 2009 06:30:24 +0000 (06:30 -0000)]
2009-12-01 Atsushi Enomoto <atsushi@ximian.com>
* SilverlightClientConfigLoader.cs : do not enter infinite loop at
empty <binding> element.
svn path=/trunk/mcs/; revision=147178
Sebastien Pouliot [Tue, 1 Dec 2009 02:07:06 +0000 (02:07 -0000)]
2009-11-30 Sebastien Pouliot <sebastien@ximian.com>
* CookieCollection.cs: Seal inner CookieCollectionPathComparer
* IPAddress.cs: Avoid multiple casts in Equals
* SocketAddress.cs: Avoid multiple casts in Equals
[Found using Gendarme]
svn path=/trunk/mcs/; revision=147163
Carlos Alberto Cortez [Tue, 1 Dec 2009 01:41:38 +0000 (01:41 -0000)]
2009-11-30 Carlos Alberto Cortez <calberto.cortez@gmail.com>
* io.cs: In CopyFile check if the destination already exists before
trying to open it, and if it is the same as the source, report an error,
just as .net does. We do the check here to take advantage of the IOMAP
capability.
Fixes #510230.
svn path=/trunk/mono/; revision=147160
Sebastien Pouliot [Tue, 1 Dec 2009 01:38:11 +0000 (01:38 -0000)]
2009-11-30 Sebastien Pouliot <sebastien@ximian.com>
* AssemblyInfo.cs: Remove [StringFreezing] and [DefaultDependency]
from NET_2_1 builds
svn path=/trunk/mcs/; revision=147158
Sebastien Pouliot [Tue, 1 Dec 2009 01:27:53 +0000 (01:27 -0000)]
2009-11-30 Sebastien Pouliot <sebastien@ximian.com>
* Uri.cs: Hide protected EscapeString and Unescape for SL2/3
* UriTypeConverter.cs: Seal type for SL2/3
svn path=/trunk/mcs/; revision=147156
Sebastien Pouliot [Tue, 1 Dec 2009 01:21:04 +0000 (01:21 -0000)]
2009-11-30 Sebastien Pouliot <sebastien@ximian.com>
* TypeConverterAttribute.cs: Add missing [ComVisible] for SL2/3 builds
svn path=/trunk/mcs/; revision=147154
Sebastien Pouliot [Tue, 1 Dec 2009 01:14:35 +0000 (01:14 -0000)]
2009-11-30 Sebastien Pouliot <sebastien@ximian.com>
* Debug_2_1.cs: Change type to sealed to match SL2/3
svn path=/trunk/mcs/; revision=147153
Marek Safar [Mon, 30 Nov 2009 19:37:17 +0000 (19:37 -0000)]
New test.
svn path=/trunk/mcs/; revision=147118
Marek Safar [Mon, 30 Nov 2009 19:36:52 +0000 (19:36 -0000)]
2009-11-30 Marek Safar <marek.safar@gmail.com>
A fix for bug #558305
* decl.cs, class.cs: Check partial method definitions using correct
flag.
svn path=/trunk/mcs/; revision=147117
Marek Safar [Mon, 30 Nov 2009 17:18:34 +0000 (17:18 -0000)]
2009-11-30 Marek Safar <marek.safar@gmail.com>
* argument.cs: Don't cache rarely used dynamic flag.
svn path=/trunk/mcs/; revision=147110
Andrés G. Aragoneses [Mon, 30 Nov 2009 16:38:03 +0000 (16:38 -0000)]
svn path=/trunk/mcs/; revision=147108
Andrés G. Aragoneses [Mon, 30 Nov 2009 16:36:03 +0000 (16:36 -0000)]
Forward port r147102
svn path=/trunk/mcs/; revision=147106
Jonathan Pryor [Mon, 30 Nov 2009 16:33:22 +0000 (16:33 -0000)]
* monotouch_System.Xml.dll.sources: Add System.Xml/NamespaceHandling.cs
to the MonoTouch build (fixed build break).
svn path=/trunk/mcs/; revision=147105
Zoltan Varga [Mon, 30 Nov 2009 16:27:04 +0000 (16:27 -0000)]
2009-11-30 Zoltan Varga <vargaz@gmail.com>
* mini-arm.c (mono_arch_lowering_pass): Fix an assert which is hit when
the instruction following an OP_FCOMPARE is optimized away.
svn path=/trunk/mono/; revision=147101
Marek Habersack [Mon, 30 Nov 2009 12:35:20 +0000 (12:35 -0000)]
2009-11-30 Marek Habersack <mhabersack@novell.com>
* WebControl.cs: HasAttributes made available as internal for 1.1
Avoid calling the Attributes getter many times in
CopyBaseAttributes.
If TrackViewState is called and attributes state bag already
exists, mark all items in the latter as dirty.
* CheckBox.cs, Button.cs, ImageButton.cs, LinkButton.cs: do not
create the Attributes collection if not necessary.
svn path=/trunk/mcs/; revision=147094
Zoltan Varga [Mon, 30 Nov 2009 02:08:54 +0000 (02:08 -0000)]
2009-11-30 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c (arch_emit_autoreg): Extract the auto-registration code from
emit_autoreg () into this arch-specific function.
svn path=/trunk/mono/; revision=147085
Zoltan Varga [Mon, 30 Nov 2009 02:00:41 +0000 (02:00 -0000)]
2009-11-30 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c (emit_exception_debug_info): Don't emit the length of the
code, it is no longer needed.
* aot-runtime.c (decode_exception_debug_info): Don't read the code length.
* mini.h: Bump AOT file format version.
svn path=/trunk/mono/; revision=147084
Zoltan Varga [Mon, 30 Nov 2009 02:00:34 +0000 (02:00 -0000)]
2009-11-30 Zoltan Varga <vargaz@gmail.com>
* aot-runtime.c (mono_aot_find_jit_info): Compute the length of the method
using the sorted_code_offsets array, instead of reading it from the
exception debug info.
(load_method): Call mono_aot_find_jit_info instead of
decode_exception_debug_info ().
* aot-compiler.c (emit_exception_debug_info): Emit whenever the method was
LLVM compiled as a flag.
svn path=/trunk/mono/; revision=147083
Zoltan Varga [Sun, 29 Nov 2009 15:18:16 +0000 (15:18 -0000)]
2009-11-29 Zoltan Varga <vargaz@gmail.com>
* debugger-agent.c (resume_thread): Fix a warning.
svn path=/trunk/mono/; revision=147075
Zoltan Varga [Sat, 28 Nov 2009 23:11:38 +0000 (23:11 -0000)]
2009-11-29 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c: Add an option to set the number of static rgctx trampolines
generated.
svn path=/trunk/mono/; revision=147063
Rodrigo Kumpera [Sat, 28 Nov 2009 19:05:19 +0000 (19:05 -0000)]
2009-11-28 Rodrigo Kumpera <rkumpera@novell.com>
* reflection.c (ensure_generic_class_runtime_vtable): Split this function in 2
so we can avoid calling ensure_runtime_vtable multiple times for the GTD during
its TypeBuilder::CreateType ().
* reflection.c (ensure_generic_class_runtime_vtable): Avoid initializing interfaces
if not needed.
* reflection.c: Every time we change the interface array, set interfaces_packed to NULL
to make setup_interface_offsets happy.
* reflection.c (remove_instantiations_of_and_ensure_contents): Fix instances again as corlib
compilation now works.
svn path=/trunk/mono/; revision=147062
Zoltan Varga [Sat, 28 Nov 2009 17:30:45 +0000 (17:30 -0000)]
2009-11-28 Zoltan Varga <vargaz@gmail.com>
* appdomain.c (create_exceptions): New helper function extracted from
mono_runtime_init () to precreate objects used during exception handling.
(mono_runtime_init): Call it.
(mono_domain_create_appdomain_internal): Ditto. Fixes #555264.
svn path=/trunk/mono/; revision=147057
Carlos Alberto Cortez [Sat, 28 Nov 2009 15:42:18 +0000 (15:42 -0000)]
2009-11-28 Carlos Alberto Cortez <calberto.cortez@gmail.com>
* WinSerialStream.cs: Make CommStat a struct instead of a class to
make properly work ClearCommError.
Fixes the remaining bits of #348751.
svn path=/trunk/mcs/; revision=147053
Zoltan Varga [Fri, 27 Nov 2009 23:23:19 +0000 (23:23 -0000)]
2009-11-28 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c aot-runtime.c: Get rid of a few global symbols, move their
contents to MonoAotFileInfo.
svn path=/trunk/mono/; revision=147052
Zoltan Varga [Fri, 27 Nov 2009 22:26:54 +0000 (22:26 -0000)]
2009-11-27 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c aot-runtime.c: Reorganize the AOT file format once again.
Put all binary data into a giant blob, similarly to the way .net assemblies
store binary data. Emit offset tables in a compact form to reduce their size.
* mini.h: Bump AOT file format version.
svn path=/trunk/mono/; revision=147051
Ankit Jain [Fri, 27 Nov 2009 22:12:52 +0000 (22:12 -0000)]
Fix bug #547753.
In class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine:
Fix bug #547753.
* BatchingImplBase.cs (DumpBucket*): New. Useful for debugging.
* Project.cs (Batch): New. Contains the perBatchItems and the
commonItems for the batch.
Use a stack of batches, instead of directly setting the current
batch items.
(PushBatch): New.
(PopBatch): New.
(SetBatchedItems): Make this private.
(GlobalProperties.set): Re-evaluating the project is not required
for this.
* TargetBatchingImpl.cs: Use the new Push/PopBatch instead of directly
setting the batches.
* TaskBatchingImpl.cs: Likewise. Refactor slightly to PopBatch in
finally block.
* Target.cs (Build): Reset the current batch to nil before evaluating
and building this target.
In class/Microsoft.Build.Tasks/Test/Microsoft.Build.Tasks:
* TaskBatchingTest.cs: Add new tests for batching.
svn path=/trunk/mcs/; revision=147050
Ankit Jain [Fri, 27 Nov 2009 22:11:06 +0000 (22:11 -0000)]
In class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine:
* Project.cs (TryGetEvaluatedItemByNameBatched): Item could be
available in either perBatchItemsByName or commonItemsByName
or the evaluatedItemsByName collection. Allows the use of
items which are not batched, but are consumed in case of batching.
In class/Microsoft.Build.Tasks/Test/Microsoft.Build.Tasks:
* TaskBatchingTest.cs: Add new tests for batching, use on unbatched
items in a batching scenario.
svn path=/trunk/mcs/; revision=147049
Rodrigo Kumpera [Fri, 27 Nov 2009 18:35:45 +0000 (18:35 -0000)]
2009-11-27 Rodrigo Kumpera <rkumpera@novell.com>
* reflection.c (remove_instantiations_of_and_ensure_contents): Temp hack to fix corlib
compilation until the proper one is found.
svn path=/trunk/mono/; revision=147048
Marek Safar [Fri, 27 Nov 2009 16:03:48 +0000 (16:03 -0000)]
Use global alias for Resize
svn path=/trunk/mcs/; revision=147043
Zoltan Varga [Fri, 27 Nov 2009 15:24:43 +0000 (15:24 -0000)]
Fix a warning.
svn path=/trunk/mono/; revision=147040
Zoltan Varga [Fri, 27 Nov 2009 15:09:45 +0000 (15:09 -0000)]
2009-11-27 Zoltan Varga <vargaz@gmail.com>
* class.c (mono_class_setup_vtable_general): Cache the result of
get_virtual_methods () since it can be slow because of the metadata
optimization.
svn path=/trunk/mono/; revision=147037
Zoltan Varga [Fri, 27 Nov 2009 14:41:02 +0000 (14:41 -0000)]
2009-11-27 Zoltan Varga <vargaz@gmail.com>
* metadata-internals.h (_MonoImage): Change 'method_cache' to a GHashTable
from a MonoValueHashTable for now, since the later is based on an earlier
version of hpj's internal probing code and seems to have serious collision
issues.
* loader.c (mono_get_method_full): Update after the change above.
svn path=/trunk/mono/; revision=147035
Marek Safar [Fri, 27 Nov 2009 11:56:19 +0000 (11:56 -0000)]
2009-11-27 Marek Safar <marek.safar@gmail.com>
* cs-parser.jay: Use jay global stacks (saves over 3MB for corlib).
svn path=/trunk/mcs/; revision=147029
Marek Safar [Fri, 27 Nov 2009 11:54:42 +0000 (11:54 -0000)]
2009-11-27 Marek Safar <marek.safar@gmail.com>
* skeleton.cs: Add global state stacks.
svn path=/trunk/mcs/; revision=147028
Marek Safar [Fri, 27 Nov 2009 10:19:56 +0000 (10:19 -0000)]
2009-11-27 Marek Safar <marek.safar@gmail.com>
* ecore.cs (SimpleName): Removed no longer needed in_transit as
Resolve is now non-reentrant (saves ~0.6MB for corlib).
svn path=/trunk/mcs/; revision=147025
Marek Safar [Fri, 27 Nov 2009 10:12:48 +0000 (10:12 -0000)]
Fix 64bit
svn path=/trunk/mcs/; revision=147024
Atsushi Eno [Fri, 27 Nov 2009 03:14:15 +0000 (03:14 -0000)]
2009-11-27 Atsushi Enomoto <atsushi@ximian.com>
* NamespaceHandling.cs, XmlWriterSettings.cs, XmlTextWriter2.cs:
implement NamespaceHandling support for Moonlight.
* System.Xml.dll.sources : added NamespaceHandling which is kept
internal in 2.0 (to simplify its support in XmlTextWriter).
svn path=/trunk/mcs/; revision=147022
Zoltan Varga [Fri, 27 Nov 2009 02:30:37 +0000 (02:30 -0000)]
2009-11-27 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c (emit_globals_table): Use temp_prefix instead of .L in a few
places.
svn path=/trunk/mono/; revision=147020
Atsushi Eno [Fri, 27 Nov 2009 02:00:27 +0000 (02:00 -0000)]
2009-11-27 Atsushi Enomoto <atsushi@ximian.com>
* XNodeWriter.cs : avoid prefix NRE on WriteStartAttribute().
svn path=/trunk/mcs/; revision=147019
Zoltan Varga [Thu, 26 Nov 2009 23:49:12 +0000 (23:49 -0000)]
2009-11-27 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c (emit_globals_table): Emit a hash table for the globals, to
avoid linear searches at runtime.
* aot-runtime.c (find_symbol): Update this to use the hash.
* mini.h: Bump AOT file format version.
svn path=/trunk/mono/; revision=147016
Zoltan Varga [Thu, 26 Nov 2009 21:01:33 +0000 (21:01 -0000)]
Fix the previous commit.
svn path=/trunk/mono/; revision=147013
Zoltan Varga [Thu, 26 Nov 2009 20:53:34 +0000 (20:53 -0000)]
2009-11-26 Zoltan Varga <vargaz@gmail.com>
* mono-ehash.c (mono_g_hash_table_find): Add this for eglib too.
svn path=/trunk/mono/; revision=147011
Zoltan Varga [Thu, 26 Nov 2009 20:45:21 +0000 (20:45 -0000)]
Revert "2009-11-26 Zoltan Varga <vargaz@gmail.com>"
This reverts commit
31215acbb9b24b58c938755143795dd49556a69e.
Revert this pending further testing.
svn path=/trunk/mono/; revision=147010
Zoltan Varga [Thu, 26 Nov 2009 20:39:46 +0000 (20:39 -0000)]
2009-11-26 Zoltan Varga <vargaz@gmail.com>
* mini.c (mono_register_opcode_emulation): Make this a no-op when the JIT
is disabled.
svn path=/trunk/mono/; revision=147009
Zoltan Varga [Thu, 26 Nov 2009 20:39:39 +0000 (20:39 -0000)]
2009-11-26 Zoltan Varga <vargaz@gmail.com>
* aot-compiler.c (emit_klass_info): Save whenever the class has a generic
container.
* aot-runtime.c (decode_cached_class_info): Set the is_generic_container field
too.
svn path=/trunk/mono/; revision=147008
Zoltan Varga [Thu, 26 Nov 2009 20:39:32 +0000 (20:39 -0000)]
2009-11-26 Zoltan Varga <vargaz@gmail.com>
* class-internals.h (MonoCachedClassInfo): Add 'is_generic_container' field.
svn path=/trunk/mono/; revision=147007
Marek Safar [Thu, 26 Nov 2009 17:53:37 +0000 (17:53 -0000)]
New test.
svn path=/trunk/mcs/; revision=147005
Marek Safar [Thu, 26 Nov 2009 17:44:49 +0000 (17:44 -0000)]
2009-11-26 Marek Safar <marek.safar@gmail.com>
A fix for bug #545081
* decl.cs: Check private nested types of nested types recursively.
svn path=/trunk/mcs/; revision=147003