[Mono-dev] [PATCH] Mono and the MOSA Project

Phil Garcia phil at thinkedge.com
Tue Apr 13 11:59:20 EDT 2010


This is an update to my previous e-mail.

Attached is an updated patch against last night's SVN head (r155270) instead
of 2.6.3. There were a lot of changes since 2.6.3! The patch also
contains additional classes in corlib/System, including Object.

As discussed earlier, there is only one regression in the corlib unit tests
due to a change in method order for Object class:

3)
MonoTests.System.Reflection.Emit.TypeBuilderTest.TestGetMethodsIncomplete_Mono
:   #D1
  Expected string length 7 but was 8. Strings differ at index 0.
  Expected: "GetType"
  But was:  "ToString"
  -----------^

As far as I can tell this test case is superfluous and unnecessary.

Thank you,

Phil

www.mosa-project.org
On Wed, Apr 7, 2010 at 7:36 PM, Phil Garcia <phil at thinkedge.com> wrote:

> Hello. I’m one of the developers on the MOSA project – an open source
> project to develop a managed operating system based on .NET framework with
> an AOT/JIT compiler. We are working to incorporate the Mono class libraries
> within our project.
>
> We submit the attached patch for 14 classes in corlib against 2.6.3. The
> patch moves all the InternalCalls declarations into separate partial class
> files for String, Char, Double, Decimal, Array, DateTime, Type, ValueType,
> RuntimeMethodHandle, Math, Buffer, GC, TypedReference, and Convert. The
> patch has been tested against the corlib unit tests (make run-test) without
> any regressions.
>
> Since we are implementing everything in .NET/C# we don’t need InternalCalls
> to call external API bindings. In fact, the external declarations in the
> source code get into the way. So we have moved the InternalCalls method
> declarations into separate partial class files (for example,
> String.Internal.cs). This patch allows us to compile Mono class libraries
> without referencing those external methods declarations and substitute own
> managed versions.
>
> We had updated the Object class too, but it caused a single failed test so
> we have excluded it from here. The test failed due to a change in the order
> of the Object class methods. We are not sure if this is just a paranoia
> check (but kumpera on IRC said "tons of user code can depend on it").
> Otherwise, all the other tests passed. We checked the new mscorlib from .NET
> 4.0 through ildasm and Mono doesn't follow the same method ordering for
> Object. Is the ordering of methods for the Object class really important for
> Mono?
>
> We will have many more patches in the future, but this will get us started
> for now.
>
> Phil
>
> www.mosa-project.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20100413/ba26cbc4/attachment-0001.html 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Patch2.zip
Type: application/zip
Size: 26837 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-devel-list/attachments/20100413/ba26cbc4/attachment-0001.zip 


More information about the Mono-devel-list mailing list