WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
53496
Replace PCRE with Yarr in WebCore
https://bugs.webkit.org/show_bug.cgi?id=53496
Summary
Replace PCRE with Yarr in WebCore
Peter Varga
Reported
2011-02-01 08:33:15 PST
PCRE isn't used in JavaScriptCore anymore and the time has come to remove PCRE from WebCore as well. The PCRE's jsRegExp matching functions should be changed to the analogue of Yarr Interpreter's functions.
Attachments
proposed patch
(30.56 KB, patch)
2011-02-01 08:37 PST
,
Peter Varga
no flags
Details
Formatted Diff
Diff
proposed patch v1.1
(29.97 KB, patch)
2011-02-01 08:47 PST
,
Peter Varga
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Peter Varga
Comment 1
2011-02-01 08:37:40 PST
Created
attachment 80761
[details]
proposed patch
Peter Varga
Comment 2
2011-02-01 08:47:27 PST
Created
attachment 80762
[details]
proposed patch v1.1 The WebCore's pbxproj file modification is removed from the patch.
Mark Rowe (bdash)
Comment 3
2011-02-01 10:26:01 PST
Please don’t modify the .order files. They’re periodically updated in an automated fashion. There’s no benefit to updating them manually in between.
Gavin Barraclough
Comment 4
2011-02-01 12:15:27 PST
Hi Peter, this looks really great. I'm waiting to see the test bots go green & then I'll r+ (though please follow mark's comment re .order files).
Gavin Barraclough
Comment 5
2011-02-01 19:41:55 PST
Comment on
attachment 80762
[details]
proposed patch v1.1 Shame, looks like a couple of test bots have stalled? r+, since after a day of waiting the ones that did run are green. This patch looks good as is, and getting rid of PCRE will be fantastic. I think it would probably be even better to try to unify jsc/runtime/RegExp with WebCore's RegularExpression class (with the product of this merge likely living in wtf/text?) - whether this is ultimately possible or not, this patch is a really great step in the right direction.
WebKit Review Bot
Comment 6
2011-02-04 06:58:31 PST
http://trac.webkit.org/changeset/77625
might have broken Windows Release (Build) and Windows Debug (Build)
Dimitri Glazkov (Google)
Comment 7
2011-02-04 07:07:35 PST
Borked Chromium build too.
WebKit Review Bot
Comment 8
2011-02-04 07:43:40 PST
http://trac.webkit.org/changeset/77626
might have broken Leopard Intel Release (Tests) The following tests are not passing: platform/mac/fast/AppleScript/date.html
Csaba Osztrogonác
Comment 9
2011-02-04 10:28:46 PST
Comment on
attachment 80762
[details]
proposed patch v1.1 landed in
http://trac.webkit.org/changeset/77626
and rolled out:
http://trac.webkit.org/changeset/77630
because of build breaks
Csaba Osztrogonác
Comment 10
2011-02-04 10:38:02 PST
Peter, could you check the build fails at monday, please? I copied the build logs here: Build log from Windows bot after
http://trac.webkit.org/changeset/77626
and
http://trac.webkit.org/changeset/77628
windows buildfixes: 3>..\platform\text\RegularExpression.cpp(103) : error C2057: expected constant expression 3>..\platform\text\RegularExpression.cpp(103) : error C2466: cannot allocate an array of constant size 0 3>..\platform\text\RegularExpression.cpp(103) : error C2133: 'offsets' : unknown size Build log from Chromium Windows bot: 22>webcore_platform.lib(RegularExpression.obj) : error LNK2019: unresolved external symbol "struct JSRegExp * __cdecl jsRegExpCompile(wchar_t const *,int,enum JSRegExpIgnoreCaseOption,enum JSRegExpMultilineOption,unsigned int *,char const * *)" (?jsRegExpCompile@@YAPAUJSRegExp@@PB_WHW4JSRegExpIgnoreCaseOption@@W4JSRegExpMultilineOption@@PAIPAPBD@Z) referenced in function "private: static struct JSRegExp * __cdecl WebCore::RegularExpression::Private::compile(class WTF::String const &,enum WTF::TextCaseSensitivity)" (?compile@Private@RegularExpression@WebCore@@CAPAUJSRegExp@@ABVString@WTF@@W4TextCaseSensitivity@
6@@Z
) 22>webcore_platform.lib(RegularExpression.obj) : error LNK2019: unresolved external symbol "void __cdecl jsRegExpFree(struct JSRegExp *)" (?jsRegExpFree@@YAXPAUJSRegExp@@@Z) referenced in function "public: __thiscall WebCore::RegularExpression::Private::~Private(void)" (??1Private@RegularExpression@WebCore@@QAE@XZ) 22>webcore_platform.lib(RegularExpression.obj) : error LNK2019: unresolved external symbol "int __cdecl jsRegExpExecute(struct JSRegExp const *,wchar_t const *,int,int,int *,int)" (?jsRegExpExecute@@YAHPBUJSRegExp@@PB_WHHPAHH@Z) referenced in function "public: int __thiscall WebCore::RegularExpression::match(class WTF::String const &,int,int *)const " (?match@RegularExpression@WebCore@@QBEHABVString@WTF@@HPAH@Z) 22>E:\google-windows-1\chromium-win-release\build\Source\WebKit\chromium\Release\DumpRenderTree.exe : fatal error LNK1120: 3 unresolved externals 21>webcore_platform.lib(RegularExpression.obj) : error LNK2019: unresolved external symbol "struct JSRegExp * __cdecl jsRegExpCompile(wchar_t const *,int,enum JSRegExpIgnoreCaseOption,enum JSRegExpMultilineOption,unsigned int *,char const * *)" (?jsRegExpCompile@@YAPAUJSRegExp@@PB_WHW4JSRegExpIgnoreCaseOption@@W4JSRegExpMultilineOption@@PAIPAPBD@Z) referenced in function "private: static struct JSRegExp * __cdecl WebCore::RegularExpression::Private::compile(class WTF::String const &,enum WTF::TextCaseSensitivity)" (?compile@Private@RegularExpression@WebCore@@CAPAUJSRegExp@@ABVString@WTF@@W4TextCaseSensitivity@
6@@Z
) 21>webcore_platform.lib(RegularExpression.obj) : error LNK2019: unresolved external symbol "void __cdecl jsRegExpFree(struct JSRegExp *)" (?jsRegExpFree@@YAXPAUJSRegExp@@@Z) referenced in function "public: __thiscall WebCore::RegularExpression::Private::~Private(void)" (??1Private@RegularExpression@WebCore@@QAE@XZ) 21>webcore_platform.lib(RegularExpression.obj) : error LNK2019: unresolved external symbol "int __cdecl jsRegExpExecute(struct JSRegExp const *,wchar_t const *,int,int,int *,int)" (?jsRegExpExecute@@YAHPBUJSRegExp@@PB_WHHPAHH@Z) referenced in function "public: int __thiscall WebCore::RegularExpression::match(class WTF::String const &,int,int *)const " (?match@RegularExpression@WebCore@@QBEHABVString@WTF@@HPAH@Z) 21>E:\google-windows-1\chromium-win-release\build\Source\WebKit\chromium\Release\webkit_unit_tests.exe : fatal error LNK1120: 3 unresolved externals
Peter Varga
Comment 11
2011-02-09 04:30:00 PST
Landed in
http://trac.webkit.org/changeset/78042
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug