[Mono-dev] [PATCH] Implement support for mixed-mode assemblies on Windows x64 as well
Kornél Pál
kornelpal at gmail.com
Mon Jun 16 15:56:59 EDT 2008
Hi,
The attached patch makes some modifications to enable mixed-mode
assembly support on Windows x64 as well.
I already update mixed-mode tests to support x64 and are working with
this patch.
domain.c: Avoid system error message boxes.
assembly.c: Use __ImageBase instead of mono_module_handle that is
defined by the linker; no initialization required.
image.c: mono_image_open_from_module_handle: Replace ref_count argument
with has_entry_point. Handle do_mono_image_load fauilre correctly.
mono_image_open_full, mono_image_close: Use has_entry_point instead of
coff_attributes.
coree.c: _CorValidateImage: Convert platform independent PE32 images to
PE32+ on 64-bit Windows that makes the OS able to load CIL images as
modules.
MonoFixupCorEE: Export Address Table RVAs are 32-bit unsigned integers
so memory has to be allocated for trampolines (x64) or procedure labels
(IA64) up to 4 GB away from image base address. IA64 version is not
tested but was very easy to implement and should work if we ever need it.
Also contains some work to make MonoFixupCorEE reversible when unloading
mono.dll but that's not implemented yet.
Please test the attached patch and if you like it, please approve it.
Kornél
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: mixed-mode-x64.diff.txt
Url: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20080616/87256f72/attachment-0001.txt
More information about the Mono-devel-list
mailing list