On May 19, 2009, at 12:55 PM, Kenneth Christiansen wrote:

Great! I notices that RegExp.h still includes WREC, will that be changed?

WREC should be removed completely fairly soon. We just wanted to leave some overlap with YARR and WREC both in ToT, in case we needed to revert back to WREC for any reason. But right now YARR is looking stable, so we should probably finish the move fairly soon. QT & GTK switching over is clearly a great step towards us being able to do so. :-)

Right now, if it makes life easier, we could probably switch the includes in that file to be:

#if ENABLE(YARR)
#include "yarr/RegexJIT.h"
#include "yarr/RegexInterpreter.h"
#else
#include "WREC.h"
#endif

If it requires the JIT why are there both a ENABLE_YARR and an ENABLE_YARR_JIT ?

YARR can be used both in JIT mode, or as an interpreter (the latter being enabled just with ENABLE_YARR).

Before YARR, platforms either used just pcre (if they did not support any JIT generation), or used WREC for simple regexes, and fell back to pcre for more complex ones. Right now platforms that don't support JIT generation still just use pcre, but platforms that do JIT have switched to using the YARR JIT, falling back to pcre for cases that YARR does not handle (which is fewer than for WREC).

YARR is still work in progress, and the two key things left to do are to optimize the YARR interpreter (which is missing some key and obvious steps in optimization, and as such is still slower that pcre), and to complete the YARR JIT, so it can handle all regular expressions (YARR interpreter already has full coverage, we're just missing some code generation).

Once these tasks are completed we hope to switch platforms that don't support JIT generation over to use YARR interpreter, and that platforms that do support JIT generation will just be using YARR JIT (with no need to fall back to anything else, since it will have complete coverage).

cheers,
G.


Cheers,
Kenneth


On Tue, May 19, 2009 at 9:52 PM, Geoffrey Garen <[email protected]> wrote:
If so, does it work on the same platforms at the JSCore JIT?

What problems are those?

Oops!

"platforms"

Yes, it works on the same platforms as the JSCore JIT.

Geoff

_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to