-
barraclough@apple.com authored
Reviewed by Olver Hunt. The current implementation of recursion limit checking is not safe on smaller stacks. Switch to using a common mechanism, shared with the parser, to check recursion limits. Make bytecompiler use StackBounds. Empirical testing shows emitStrcat to have the largest footprint on the stack, at just under 1k on x86-64. Given this, the default recursion check (requiring 4k of available space to recurse) seems reasonable. * bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::BytecodeGenerator): * bytecompiler/BytecodeGenerator.h: (JSC::BytecodeGenerator::emitNode): (JSC::BytecodeGenerator::emitNodeInConditionContext): * bytecompiler/NodesCodegen.cpp: (JSC::BinaryOpNode::emitStrcat): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@74374 268f45cc-cd09-0410-ab3c-d52691b4dbfc
dd4a6e42