There are a number of parts of V8 which require JITed code support even in
an interpreter only mode, e.g., inline cache support (e.g., LoadIC
handlers, which are snippets of code genrated at runtime to load a property
from an object depending on its shape), and regexp support.

In addition, even although the bytecode handler can be generated ahead of
time and put into the startup snapshot, the current mechanism for
deserializing the startup snapshot requires V8 to be able to map writable
executable memory pages to write these code objects into, they can't simply
be mapped directly from the file (and making that possible would probably
require significant changes in the GC).

While the interpreter seems like it might make V8 run on platforms without
JITed code support, there would still be a considerable amount of work to
make that happen. As such it isn't one of our priorities right now.

Cheers
Ross
On 23 May 2016 7:00 a.m., <[email protected]> wrote:

> Thanks, I'll try it out with the interpreter.
>
> On Monday, May 23, 2016 at 1:43:12 PM UTC+8, Yang Guo wrote:
>>
>> Not without some changes to the interpreter. The bytecode dispatch table
>> would need to be static, which it currently is not.
>>
>> Cheers,
>>
>> Yang
>>
>> On Sat, May 21, 2016 at 1:09 AM <[email protected]> wrote:
>>
>>> So, is it possible to use sort of 'pre-compiled' bytecode handlers so
>>> that we can avoid allocating exec pages on an x86 or arm machine?
>>>
>>>
>>> On Friday, May 20, 2016 at 3:02:10 PM UTC-7, Yang Guo wrote:
>>>
>>>> Hi,
>>>>
>>>> this is not that easy. The bytecode handlers for the interpreter are
>>>> compiled using parts of Turbofan, so you would at least have to port the
>>>> assembler and Turbofan.
>>>>
>>>> Cheers,
>>>>
>>>> Yang
>>>>
>>>> On Fri, May 20, 2016 at 7:39 PM <[email protected]> wrote:
>>>>
>>> Hi,
>>>>>    I understand that the pure interpreter mode is not a design goal
>>>>> for ignition, but I hope it could be at least an option so that some
>>>>> v8-based project would benefit from it. For example porting v8-based
>>>>> projects to some new OS/cpu arch would be much easier, and making v8
>>>>> working on some very low-end devices with memory constrains could also be
>>>>> possible, and not only IOS, there're places which also prohibit dynamic
>>>>> code code generation (for some security reasons) which makes JIT not
>>>>> possible either. Currently JSC is the only option for this situation but I
>>>>> hope V8 could do that too because v8 has better API set and better
>>>>> performance.  If it is possible to have this option, I would be very happy
>>>>> to help on it.
>>>>> Thanks!
>>>>>
>>>>> --
>>>>> --
>>>>> v8-dev mailing list
>>>>>
>>>> [email protected]
>>>>
>>>>
>>>>> http://groups.google.com/group/v8-dev
>>>>> ---
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "v8-dev" group.
>>>>>
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to [email protected].
>>>>
>>>>
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> --
>>> --
>>> v8-dev mailing list
>>> [email protected]
>>> http://groups.google.com/group/v8-dev
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "v8-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> --
> --
> v8-dev mailing list
> [email protected]
> http://groups.google.com/group/v8-dev
> ---
> You received this message because you are subscribed to the Google Groups
> "v8-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- 
You received this message because you are subscribed to the Google Groups 
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to