Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-04-02 Thread C.Rivlaldo
Hello! Firstly I must say big thanks to Elijah again. I had successfully run a part of our C# code with Mono on NaCl. But occasionally I'm finding some bugs with global variables in Mono, which value is equal 0x. For example: * assemly_search_hook in assembly.c, * global_codeman in

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-02-19 Thread C.Rivlaldo
Elijah, I had compiled Mono from your patch. Big thanks for your complete answer! -- View this message in context: http://mono.1490590.n4.nabble.com/PATCH-more-support-for-Google-Native-Client-tp3159583p3313930.html Sent from the Mono - Dev mailing list archive at Nabble.com.

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-02-18 Thread C.Rivlaldo
Hello! I'm trying to compile Mono 2.10 for Nacl at Ubuntu with using Elijah's patch. After executing nacl-runtime-mono.sh I had some error about undefined reference: genmdesc.c:29: undefined reference to `__nacl_suspend_thread_if_needed' Why it happened? Please, help me. I want to compile mono

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-02-18 Thread Elijah Taylor
Hi, Take a look at this: https://github.com/elijahtaylor/mono/blob/master/mono/mini/genmdesc.c This includes a dummy implementation of __nacl_suspend_thread_if_needed for that file. It wasn't merged into mono's head because it's a temporary measure and won't be required long term. Essentially

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-06 Thread Zoltan Varga
Hi, I merged your changes to mono's master except for the following: runtime/mono-wrapper.in mono/mini/genmdesc.c nacl/ Zoltan On Thu, Jan 6, 2011 at 2:22 AM, Elijah Taylor elijahtay...@google.comwrote: Ok, I'll check out the changes/info you mentioned and go

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-06 Thread Zoltan Varga
Hi, I had to revert this change, as it was causing crashes on amd64: @@ -357,8 +494,10 @@ mono_code_manager_reserve_align (MonoCodeManager *cman, int size, int alignment) for (chunk = cman-current; chunk; chunk = chunk-next) { if (ALIGN_INT (chunk-pos, alignment) + size = chunk-size) {

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-06 Thread Elijah Taylor
This bit of code runs for our AOT compiler, but not for our JIT (in that case, it's a native 32-bit app that defines __native_client_codegen__). The problem is that chunk-data isn't guaranteed to be aligned to MIN_ALIGN **or** the alignment you pass into *mono_code_manager_reserve_align* if you

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-06 Thread Zoltan Varga
Hi, Its fixed now, it was missing a (uintptr_t) cast around align_mask. mono_valloc () is supposed to return pagesize aligned memory, isn't that enough ? Zoltan On Thu, Jan 6, 2011 at 8:14 PM, Elijah Taylor elijahtay...@google.comwrote: This bit of code runs for our AOT

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-06 Thread Elijah Taylor
Page alignment would be good enough, but I wasn't clear because I had forgotten some details. When I saw this behavior we were using the dummy implementation of mono_valloc which falls back on malloc, which I don't believe we use anymore for the AOT compiler since it's a native app. This code is

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-06 Thread Elijah Taylor
Also, if any of the memory allocation routines don't get a larger alignment like pages, and instead just use MIN_ALIGN, yet pass in a larger alignment requirement to *mono_code_manager_reserve_align*, this code would be needed too. (sounds a bit contrived I guess :) On Thu, Jan 6, 2011 at 11:41

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-06 Thread Elijah Taylor
Hi Zoltan, I've rebased my fork after your merge and subsequent fixes, and everything seems to be working great with NaCl (I think the amd64 crash you were seeing might have been the same one I was seeing). Thanks for the help with reviewing the code and merging it in, I'm really glad we finally

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-05 Thread Elijah Taylor
Hi Zoltan, I've addressed all of the issues you pointed out (minus genmdesc.c: __nacl_suspend_thread_if_needed, but that doesn't need to be merged in at this time, it can remain in my local repository only). Please take another look at your earliest convenience and let me know if there's

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-05 Thread Zoltan Varga
Hi, I think the current code looks ok, and we should think about how to merge it into mono trunk. As a first step, could you rebase your master branch on top of master to fix the few conflicts which has surfaced due to changes to mono master ? Zoltan On Wed, Jan 5, 2011 at

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-05 Thread Elijah Taylor
Zoltan, I've rebased from mono's master branch and fixed all merge conflicts, but something that's gone in since I first forked has now broken NaCl AOT compilation for me. On amd64 the compiler just crashes and I'm looking into that, nut on x86 I'm getting this: Can't use AOT image 'mscorlib' in

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-05 Thread Zoltan Varga
Hi, On Thu, Jan 6, 2011 at 1:24 AM, Elijah Taylor elijahtay...@google.comwrote: Zoltan, I've rebased from mono's master branch and fixed all merge conflicts, but something that's gone in since I first forked has now broken NaCl AOT compilation for me. On amd64 the compiler just crashes and

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-05 Thread Zoltan Varga
Hi, This should work as follows: every aot image contains a MonoAotFileInfo structure, emitted in emit_file_info () in aot-compiler.c, which has a 'flags' field, and the MONO_AOT_FILE_FLAG_FULL_AOT flag should be set in this field. At runtime, check_usable() in aot-runtime.c checks this flag.

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-05 Thread Elijah Taylor
Ok, I'll check out the changes/info you mentioned and go through the files that auto-merged, too. Probably won't get this done for at least a day or so, but I'll rebase again once I've fixed it. Hopefully by that point something else won't have broken too :) -Elijah On Wed, Jan 5, 2011 at

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-04 Thread Zoltan Varga
Hi, Some comments: - the patch changes IMT_REG to AMD64_R11 in the non-nacl case, I'm not sure thats intentional. - you could define __mono_ilp32__ in the nacl/amd64 case, and use that instead of defined(__native_client_codegen__) defined(TARGET_AMD64) in a few places. - it would be better

Re: [Mono-dev] [PATCH] more support for Google Native Client

2011-01-04 Thread Elijah Taylor
Replies inline: On Tue, Jan 4, 2011 at 10:30 AM, Zoltan Varga var...@gmail.com wrote: Hi, Some comments: - the patch changes IMT_REG to AMD64_R11 in the non-nacl case, I'm not sure thats intentional. Has this changed in the last six months on the Mono side? IIRC I didn't mean to

Re: [Mono-dev] [PATCH] more support for Google Native Client

2010-12-25 Thread Rodrigo Kumpera
Hi Elijah, The patchset is indeed huge and will take quite some review effort to get it in. I'll start by reviewing the bug fixes then move to ILP32 support. Since you guys had to add GC support for cooperative parking, it would be interesting to merge this effort with the current one toward

Re: [Mono-dev] [PATCH] more support for Google Native Client

2010-12-25 Thread Elijah Taylor
Hi Rodrigo, On Sat, Dec 25, 2010 at 5:01 AM, Rodrigo Kumpera kump...@gmail.com wrote: The patchset is indeed huge and will take quite some review effort to get it in. I'll start by reviewing the bug fixes then move to ILP32 support. Yes, sorry about that. I would have loved to have sent

[Mono-dev] [PATCH] more support for Google Native Client

2010-12-21 Thread Elijah Taylor
Greetings Mono developers! *[tl;dr very large patch for Native Clienthttp://www.chromium.org/nativeclient support hosted here https://github.com/elijahtaylor/mono, would love feedback and many eyes to look at it] * I'm back with another round of changes for supporting Google's Native Client