[Mono-dev] Mixed Mode Assemblies

Robert Jordan robertj at gmx.net
Sat Jul 9 14:57:06 EDT 2011

On 09.07.2011 20:12, Tom Spink wrote:
> I agree with you here, Jon, and it sounds like quite an interesting
> exercise.  Of course, one of the other interesting things here would be what
> compiler do you use to generate a mixed-mode ELF?  Or, how do you embed IL
> (and associated metadata) into your ELF - what process do you run to create
> this combination ELF?

The C++ compiler must generate this ELF because it must create
exports for both unmanaged and managed (via thunks) callers.

If this work would be offloaded on another tool, the generation
of the thunks would be nightmare-ish.

> Also, not having looked at the Mono PE loader (in depth), I don't know how
> hard it would be to abstract the container format away from reading
> metadata.  And after having glanced at it just now - it doesn't look /too/
> horrendous.

The container must remain PE because there is no abstraction for
the metadata container format. But the loader could be easily
extended to load PEs from resources of native libraries.


More information about the Mono-devel-list mailing list