We use the stack limit to request interrupts from different threads, so checking it on a regular basis is important
On Mon, Oct 12, 2015, 9:30 PM Adam Klein <ad...@chromium.org> wrote: > Any thoughts here? Caitlin is currently running into exactly the same need > in her do expression patch, so it'd be good to understand if we can do > something general here instead of having most AST visitors be Isolate-bound > while the few used from the parser need special duplicated code for stack > check handling. > > On Tue, Oct 6, 2015 at 4:17 PM, Adam Klein <ad...@chromium.org> wrote: > >> In trying to use AstExpressionVisitor in the parser, I've found the need >> to use an AST visitor where I don't have an Isolate handy. The >> DEFINE_AST_VISITOR_SUBCLASS_MEMBERS macro uses the Isolate for exactly one >> thing (in the method CheckStackOverflow): >> >> ... >> StackLimitCheck check(isolate_); >> if (!check.HasOverflowed()) return false; >> ... >> >> My question is this: is it important that the StackLimitCheck pull the >> stack limit out of the isolate every time CheckStackOverflow() is called? >> Or could we store the stack limit when AST visitors are constructed? The >> latter is what we already do for parsing, in ParseInfo. And from poking >> around the code (and in Blink) it seems like we generally only set the >> stack limit at thread startup. But I'm wondering if there are cases I'm not >> thinking about (maybe cases where a single AST visitor is used on multiple >> threads with the same Isolate?). >> >> - Adam >> > > -- > -- > v8-dev mailing list > v8-dev@googlegroups.com > 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 v8-dev+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- -- v8-dev mailing list v8-dev@googlegroups.com 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 v8-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.