Oh, then I misunderstood the code.  Where's the bit that deals with NX
(or XN in ARM parlance) being enabled on the process?  In particular,
Apple has a W^X policy (on OSX & iOS).  I only saw mprotect mentioned
in the platform code with respect to the OS::Protect & OS::Unprotect,
which is the mechanism I assumed v8 would use to properly handle NX.

Thanks,
Vitali

On Apr 14, 12:33 am, Søren Gjesse <[email protected]> wrote:
> You can leave OS:Protect and OS::Unprotect unimplemented. They are only used
> when ENABLE_HEAP_PROTECTION is defined, and that was intented to be used for
> tracking external writes to the V8 heap, but it newer amounted to anything.
> On some platforms e.g. MacOS they are just UNIMPLEMENTED();
>
> Regards,
> Søren
>
>
>
>
>
>
>
> On Thu, Apr 14, 2011 at 06:16, <[email protected]> wrote:
>
> > Comment #5 on issue 1312 by [email protected]: It's time to get iOS
> > supported!
>
> >http://code.google.com/p/v8/issues/detail?id=1312
>
> > iOS only allows PROT_READ | PROT_EXEC or PROT_READ|PROT_WRITE.  It does not
> > allow PROT_WRITE | PROT_EXEC.  Would it cause problems to define the
> > Unprotect functions for executable pages as being changed away from
> > executable?
>
> > --
> > v8-dev mailing list
> > [email protected]
> >http://groups.google.com/group/v8-dev

-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to