Rodrigo Kumpera [Wed, 4 Dec 2013 19:38:26 +0000 (14:38 -0500)]
[runtime]Add the marshal lock to the lock tracer.
Rodrigo Kumpera [Wed, 4 Dec 2013 19:21:48 +0000 (14:21 -0500)]
[runtime]Replace the loader lock with the marshal lock in mono_marshal_load_type_info.
In order to make this possible, we now construct the marshal information without holding
any locks and then double-check on publication.
Rodrigo Kumpera [Wed, 4 Dec 2013 17:34:36 +0000 (12:34 -0500)]
[runtime] Don't hold the loader lock when calling mono_mb_create_method.
mono_mb_create_method no longer requires the loader lock. All use sites
replace the loader lock with simpler locks.
Those new locks cannot be held while we're building the methods themselves
as that piece of code does type resolution - thus taking the loader lock.
Rodrigo Kumpera [Wed, 27 Nov 2013 00:32:34 +0000 (19:32 -0500)]
[runtime] The assembly bindings are now protected by a separate lock instead of the loader lock.
Rodrigo Kumpera [Wed, 27 Nov 2013 00:06:30 +0000 (19:06 -0500)]
[runtime] Change deregister_reflection_info_roots to not take the loader lock.
We should not need the loader lock here as this only deals with dynamic images
that belong to the current domain that is been shutdown.
To ensure this is the case, added an assert to mono_image_append_class_to_reflection_info_set.
Rodrigo Kumpera [Tue, 26 Nov 2013 23:28:14 +0000 (18:28 -0500)]
[runtime] Cleanup usage of reflection_info_unregister_classes. Move it under the image lock and use image memory.
Rodrigo Kumpera [Tue, 26 Nov 2013 21:51:31 +0000 (16:51 -0500)]
[runtime] mono_metadata_clean_for_image no longer needs to return a free list of classes.
Rodrigo Kumpera [Tue, 26 Nov 2013 21:19:58 +0000 (16:19 -0500)]
[runtime] Protect mono_create_icall_signature with the corlib image lock.
Rodrigo Kumpera [Tue, 26 Nov 2013 20:40:46 +0000 (15:40 -0500)]
[runtime] Protect MonoImage::generic_def_objects with the image lock and not the loader lock.
Rodrigo Kumpera [Tue, 26 Nov 2013 20:10:44 +0000 (15:10 -0500)]
[runtime] Introduce the icall lock to be used when looking up icall related information.
Rodrigo Kumpera [Tue, 26 Nov 2013 19:51:53 +0000 (14:51 -0500)]
[runtime] Ensure mono_class_setup_supertypes is atomic and drop the loader lock around it.
Marek Safar [Thu, 5 Dec 2013 19:09:11 +0000 (11:09 -0800)]
Merge pull request #827 from Blewzman/master
Support IReadOnlyList in System.Linq.Enumerable.ElementAt and ElementAtOrDefault
Marek Safar [Thu, 5 Dec 2013 19:04:38 +0000 (20:04 +0100)]
[mcs] Convert dotted paths to full path
Blewzman [Thu, 5 Dec 2013 18:49:04 +0000 (19:49 +0100)]
Small coding style fixes.
Blewzman [Thu, 5 Dec 2013 18:35:35 +0000 (19:35 +0100)]
Support IReadOnlyList in System.Linq.Enumerable.ElementAt and ElementAtOrDefault - with additional unit tests.
Marek Safar [Thu, 5 Dec 2013 12:05:23 +0000 (13:05 +0100)]
[sle] Implement DynamicExpressionVisitor.
Marek Safar [Thu, 5 Dec 2013 10:58:06 +0000 (11:58 +0100)]
Bump ikvm-reflection
Atsushi Eno [Thu, 5 Dec 2013 09:08:29 +0000 (18:08 +0900)]
In ConsoleLogger, add workaround for bogus use of EventSource senders in MS.Build.Engine.
See comments for details.
Marek Safar [Thu, 5 Dec 2013 08:45:26 +0000 (09:45 +0100)]
[corlib] Implement task awaiters running on custom task scheduler. Fixes #16587
Alex Rønne Petersen [Wed, 4 Dec 2013 23:27:51 +0000 (00:27 +0100)]
Fix monograph to build under various --disable-boehm/--disable-libraries configurations.
Zoltan Varga [Wed, 4 Dec 2013 23:13:05 +0000 (00:13 +0100)]
Fix the pp64 build.
Zoltan Varga [Wed, 4 Dec 2013 22:07:40 +0000 (23:07 +0100)]
Fix the windows build.
Alex Rønne Petersen [Wed, 4 Dec 2013 19:54:50 +0000 (20:54 +0100)]
Also use __builtin_extract_return_addr in these files.
Alex Rønne Petersen [Wed, 4 Dec 2013 19:48:44 +0000 (20:48 +0100)]
Apply __builtin_extract_return_addr to the result of __builtin_return_address.
Alex Rønne Petersen [Wed, 4 Dec 2013 19:41:49 +0000 (20:41 +0100)]
Fix some warnings in mini-arm.c.
Martin Baulig [Wed, 4 Dec 2013 19:32:48 +0000 (20:32 +0100)]
[xbuild]: Fix the tests.
'TestMessageLogger.Count' should not be used in tests to check for the
number of logged messages because it would also includes diagnostic messages.
Extra diagnostic messages should not be considered an error condition; in
fact, we have too few diagnostic messages, not too many.
Use 'TestMessageLogger.NormalMessageCount' and 'TestMessageLogger.WarningMessageCount'
instead.
Alex Rønne Petersen [Wed, 4 Dec 2013 16:31:47 +0000 (17:31 +0100)]
Fix some pointer/integer size issues in unwind.c on 32-bit systems.
Alex Rønne Petersen [Wed, 4 Dec 2013 16:26:08 +0000 (17:26 +0100)]
Add a dummy assignment to shut GCC up.
Alex Rønne Petersen [Wed, 4 Dec 2013 15:57:42 +0000 (16:57 +0100)]
Fix some warnings caused by always_inline functions not being marked inline.
Marek Safar [Wed, 4 Dec 2013 15:46:00 +0000 (16:46 +0100)]
[corlib] Better conversion betwen system locale and CultureInfo. Fixes #15875
Alex Rønne Petersen [Wed, 4 Dec 2013 14:27:54 +0000 (15:27 +0100)]
Fix some warnings in mini-amd64.c.
Alex Rønne Petersen [Wed, 4 Dec 2013 14:19:31 +0000 (15:19 +0100)]
Fix a couple of warnings in mini-exceptions.c.
Alex Rønne Petersen [Wed, 4 Dec 2013 14:19:18 +0000 (15:19 +0100)]
Fix more PPC warnings.
Alex Rønne Petersen [Wed, 4 Dec 2013 14:08:30 +0000 (15:08 +0100)]
Fix a warning on PPC.
Zoltan Varga [Wed, 4 Dec 2013 12:18:44 +0000 (04:18 -0800)]
Merge pull request #824 from hanswolff/patch-1
Fixed missing pointer conversion tests in sizes.c
Alex Rønne Petersen [Wed, 4 Dec 2013 11:56:44 +0000 (12:56 +0100)]
Unbreak libgc.
Marek Safar [Wed, 4 Dec 2013 11:17:27 +0000 (12:17 +0100)]
[corlib] CreateSpecificCulture without exception retry
Alex Rønne Petersen [Wed, 4 Dec 2013 10:37:33 +0000 (11:37 +0100)]
Remove some more mdb bits.
Marek Safar [Wed, 4 Dec 2013 09:46:10 +0000 (10:46 +0100)]
[corlib] Update CurrentRegion to work with DefaultThreadCurrentCulture
Mark Probst [Wed, 4 Dec 2013 09:32:26 +0000 (10:32 +0100)]
[sgen] Link unit test programs with all libs.
Should fix the build for monodroid.
Hans Wolff [Wed, 4 Dec 2013 09:09:11 +0000 (10:09 +0100)]
Fixed missing pointer conversion tests in sizes.c
Unsigned pointer conversion was not tested at all (looks like a copy & paste mistake)
Martin Baulig [Wed, 4 Dec 2013 00:42:10 +0000 (01:42 +0100)]
[xbuild]: Check a <Target>'s "Returns" first, then fall-back to "Outputs".
This fixes a problem with the "Microsoft.Bcl.Build" NuGet package, which
overrides the "GetTargetPath" target in a custom .targets file and uses
"Returns" instead of "Outputs".
Martin Baulig [Tue, 3 Dec 2013 22:35:28 +0000 (23:35 +0100)]
[xbuild]: Provide diagnostic logging of all executed targets.
Martin Baulig [Tue, 3 Dec 2013 19:49:31 +0000 (20:49 +0100)]
[xbuild]: Allow expressions inside a dynamic <ItemGroup>'s metadata.
Fixes #14661.
Zoltan Varga [Tue, 3 Dec 2013 19:06:27 +0000 (20:06 +0100)]
Fix the build.
Alex Rønne Petersen [Tue, 3 Dec 2013 18:40:37 +0000 (19:40 +0100)]
[sdb] Support a setpgid=y/n option to --debugger-agent.
Mark Probst [Tue, 3 Dec 2013 18:16:28 +0000 (19:16 +0100)]
[sgen] Never invoke libc’s memmove() or bzero().
Those two functions are not guaranteed to do word-atomic copying or
zeroing under any circumstances. memmove() on OSX, for instance,
has an SSE optimized variant that, if source and destination are 8-byte,
but not 16-byte aligned, will copy the first 8 bytes byte-wise, which can
crash SGen.
Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=16449.
Marek Safar [Tue, 3 Dec 2013 18:19:38 +0000 (19:19 +0100)]
[mcs] Report nice error instead of crash for cyclic type forwarders. Fixes #16385
Marek Safar [Tue, 3 Dec 2013 17:36:47 +0000 (18:36 +0100)]
[mcs] Report all failure errors in lambda conversions. Fixes #16513
Marek Safar [Tue, 3 Dec 2013 16:53:31 +0000 (17:53 +0100)]
[corlib] Replace manual array resize with Resize call
Atsushi Eno [Tue, 3 Dec 2013 16:37:38 +0000 (01:37 +0900)]
Fix android-specific build (use of unassigned variable).
Alex Rønne Petersen [Tue, 3 Dec 2013 12:37:27 +0000 (13:37 +0100)]
Sanitize the kqueue check in configure.in.
Mark Probst [Tue, 3 Dec 2013 10:24:04 +0000 (02:24 -0800)]
[sgen] Fix build on Linux.
Alex Rønne Petersen [Tue, 3 Dec 2013 09:04:58 +0000 (10:04 +0100)]
Merge branch 'armhf' of github.com:alexrp/mono
Atsushi Eno [Tue, 3 Dec 2013 07:55:47 +0000 (16:55 +0900)]
Remove private sln/csproj files.
Atsushi Eno [Mon, 2 Dec 2013 19:55:17 +0000 (04:55 +0900)]
update .csproj.
Atsushi Eno [Mon, 2 Dec 2013 19:55:03 +0000 (04:55 +0900)]
Add missing exception types.
Atsushi Eno [Mon, 2 Dec 2013 19:54:31 +0000 (04:54 +0900)]
ProjectCollection.DefaultToolsVersion is settable.
Atsushi Eno [Mon, 2 Dec 2013 10:05:12 +0000 (19:05 +0900)]
Some parser error message got source string for Condition evaluation.
Atsushi Eno [Mon, 2 Dec 2013 10:04:20 +0000 (19:04 +0900)]
Target items related fixes - give diagnostic outputs for initial items. Evaluate item condition.
Atsushi Eno [Fri, 29 Nov 2013 15:44:57 +0000 (00:44 +0900)]
Fix some default properties: OutputType has default to Exe. AssemblyName defaults to the project file name, not RootNamespace.
Atsushi Eno [Fri, 29 Nov 2013 14:41:09 +0000 (23:41 +0900)]
Enable parallel build test, with successful command, now that ConsoleLogger is now parallel ready.
Atsushi Eno [Fri, 29 Nov 2013 14:40:46 +0000 (23:40 +0900)]
ConsoleLogger is now parallel build ready.
Atsushi Eno [Fri, 29 Nov 2013 11:02:09 +0000 (20:02 +0900)]
Fixed Task output item string result creator and fixed test expectation.
Item output task parameters don't show up on TargetResult Items. Instead
those items can be retrieved via ProjectInstance after builds.
Atsushi Eno [Fri, 29 Nov 2013 09:55:54 +0000 (18:55 +0900)]
Empty items could still slipped in when converting string to array.
ResolveAssemblyReferences was hit with empty SearchPaths because of this.
Atsushi Eno [Fri, 29 Nov 2013 08:42:25 +0000 (17:42 +0900)]
Make sure to raise matching TaskFinished event.
Atsushi Eno [Fri, 29 Nov 2013 07:55:12 +0000 (16:55 +0900)]
While converting string to array, trim each element before converting.
ResolveAssemblyReferences should work now.
Atsushi Eno [Fri, 29 Nov 2013 07:08:24 +0000 (16:08 +0900)]
implement "skip target due to previous success" feature.
Atsushi Eno [Fri, 29 Nov 2013 06:37:59 +0000 (15:37 +0900)]
Improve item evaluation whitespace handling.
Atsushi Eno [Fri, 29 Nov 2013 06:37:40 +0000 (15:37 +0900)]
disable parallel build test because it is ConsoleLogger which does not work fine.
Atsushi Eno [Fri, 29 Nov 2013 06:14:29 +0000 (15:14 +0900)]
ProjectTaskOutputPropertyInstance was not appropriately created.
Atsushi Eno [Thu, 28 Nov 2013 16:00:52 +0000 (01:00 +0900)]
Make sure to use BuildNodeManager in any build run, and corrected error handling to somewhat better state.
Also, now EndBuild() won't finish until all callbacks are done.
Atsushi Eno [Thu, 28 Nov 2013 10:51:37 +0000 (19:51 +0900)]
LoadProject() should add the loaded project to the collection.
Atsushi Eno [Thu, 28 Nov 2013 10:29:06 +0000 (19:29 +0900)]
Any errors inside BuildEngine build could be logged by loggers.
Some exceptions _outside_ that can be still on stderr, but they are
much less now.
Atsushi Eno [Thu, 28 Nov 2013 10:05:57 +0000 (19:05 +0900)]
Give Project FullPath a unique name for each test so that error outputs could be attributed.
Atsushi Eno [Thu, 28 Nov 2013 05:24:06 +0000 (14:24 +0900)]
Make sure to fire TargetFinished event in any result (namely, internal error).
That possible mismatch caused invalid Stack operation in ConsoleLogger.
Atsushi Eno [Thu, 28 Nov 2013 05:14:45 +0000 (14:14 +0900)]
couple of minor refactoring and warnings cleanup.
BuildSubmission.IsCompleted is valid now.
Renamed some argument in BuildEngine4.
Removed ProjectTargetInstance field by moving them to arguments in BuildEngine4.
Atsushi Eno [Wed, 27 Nov 2013 19:04:51 +0000 (04:04 +0900)]
do not try to evaluate and set non-required and empty Task parameter for ITask instance.
Atsushi Eno [Wed, 27 Nov 2013 18:41:10 +0000 (03:41 +0900)]
fix test file name.
Atsushi Eno [Wed, 27 Nov 2013 18:12:49 +0000 (03:12 +0900)]
Handle target Inputs and Outputs so that extra targets can be skipped. Add some value convert (for task property) tests.
Atsushi Eno [Wed, 27 Nov 2013 15:56:24 +0000 (00:56 +0900)]
For Condition, "yes", "no", "on" and "off" are also treated as valid boolean...
Atsushi Eno [Wed, 27 Nov 2013 15:55:56 +0000 (00:55 +0900)]
For ItemType-less metadata expression, apply all items in the project.
Atsushi Eno [Wed, 27 Nov 2013 15:35:57 +0000 (00:35 +0900)]
Evaluate Target Condition too.
Atsushi Eno [Wed, 27 Nov 2013 15:13:41 +0000 (00:13 +0900)]
Make use of XBUILD_FRAMEWORK_FOLDERS_PATH in GetReferenceAssemblyPaths task and make it testable importing common targets.
Atsushi Eno [Wed, 27 Nov 2013 14:09:11 +0000 (23:09 +0900)]
implement MetadataAccessExpression evaluate methods.
Atsushi Eno [Wed, 27 Nov 2013 12:52:10 +0000 (21:52 +0900)]
ProjectInstance never had valid ToolsVersion because ProjectRootElement holds "", not null(!) for default value.
Atsushi Eno [Wed, 27 Nov 2013 12:37:15 +0000 (21:37 +0900)]
Fix ProjectInstance.ToolsVersion, never returned valid value.
Atsushi Eno [Wed, 27 Nov 2013 11:59:08 +0000 (20:59 +0900)]
Check Condition on task parameter before trying to apply it.
Atsushi Eno [Wed, 27 Nov 2013 11:51:06 +0000 (20:51 +0900)]
Well-Known metadata support is now in ProjectItemInstance too, sharing code with ProjectItem.
Atsushi Eno [Wed, 27 Nov 2013 11:01:23 +0000 (20:01 +0900)]
Split lengthy DoBuildTarget() function into understandable units.
Atsushi Eno [Wed, 27 Nov 2013 10:39:58 +0000 (19:39 +0900)]
Project.GetItems() and ProjectInstance.GetItems() are now shared code.
They will involve more complication and I don't want to have duplicates.
Atsushi Eno [Wed, 27 Nov 2013 10:17:30 +0000 (19:17 +0900)]
add some workaround for "PLATFORM" property that should not be filled by environment.
Add some tests to evaluate IntermediateOutputPath.
Atsushi Eno [Wed, 27 Nov 2013 10:17:19 +0000 (19:17 +0900)]
implement UnloadProject().
Atsushi Eno [Wed, 27 Nov 2013 08:36:53 +0000 (17:36 +0900)]
STRING_LITERAL could contain expandable expressions, so evaluate them too.
We cannot simply "expand strings first then evaluate condition as boolean"
because there are things like "$(A)=='true'" which is expanded as "=='true'".
Atsushi Eno [Wed, 27 Nov 2013 07:58:02 +0000 (16:58 +0900)]
remove redundant "throw NIE".
Atsushi Eno [Wed, 27 Nov 2013 07:57:24 +0000 (16:57 +0900)]
implement ExpressionParserManual.EvaluateMetadataExpression().
Atsushi Eno [Wed, 27 Nov 2013 07:09:42 +0000 (16:09 +0900)]
Forgot to rename namespace in .jay.
Atsushi Eno [Wed, 27 Nov 2013 07:04:51 +0000 (16:04 +0900)]
For expression stuff, change namespace to MS.Build.Internal.Expressionns.
Too annoying to track build engine traces.
Atsushi Eno [Wed, 27 Nov 2013 07:04:10 +0000 (16:04 +0900)]
Add more diagnostic logging in BuildEngine4.
Atsushi Eno [Tue, 26 Nov 2013 12:00:25 +0000 (21:00 +0900)]
update .csproj.