[pcre-dev] JIT increase stack requirement for SVN 1295

Página superior
Eliminar este mensaje
Autor: Ralf Junker
Fecha:  
A: pcre-dev@exim.org
Asunto: [pcre-dev] JIT increase stack requirement for SVN 1295
The SVN 1295 JIT engine on Win32 requires more stack than before to
compile patterns with a large number repeated subpatterns.

I did not track which code change exactly is responsible for the
increase, but compared to SVN 1239 I had to almost double the maximum
stack size from about 660000 to 1120000 in order to prevent an
out-of-stack exception for these patterns:

(a)(?2){0,1999}?(b)
(a)(?(DEFINE)(b))(?2){0,1999}?(?2)

I am not sure if this is a bug or simply a side-effect required by the
new JIT features. However, it might be worth noting that the non-JIT
compiler requires considerably less stack so improvement might be possible.

Ralf