From 31ded7e5aa5f2466eec7033a90a91669657e33d5 Mon Sep 17 00:00:00 2001 From: Iain Ireland <iireland@mozilla.com> Date: Thu, 4 Jun 2020 14:35:04 +0000 Subject: [PATCH] Bug 1642493: Clean up remaining references to ENABLE_NEW_REGEXP and old irregexp r=mgaudet I kept a running list of code that would be dead once we removed the old engine. This is what was on that list. Note: The regexp_parse tests used a testing function that parsed a regexp and returned an AST to compare against the expected AST. They are being deleted because the tests are fragile in the face of upstream changes, not particularly useful, and a lot of work to convert. Depends on D77727 Differential Revision: https://phabricator.services.mozilla.com/D77728 --- .clang-format-ignore | 4 - js/moz.configure | 13 -- js/src/fuzz-tests/moz.build | 6 +- js/src/jit-test/lib/regexp_parse.js | 205 ------------------ .../binast/lazy/regexp_parse/Assertion.binjs | Bin 481 -> 0 bytes .../tests/binast/lazy/regexp_parse/Atom.binjs | Bin 733 -> 0 bytes .../Atom_CharacterClassEscape.binjs | Bin 1189 -> 0 bytes .../regexp_parse/Atom_ControlEscape.binjs | Bin 364 -> 0 bytes .../regexp_parse/Atom_ControlLetter.binjs | Bin 344 -> 0 bytes .../regexp_parse/Atom_DecimalEscape.binjs | Bin 1264 -> 0 bytes .../regexp_parse/Atom_HexEscapeSequence.binjs | Bin 418 -> 0 bytes .../regexp_parse/Atom_IdentityEscape.binjs | Bin 731 -> 0 bytes .../binast/lazy/regexp_parse/Atom_Null.binjs | Bin 284 -> 0 bytes .../Atom_RegExpUnicodeEscapeSequence.binjs | Bin 1124 -> 0 bytes .../binast/lazy/regexp_parse/Capture.binjs | Bin 511 -> 0 bytes .../lazy/regexp_parse/CharacterClass.binjs | Bin 835 -> 0 bytes .../CharacterClass_CharacterClassEscape.binjs | Bin 1197 -> 0 bytes .../CharacterClass_ClassEscape.binjs | Bin 340 -> 0 bytes .../CharacterClass_ControlEscape.binjs | Bin 426 -> 0 bytes .../CharacterClass_ControlLetter.binjs | Bin 493 -> 0 bytes .../CharacterClass_HexEscapeSequence.binjs | Bin 503 -> 0 bytes .../regexp_parse/CharacterClass_Null.binjs | Bin 314 -> 0 bytes ...terClass_RegExpUnicodeEscapeSequence.binjs | Bin 1279 -> 0 bytes .../lazy/regexp_parse/Disjunction.binjs | Bin 496 -> 0 bytes .../binast/lazy/regexp_parse/Empty.binjs | Bin 275 -> 0 bytes .../binast/lazy/regexp_parse/Everything.binjs | Bin 458 -> 0 bytes .../binast/lazy/regexp_parse/Group.binjs | Bin 373 -> 0 bytes .../binast/lazy/regexp_parse/Lookahead.binjs | Bin 560 -> 0 bytes .../binast/lazy/regexp_parse/MatchOnly.binjs | Bin 659 -> 0 bytes .../binast/lazy/regexp_parse/Quantifier.binjs | Bin 1082 -> 0 bytes .../binast/lazy/regexp_parse/directives.txt | 1 - .../nonlazy/regexp_parse/Assertion.binjs | Bin 481 -> 0 bytes .../binast/nonlazy/regexp_parse/Atom.binjs | Bin 733 -> 0 bytes .../Atom_CharacterClassEscape.binjs | Bin 1189 -> 0 bytes .../regexp_parse/Atom_ControlEscape.binjs | Bin 364 -> 0 bytes .../regexp_parse/Atom_ControlLetter.binjs | Bin 344 -> 0 bytes .../regexp_parse/Atom_DecimalEscape.binjs | Bin 1264 -> 0 bytes .../regexp_parse/Atom_HexEscapeSequence.binjs | Bin 418 -> 0 bytes .../regexp_parse/Atom_IdentityEscape.binjs | Bin 731 -> 0 bytes .../nonlazy/regexp_parse/Atom_Null.binjs | Bin 284 -> 0 bytes .../Atom_RegExpUnicodeEscapeSequence.binjs | Bin 1124 -> 0 bytes .../binast/nonlazy/regexp_parse/Capture.binjs | Bin 511 -> 0 bytes .../nonlazy/regexp_parse/CharacterClass.binjs | Bin 835 -> 0 bytes .../CharacterClass_CharacterClassEscape.binjs | Bin 1197 -> 0 bytes .../CharacterClass_ClassEscape.binjs | Bin 340 -> 0 bytes .../CharacterClass_ControlEscape.binjs | Bin 426 -> 0 bytes .../CharacterClass_ControlLetter.binjs | Bin 493 -> 0 bytes .../CharacterClass_HexEscapeSequence.binjs | Bin 503 -> 0 bytes .../regexp_parse/CharacterClass_Null.binjs | Bin 314 -> 0 bytes ...terClass_RegExpUnicodeEscapeSequence.binjs | Bin 1279 -> 0 bytes .../nonlazy/regexp_parse/Disjunction.binjs | Bin 496 -> 0 bytes .../binast/nonlazy/regexp_parse/Empty.binjs | Bin 275 -> 0 bytes .../nonlazy/regexp_parse/Everything.binjs | Bin 458 -> 0 bytes .../binast/nonlazy/regexp_parse/Group.binjs | Bin 373 -> 0 bytes .../nonlazy/regexp_parse/Lookahead.binjs | Bin 560 -> 0 bytes .../nonlazy/regexp_parse/MatchOnly.binjs | Bin 659 -> 0 bytes .../nonlazy/regexp_parse/Quantifier.binjs | Bin 1082 -> 0 bytes .../nonlazy/regexp_parse/directives.txt | 1 - .../jit-test/tests/regexp_parse/Assertion.js | 17 -- js/src/jit-test/tests/regexp_parse/Atom.js | 51 ----- .../regexp_parse/Atom_CharacterClassEscape.js | 112 ---------- .../tests/regexp_parse/Atom_ControlEscape.js | 16 -- .../tests/regexp_parse/Atom_ControlLetter.js | 10 - .../tests/regexp_parse/Atom_DecimalEscape.js | 84 ------- .../regexp_parse/Atom_HexEscapeSequence.js | 16 -- .../tests/regexp_parse/Atom_IdentityEscape.js | 52 ----- .../jit-test/tests/regexp_parse/Atom_Null.js | 4 - .../Atom_RegExpUnicodeEscapeSequence.js | 105 --------- js/src/jit-test/tests/regexp_parse/Capture.js | 18 -- .../tests/regexp_parse/CharacterClass.js | 71 ------ .../CharacterClass_CharacterClassEscape.js | 112 ---------- .../CharacterClass_ClassEscape.js | 10 - .../CharacterClass_ControlEscape.js | 26 --- .../CharacterClass_ControlLetter.js | 32 --- .../CharacterClass_HexEscapeSequence.js | 36 --- .../tests/regexp_parse/CharacterClass_Null.js | 6 - ...racterClass_RegExpUnicodeEscapeSequence.js | 159 -------------- .../tests/regexp_parse/Disjunction.js | 39 ---- js/src/jit-test/tests/regexp_parse/Empty.js | 4 - .../jit-test/tests/regexp_parse/Everything.js | 18 -- js/src/jit-test/tests/regexp_parse/Group.js | 12 - .../jit-test/tests/regexp_parse/Lookahead.js | 28 --- .../jit-test/tests/regexp_parse/MatchOnly.js | 32 --- .../jit-test/tests/regexp_parse/Quantifier.js | 55 ----- .../tests/regexp_parse/directives.txt | 1 - js/src/jit/arm64/Assembler-arm64.h | 3 - js/src/js.msg | 2 - js/src/moz.build | 16 +- js/src/vm/RegExpObject.h | 17 -- 89 files changed, 3 insertions(+), 1391 deletions(-) delete mode 100644 js/src/jit-test/lib/regexp_parse.js delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Assertion.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_CharacterClassEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_ControlEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_ControlLetter.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_DecimalEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_HexEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_IdentityEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_Null.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_RegExpUnicodeEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Capture.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_CharacterClassEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ClassEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ControlEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ControlLetter.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_HexEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_Null.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Disjunction.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Empty.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Everything.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Group.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Lookahead.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/MatchOnly.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/Quantifier.binjs delete mode 100644 js/src/jit-test/tests/binast/lazy/regexp_parse/directives.txt delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Assertion.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_CharacterClassEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_ControlEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_ControlLetter.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_DecimalEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_HexEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_IdentityEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_Null.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_RegExpUnicodeEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Capture.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_CharacterClassEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ClassEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ControlEscape.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ControlLetter.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_HexEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_Null.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Disjunction.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Empty.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Everything.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Group.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Lookahead.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/MatchOnly.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/Quantifier.binjs delete mode 100644 js/src/jit-test/tests/binast/nonlazy/regexp_parse/directives.txt delete mode 100644 js/src/jit-test/tests/regexp_parse/Assertion.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_CharacterClassEscape.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_ControlEscape.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_ControlLetter.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_DecimalEscape.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_HexEscapeSequence.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_IdentityEscape.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_Null.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Atom_RegExpUnicodeEscapeSequence.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Capture.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass_CharacterClassEscape.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass_ClassEscape.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass_ControlEscape.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass_HexEscapeSequence.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass_Null.js delete mode 100644 js/src/jit-test/tests/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Disjunction.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Empty.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Everything.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Group.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Lookahead.js delete mode 100644 js/src/jit-test/tests/regexp_parse/MatchOnly.js delete mode 100644 js/src/jit-test/tests/regexp_parse/Quantifier.js delete mode 100644 js/src/jit-test/tests/regexp_parse/directives.txt diff --git a/.clang-format-ignore b/.clang-format-ignore index f95db2ffab39d..8ec93063c1cce 100644 --- a/.clang-format-ignore +++ b/.clang-format-ignore @@ -15,10 +15,6 @@ js/src/new-regexp/.* js/src/zydis/.* # Generated by js/src/util/make_unicode.py -# Note: the irregexp files are already excluded with the rest of js/src/irregexp -# but we add them here in case that ever changes. -js/src/irregexp/RegExpCharacters-inl.h -js/src/irregexp/RegExpCharacters.cpp js/src/util/Unicode.cpp js/src/util/UnicodeNonBMP.h diff --git a/js/moz.configure b/js/moz.configure index bfd18ca4a6202..3138ec5e351c7 100644 --- a/js/moz.configure +++ b/js/moz.configure @@ -626,19 +626,6 @@ set_config('ENABLE_SHARED_MEMORY', enable_shared_memory) set_define('ENABLE_SHARED_MEMORY', enable_shared_memory) -# Initial support for new regexp engine -# ================================================== - -js_option('--disable-new-regexp', help='{Enable|Disable} new regexp engine') - -@depends('--disable-new-regexp') -def enable_new_regexp(value): - if value: - return True - -set_config('ENABLE_NEW_REGEXP', enable_new_regexp) -set_define('ENABLE_NEW_REGEXP', enable_new_regexp) - # Support for WebAssembly SIMD # ===================================================== diff --git a/js/src/fuzz-tests/moz.build b/js/src/fuzz-tests/moz.build index 8a2fdde3a71e2..5936f1c38f62a 100644 --- a/js/src/fuzz-tests/moz.build +++ b/js/src/fuzz-tests/moz.build @@ -11,6 +11,7 @@ include('../js-standalone.mozbuild') UNIFIED_SOURCES += [ 'testExample.cpp', + 'testRegExp.cpp', 'tests.cpp', 'testStructuredCloneReader.cpp', 'testWasm.cpp', @@ -21,11 +22,6 @@ if CONFIG['JS_BUILD_BINAST']: 'testBinASTReader.cpp', ] -if CONFIG['ENABLE_NEW_REGEXP']: - UNIFIED_SOURCES += [ - 'testRegExp.cpp', - ] - DEFINES['EXPORT_JS_API'] = True LOCAL_INCLUDES += [ diff --git a/js/src/jit-test/lib/regexp_parse.js b/js/src/jit-test/lib/regexp_parse.js deleted file mode 100644 index ac6ec02f3d0a0..0000000000000 --- a/js/src/jit-test/lib/regexp_parse.js +++ /dev/null @@ -1,205 +0,0 @@ -load(libdir + "asserts.js"); - -// helper functions - -function Disjunction(alternatives) { - return{ - type: "Disjunction", - alternatives: alternatives - }; -} - -function Alternative(nodes) { - return { - type: "Alternative", - nodes: nodes - }; -} - -function Empty() { - return { - type: "Empty" - }; -} - -function Text(elements) { - return { - type: "Text", - elements: elements - }; -} - -function Assertion(type) { - return { - type: "Assertion", - assertion_type: type - }; -} - -function Atom(data) { - return { - type: "Atom", - data: data - }; -} - -const kInfinity = 0x7FFFFFFF; -function Quantifier(min, max, type, body) { - return { - type: "Quantifier", - min: min, - max: max, - quantifier_type: type, - body: body - }; -} - -function Lookahead(body) { - return { - type: "Lookahead", - is_positive: true, - body: body - }; -} - -function NegativeLookahead(body) { - return { - type: "Lookahead", - is_positive: false, - body: body - }; -} - -function BackReference(index) { - return { - type: "BackReference", - index: index - }; -} - -function CharacterClass(ranges) { - return { - type: "CharacterClass", - is_negated: false, - ranges: ranges.map(([from, to]) => ({ from ,to })) - }; -} - -function NegativeCharacterClass(ranges) { - return { - type: "CharacterClass", - is_negated: true, - ranges: ranges.map(([from, to]) => ({ from ,to })) - }; -} - -function Capture(index, body) { - return { - type: "Capture", - index: index, - body: body - }; -} - -function AllSurrogateAndCharacterClass(ranges) { - return Disjunction([ - CharacterClass(ranges), - Alternative([ - CharacterClass([["\uD800", "\uDBFF"]]), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ]), - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - CharacterClass([["\uDC00", "\uDFFF"]]) - ]), - Text([ - CharacterClass([["\uD800", "\uDBFF"]]), - CharacterClass([["\uDC00", "\uDFFF"]]) - ]) - ]); -} - -// testing functions - -var all_flags = [ - "", - "i", - "m", - "u", - "im", - "iu", - "mu", - "imu", -]; - -var no_unicode_flags = [ - "", - "i", - "m", - "im", -]; - -var unicode_flags = [ - "u", - "iu", - "mu", - "imu", -]; - -var no_multiline_flags = [ - "", - "i", - "u", - "iu", -]; - -var multiline_flags = [ - "m", - "im", - "mu", - "imu", -]; - -function test_flags(pattern, flags, match_only, expected) { - for (var flag of flags) { - assertDeepEq(parseRegExp(pattern, flag, match_only), expected); - } -} - -function make_mix(tree) { - if (tree.type == "Atom") { - return Atom("X" + tree.data + "Y"); - } - if (tree.type == "CharacterClass") { - return Text([ - Atom("X"), - tree, - Atom("Y") - ]); - } - if (tree.type == "Alternative") { - return Alternative([ - Atom("X"), - ...tree.nodes, - Atom("Y") - ]); - } - return Alternative([ - Atom("X"), - tree, - Atom("Y") - ]); -} - -function test_mix(pattern, flags, expected) { - test_flags(pattern, flags, false, expected); - test_flags("X" + pattern + "Y", flags, false, make_mix(expected)); -} - -function test(pattern, flags, expected) { - test_flags(pattern, flags, false, expected); -} - -function test_match_only(pattern, flags, expected) { - test_flags(pattern, flags, true, expected); -} diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Assertion.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Assertion.binjs deleted file mode 100644 index b8705e4472dadca6f14c86ce4ac24cb633bc7c64..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 481 zcmZ9HQES356oo@5PNay)5RoD>L<R#N_PVEbcG977H1%QV7NWgMw%C>=1O21>J*!qN z?CpN{oO?Le3&<<Qi*e{qr*8NmVn~cIho>7{zYk8Z5up5ira)_vCeAaLvc%y;7*JeN zqeQYT_k(hzh8x)Bv5&6SpbW%xtwd(VGF|0|>okL&Clam><&9lf7BmV2GNxs%Z#-xg zF?pAU0d3e$>~SA|HuGL=Bl%W$cR$hyDH15SpQP;Hs^QJ%WaNhLZJ&(T?1cs7Z63AG zFbRm?CNsh=E{8^L7+rmxD;}NJ(zBK;TZ&aIR8^)t?kd>AK4TeI8irpQKP;lq_scJS z?J7d3Ucsn`YkkzU?(z{=tO~L*LfC3uuy(?Bf!0}VT(D4^1v;pDG9Od(sLmO0{{Y%G BhK~RM diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom.binjs deleted file mode 100644 index 2c491b50bb10dc1bae048eaea3166116a4fca169..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 733 zcmZvYL5tHs6vv0h5JD-Xl%<qXOIc)HRLZi5EGlBU8%w3zg(N~tkuXVSyQ67RCZlvI z1uNp&Z=fGxk9(2*Fg+K%dvTfxq=JWe^M3RG@6CUv(;K|8VcfNh^K-*`#{wD&Ca#}9 zfbwB4g-b@cIiGQwBrJ{^rz8w>Z1<U<oP@UEESlu!2YG4>BIs0(Z5o`D>%4GmBnjn$ z2DZ=HOmxH8lY{(tMq3>g5xyfWD#_S(tlpq&=QjVqnQn-9stcNkRusD*Bj(2ebuU9Q zNvcLD-9<#OPZWkQs{d03QX`(fUVT}wzOGl_D)M2fO(P3WBTKKm9qLZm92R&%V2PKc zqCBS`aYZ=s<^0o-B+1d>!f}n)j%m4l(>QbOx0ZF$H5_w)KqskzejI-wSCj<0L+7F} z-2D7ClJVwtR2=^P@m+2q^8&{8FeX8h(+Qo=+!^5sZNE=6sn#|(pXIvMHg|XWwgVoG z9m_QH-?)cM1%yyd1M~!n9dwMJ%Cx585~=_~fJ+L?8I~o2hU*BY)w;q)h7E;#8SW`; zX4q8N%CM!dnqgJp5h?<D2)ZPByPn2ZX)Gwg<E=p35y)JbIRSJCfbN4XPw+GRa<{Gh O|F(U=2dV6Z68{DEy}3UC diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_CharacterClassEscape.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_CharacterClassEscape.binjs deleted file mode 100644 index a93ab99192d28fe3dd9cf45ca04e1b51be087875..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1189 zcmbV}>q`_-7{*@?hr?!@EFuyjwuP8fm`F&OgzF_!RAgtVa5vZ4opBwRon6k%+G-JF zNQ6a1M3hk4r*2SvFI*7p|Ij{{|3c5~g>|7K8hC!3^PczeoHGNXlVb{tj)X%K6QS@8 zL(?tCaF#BfWP#3c!_lQ`DvmU))Nnp4b=x*FR%=K~b*Z}V7%djf8M>?nTLx9rtZv(@ zOT|$gJ&iHlA=}oaqiaf18d+z=%p@=@naS$G0mD+|ff4>vN>qu2M<+*=s?C>tJ>clJ z6HgoYmce;ds!4brG*#PXB=!ph7H6~UEbC=m>_TtIG?ko`nG_s^EUh*_Xl3F#%SdK4 zJw9iuDO>#5D2Sh~%lcV}O|vMEUE{HvY=)_9ncZSOR?m*HAUn=uLp-K5;J)QLBc0<$ zj;C`h*Id()Z*TDJO}_n_?-a!D3uxViR>W?hAokn`&>QGI^bz_5eHMEwub>TRQ|ztc z47uN37g`bfU$&rv*#GLXL+l8TX*_28O(UTh(r0E=tyStNJ)ezdRcY&;3pU@`;@@2K z^|S`Ph2EjBrw{COG!h;ju0HSKy81dIYW4}f%KXpyUAl)Q3A)2C3C_HaQ-B&u!Cu}} z3~~fH`N4V;m7^<yH!>y;9392Fxsu?P8#W@iOt--v>H)`T9E?x|d`OSL$MghDPy(E% zc`!>^aFG^Ev--+5nh@mF1$NUp@H~xylN1K8(sgi}V&DwTf*Q?%3uJ+k957$;*2hcc zJ;VRouyom)w(Vt~KD5Off~^z;edI+>(V5b9+OfGzL&cZ<htvV;FQ$6W|J$yJPtg=; zl3AM2RyI<HVCBEHV10r*z&i5cot4LE!=`8lf76@s=YpF5>y;I)p)By%vimq)qo?3A HD!2FrAF=*1 diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_ControlEscape.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_ControlEscape.binjs deleted file mode 100644 index bedbb57e4a70c3babc992a026f692f8c9babe94c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 364 zcmYMu%}T>S5C`yOSYnK^lp-QhO7S3q(1TY`se}-*J!E@JBy5{aSlK3FcaZdLe2hMx z(FFE3zxm?7j<@d&(kKZwn;`j=g{V>D>Gc98Pw_uWDRkJiS{Ngndj7_hvRr*g6q+lB zTGo~AKiZNZM{(@mz68byjiO)&EnAFKv+oZNO)HjbS#y1|H~z4avRx8yBW7d$Jh%Zi z$5|gDFBPxM6otY3C_A_W53az6Ynqibt7)cbhBW*3mE0FnyQ<;ELW@dtZQgQi#Olky ybGl2y(EdOBE+NEsfXu;Ll6$)7OX|=m0U!kE-=ybkq&x6t<YeIONN3>PNbeVA@M1au diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_ControlLetter.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_ControlLetter.binjs deleted file mode 100644 index 1ac602b7c38a412d30fe3bef5a37cb192b5ba98f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 344 zcmY+8PfNo<5XILe#1KL$MMR2-ClQ1myn0F{goy1S+mlhkHkpQz%^!B>korM9_-S2? zvUqs#e)DFAx6Zatf){BXZ#HrMhBb7AbbL7Fv)k+k4hT9K2Mxwx-(5aRr5vuFkw8l& zNMqNy`Hi!JBtdK6-p9s(Ca6WFaiCQ7dwW>*16;4MlltgxqG_cNyFA;b!qxg*1~K*R z!j>oxN;YOrV5n?y<R^UTzgDr;i<Pwch!pN?)Pd?{eWjs+aVQ6=4XoY`zbkfmlDOAj mQNS1rea_B!c)=FlxwW3}%^2s5anGM{{)@qc;r}%HOTPg*17X?# diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_DecimalEscape.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_DecimalEscape.binjs deleted file mode 100644 index 9ec99a33bf96c59d94cd83b0819d0f0bde515dab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1264 zcmdVXfo{@37zgm~JZmL{kY!mGLI_#N!Zt%F&e^I_%0y(@*wUg=In#9IAg85mu7`og z^$mOkuilN$E<S)Xr2YNxuHSvv-f(p8fXTqNE-x+nE1BYu5w?E$8EiL)e=sAM_E#~* zNkXEqdgcW|#?}R4n0kT3C<*6T-j?}jxxke8*}y^e=rE7r1+Q1LDD~FaK*vfFOc|a! zJ|!_51knwz;72j8_eki`J5!5d%ETGl!_mOW_J0gf>CB7SlHx*t5wmrf;e@#hvZ{xX zy9|jRO|d%*ym_KoEL!YZ0dFMq82N!KJ<tDc;~Azn^l__sc>h9rTWcO7eOqjmAI#C{ zYU~b2uJggRuLjn*?_OI&yYg2hu%&JpCIH|8fZ!oe!6Trl8c!Yr1DKkn8>VU*CPcc* z3zYa@=TR}e8)kvu_&Cya4RJ!$f#@kjClEb@=oF&o5E&4e#em#Q3Dttgo7O0v<5ld& z9!+rTTLO+JW4qtaPU&Z%TvQaLsR899D1A}J@DqQ8Dm+zGplAT@3BHxA3ci!93BH%C z3!Y2v3tmVz1V@qwg4dEQL0hsdXh^0T<h$xhJ`wCmRs>&59tpmZJP~{$*%2(KEPw(8 z3V$;{1OEH<1}N!O1e@S?^6oz;i+9{v0+ek4cf`VytiqSytFj4{t|+?+w0uy`2Rr#- jFCSF%K|LSr=Yxg}HoY{uw_S+#|En%?-z9A>{Vu-&JSx7@ diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_HexEscapeSequence.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_HexEscapeSequence.binjs deleted file mode 100644 index eff6d639b55314a3c7152ae764c5414495a3b806..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 418 zcmYL@(Q3jl6ox|xU6CRpV~impV~8-2vfEwNp`l}X(R$}biS{TNu_;Lg@#(zSJM1y` z49iTR7diRA^PhA0XX)xS#~Yd@%Vm;%@DeJ+&FT3HcPHru_8ipQ)(W)dvKqWFAzGZi zaRZ8p+$dfh+WxqexnTy5?(9>dH7EmRzEiw5RLHGc+{qe7GhQ)uYIh<(vdPz3x}td- z>vs|+Mjm?xv?-3<_FbA{FW5nkDp`D0d?!or4U7nigLfN;?!}$|a*@>WV&M!L3BE14 z3Wa3lP{9FgUDQlzn0{(v<G{w0SW3Rn_;It&=JPhjPZT1Ax&cOaxHCq#WZ)zYNEZ=| f5GJ9=>job@M#%ln9eV6FZpY(I<KBDhH#qtO#&2;* diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_IdentityEscape.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_IdentityEscape.binjs deleted file mode 100644 index 434839f134ec4e53f42ca4a2cc7d0f37506c008b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 731 zcmYMw{Y%?G7zgn1@K8btQbfiWB4rebb;KfLxEFNo?7E7UE-9m1ua=mc<s?nQ<pN6W zpRoUVXP;xaU+(!F-+OtkHym9BFdO*Yo13mb7cozjP*0yfLc<+yaWA;+KjxAbg~-zV zZ()*D^sa^CGE4#`MY^ok534dzq2eojY{z6r<%&xYRf*GXQE;hv97Iy&YLH}i`ot*9 zd9x?dP(D>rha$6J;txlIpn7i!%<igeWh-8&UH!(zeG)E<W|}R^R76?KX`#lV1sp>Q zTsVR@cyIz2&cN^YFMq>$?`Ik6_Fp=N88BomWG=EJWNl=}$UI~x$S#nLk<F0lz#Q3a zjg`{|E7u)8Hpte<o{?=}4!2Gs?qVVBBn#sM$(Q^wU*w@Ixc5*%iRBd5@C=*TMBiVv z@)vjNmSwp$utwn2t!o_X5^DIxLa;2rD`LygA)Xn&C3=Q?#J1rs@tt9vcxw2Xcxbpo zbPXHC4~9+RC&M4ap5ZUzcf&u#OT#I#WB7{r-qN#faG!W?I3a$0;el=IzuAue1-{wt K@+oGUUG_hI_>pn| diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_Null.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_Null.binjs deleted file mode 100644 index 49aa105babf3449509141532a5731813ba19f544..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 284 zcmYLDJ!``-6cj?FCYTU1m(r;e3ZZoEQl}W>(qyo*xy2~)i+M%1#M2v`e_zoKn(l+U z<97AoL(8^miv7N5zOjdik*}{ea`jmMi3<XivnL1v-E{kItW9$Ji40_{X2NMm{zIag z4Z|2`Uy2Zb7<zps^jukYip8_@aKFRJ&^2}P|46HkO?{|zx;1a4$O?9&`g-2PC*8%G zA><ZMJyK?!>F)>zn0@CB1=#+CHACQT#92PI$EGaP)?1zlA=E;OrChE>rt(Nv3#CLv HDV6vI2CiIt diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_RegExpUnicodeEscapeSequence.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Atom_RegExpUnicodeEscapeSequence.binjs deleted file mode 100644 index fccb27ee716702e02cc8ee918b8fd2d50d8d0bf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1124 zcmb7>(Q4Z;6o!Q`#uO7mD4~=PLK$7?O30d0!Zya7#K}_9bl4swWW%Vjnrd_GAgd!~ z1ojAfgY6M^*_)AP*#m^_5hht~ok4RkUC8G@`t%>2<3_iCYQs^-GS1En>pk&szzDl} z{upM<-B?@_OwIX>;wU0vP-r6GPi3V?7^cX#8709a%@++y(M_uN)6iy!;VCb3WJD3B z414yNk{Rpx;RQDuhcjGikO0xO>$*fnwqtes9XoyIFU8Re7EU#WBer`Tka6f?_tHm` zC~x@uX#ry76NUpg%nHPvlDWG2{!?B3xXsD>aZ^`_qA|ytK8m7h|J-qnwqsgu&oo-D z{noP1JBDNK_3<S3>xJP*bcK<}eZHux<x>0e?dxrhk4Dxm1)=-TV<6BRJZFW$yX#iH z*5Z4!Rv+q8i4T|R@8vR^0K+&COrB>xKW!h^>WksFh{gT8kOPaMJ`lx)S(UGy^$I-K z<}1suiL*uS-b<unr#KKkA`tLG_sNAvsOE>rD^fhc^O-wCG{Th+5qvUoEYnPXfT?A+ z003nTf<DwO&{N*<5UR>cP=WwJr6^???8Wlgom3#$hpHMUc}|e=zQu*EDhCOlk^BMR zyvl83CIi6^gkT$rjIyf~BvehHd(+Jq)=M2GrLxlHFfEmXN<Jo&qoaolq}aOci(~+g zWJ9kKS&_0Kta#JO>1iUxDetM3$YglOLT;QE=i36<+^sY{Nud835BGkZdZ&#_$NIyL IDJJLf7lq2+J^%m! diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Capture.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Capture.binjs deleted file mode 100644 index d1b7bf20d286cb5c6b43c9369e4b4f208f71e7c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 511 zcmZXO&uYRz5XP4wgb;#=6p<n#J(PrklwNyiqXe;34~Z9%BAaBCEt@~=uA;BmC+Q<} z)wV0`9+sK!_sz^VoXlPlSdQaxIt}ADmSd@yIy^3*<xft{nxTmHwLmFZRdz>|bJGr9 znL<H%q68~9M!)~oXWIe=%M7?RWumCULf`9!LePT&522JO6y`}LSgppqO7(@Ts<A(0 zB^4J|?`&Bn^LR2FCno>LO=CoBwH4@usw!GK^=i%OMmh?mYKL6ME~#QWbfcnH2cR9_ zr+$zILFVUy<p;J;14to*+~X|GnQ(YT^Pa#B?(0=eg~Y+TguCTDjv{k-0Zoq(;y6IM z(CCwEtEWrbwwlBOLM&TD{XU<7xa3S){|JEPomu0^9B}PFv%ibT^AA4`UAP<#TmnSP OSEs*y0h=0X(D?%D5rC)w diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass.binjs deleted file mode 100644 index 395616cc8a6e6de24e14fb09456f94360f85458e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 835 zcmah_U27Ua6df+humlm2AVEYVlr*$aLMWxQrF7MeH5gNNEhx((<L<;vy6(#Cq?osU z(dYhy_9x^qFU23zXK8;z@46<YFD=X7nK}2IbI(k@-956wX<5ecv0=Hw=b;kn^4WdJ z)jC3P$pTwR5suB-RPs0$QMlV)l1>GeYp`rc$u8IDQiBD-`na>++KMSY!7&F$9CN9- zZ+lWqRV#=_ILwQtyiyk-lXu)QDaEmSR=eA>*D;y)y3{yhl6e@l5wJMc6^|A4VE`<T z5r(G$8^?vFh|e!VPhouUiWi~qBA=%{`t!p_{J%i8U<BwAG9}(|7}3S|A9QhbjlIu6 z@@ZJq>xPOZ``we?&^YXw*05t5&7u9qvQAn?&)n<s@zUV$RNFUjCyL&(GtPYKRNbu8 z$038|dUZW;b58&Fx39R-9CyoMRS%<8F`7#q=9U~bN&t+LK$$>{d?EE9Vt!fjF`rF` zQzm0xJCAe88w@96hWX#q#e7bG&F6Yz4G*23Wt!^;{G??!2qAf$!b`|>;RUJVwn@oj z*r4zLG|)7%O^y%*N}eVlNkN_HDfoN^W{`;>)*>ll&5|tEJjr9NkP6mKvYASrtRxzO z`iiz{)$WWakV49T1UU*BjIx}bsPMx|38k<Dq?6M2|3%xnkta7QkrIVHxV_9Fd6ilm P{NLgpklkBhnUwzkIJMA_ diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_CharacterClassEscape.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_CharacterClassEscape.binjs deleted file mode 100644 index 960f79fe433c87ca48a773c359da3c50186e638e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1197 zcmbV}>q`_-7{*@?hr_mQA|eqYwuP8fm`F&OgzF_!RAgtVa9!8gopBu*XO=UwrWP@V zL|8;bMEN1@Q#ZPNFI*7p|Ij{{|3c5~g>|7K8hC!3^PczeoHM;cW5WuI4@M)SqmgLB z&~(c++@(vWSZ&*g;p$Q~6;~QoW?(TZb;mJmt0^L-x>VV>4i$=K3|&@&jeV+VR<<pb zrQ)itK94aS5y#P`t7}SH8d-PHv{M+CwzGP;*RWK1U__{x5?5l;p|L@wV)FxE54gJH zHulY`Qcc5epQ$<yBe9>)vm~2l=U5kOXBWF7rm5tlv@@6<v9#*^uw^H6mXWqKJvn2l z8Atrs$cvwz$9h<VO|W<%K6yO>+)S`3rm|&riv?H>JI=!F1j7CPnUbi(olEt`e2yDA zKA&T`hN{kddxLLp^6giACogtiK<gf~B6jn6vFAO2UPJGokI*ORv)EgC32i`|Vs8~^ z$o=kl(2CgqvIXVE{#TD3Vn<*^^W8X!kZGheLk3J+)taQ9(HFDHtSTM7ZO-94Tl|}c z-oDnLH_%)3_Vu2fiN~S?1C?h!9IOcvQA0rRRTg^A@6tUiNzfgBS#aimoNB4A80_Ll z3qg(`rw~{}qI`5!@Os9?fumzsH<S~+Qp0)#m+3axNuA&bjes$Vfe+~s_?Vu6DN2E} zGz(@a3og(?aaMQ9#!&=0wSygW9=t%q;21^0Yjgvgph<9wra_Hnz&Wx&NiMip_SVgd z=6%Ee+pu`qs<tg9p8>SR8-h&~1_R_rPSe@qby~2wLj8r8{fE?E>M5l9&;Q%5h>z1a zXp&i+&|ESSM6mqd8nHe}tzeM+cw6}~nz1R^!Qb>}{JEg&|N3PGYbdMzYuSCAuF+HQ I8I@Z60wHk$0{{R3 diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ClassEscape.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ClassEscape.binjs deleted file mode 100644 index afdc73af1e8a58a6479b5630a1861c19b7e61de0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 340 zcmYk0F>Avx5QW8Iga{^tP&$RssV$Ub=-SCK#<(;YtZc#r#lE;Is%=i9B!8p7xTYDD z?Y+mlci*Piy-QGenQXU7S(yeqZ~W!$31-j5zd0GC>^u-UXZmjaVLXzy(v#`hkS|hg zZLrIPNMC|~3{raS@q2vpnmC8#v5_^I!RNL=j=Oa~;KRmrnr_bHYemU@S?qEdFn{ks zz-p0xYSQ%xmRjxHd_*~%tZtp~=sZ`V;%ZgJ)*Kr{!uGmZ61I3A4ud9#>n{f{YF}nq l82*_~7-L*SYzFZio5FmQg2ROIh(*AGN5Ftx!}ulyfIp#SXK?@k diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ControlEscape.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ControlEscape.binjs deleted file mode 100644 index 9141e45c9267ffd857d043b32a01566ba149862a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 426 zcmYk0L2H9R5QUdP#9AvMlv0XF=%FnXa_F@u6GSXc4w{>lu+i0S*{aMgA^CUxQT+j3 z>p?G%dEe~Ld#iZ+mO>UK!DbUAIWJkGxH`W+!t5#jHx*|Xo;qYw^0ryNbH$K~R3UHb zk$Y<@#Ay8hk)B8YFpjCBihb*tmq1E}ij`@Byi<{A5BhG=c5JcY4aLcKXLypOyCmL5 z=~(mU-dlfCq=hcE7F5c)uCcEKt)-=yRB!<{T!I5vR`yZlTAE(47uCx#cLYC_94*n( z(nnUaQ@8IZO1Aux@SN?EFdXxKU7HZ%SO)RHS&%#M^=OzdBVZ5$CYXi}>-QSYC(r_G VfY%e~f;+&Q3Dh?RcsqeM*nihoZ>j(Q diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ControlLetter.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_ControlLetter.binjs deleted file mode 100644 index 4598db9ed9460044ef95c87dd813060b0bc59f92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 493 zcmYjL!D_-l5Zw+T1PMW;lu|^b6k8~G=(Tu=LBvu$B%T_BtjTD%Y?Cm%1?`9T+-*`! z7<jyS^LX>7i`7d6@jUdGOFv9RhPf8{^n4H9@vG2CTt=EiewZCgLZw8JKP)QKULZB% zz$fCTX72}F%4QukG}2t-r+M?_D}|&ni&7G$p37oqo~1>J!>PzQwbI<$5=ZNBv6@Fs z&7V;}c<01Z(=?D=DMzEyZ~-^4>6r%Gz2pZ4DNKfWvHi+LT4Y#@op_T@l0Wn-d`ld| zE6OYUPFyK=nIK0NJR1-m@K|n3P722#3LfKiIGZ(90`NMFG0(AK2<{yW*sY;pvm5Bx xz`z2_VrFWw-x6(R*WzVMJUg#i;@No(-73>EnGSOdy3DOZdjBW8eKOo*-Y-^fdanQg diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_HexEscapeSequence.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_HexEscapeSequence.binjs deleted file mode 100644 index 417e41145288918c22e15600c7fed1aecc5e1080..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 503 zcmZWj!D_-l5M724f&>vMr4*4+iY*jGdhIES1WUD$cuRw<$;58iCSiAl_;o$>ze=}R zF+%q+`{unjGjF<BJx34+p}$=EVZt&j6jO(%JLrvHm_k8$qy#H=^STl!B`b^jMPtet zik2MuLeN9o4`!6}wjH%FQdHrmKJ(~Hi9%r(rGix|;N?~yOUnwqDJ!Tr+vXZe9IeB} zDu~*cKO?9Ivv(?Js<X~GmC{it6-*%TigL3rSXySd$vNFgAblOmVC(zKjo<3YBx$}N z>HKv~4H8G=hR^fF<!qZV;qa1XLxDT2t4&3P#PNrOhj<;%=WU!<=ynJpUB?Cw+*=ru z8x1X+^r345fCZLCT;dvXa7Ok>&yd&9IXU$zLtY(8OONZPt3w<kUH+47VjJn=DA}he HEt%P082^0) diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_Null.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_Null.binjs deleted file mode 100644 index e30ef40a7c1fef5fb0a8a23a3ccd244297f7e4aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 314 zcmYk0!D_-l5Qdjw2|<F0XOW(2p&+H#o?-|gMLlG_r6OZ8rdzg2nB9ZEK_9zIJ#26P zH_ZI=ZOZ+-g1V^E-7c+;x~1M}cY9mG?5X^Nizd#mBa^jy=+|5Ah|ws=y6?h#k)bgG zmnk#e0zZbR96I{;Z(dVti5<17VLiIS3}@fl3?n^kbdUV+Jh`vb>QI&YLIusAIfzB} ziHwcc$_!c?*B>v(xwko840bj#`rK-c&4BHasiW(78j&rnzijNtI(V)RRi1~=?Q|l9 akg*gKNM<62#K&m_QbbY!L=Z_3AbtTwer7QM diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.binjs deleted file mode 100644 index 5c717639a1d6edf55b1a8f3f3644a1952c230540..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1279 zcma)4?P?Q26di_PSwaY*lu$wlp_E#xgxVAdD&jUDYfGBSZiI%oglRHOr*3z{>_l2b z@DcP0^bz{Ae<Tm!vjlwv@9reo+G^_lxN|?woOAZ>?(Q}BZQL;}<KV!s9NuT1<nr>_ z1Dq~4xMYI5wiMhO)GmgC1p)WHydea=jO&fP=+X&iB5vj?)OF)>Jx*;&B|8V1Z6gSn zkgRX_1RqM%^^ZZU=MPz7mwQy)kVq;>$8K4BP1BBT{va)Ugxk5wDHXH_b}KFo0$s8| z;!$?w@t)sj-4mA%0&Vi`yEeJHE_i<Tk3pu&gR_y>lkjdB;Sw%q3>T<8D*1bctJu_j zj>k*NEnsv*`sZ8C!&cX*w`x|mQ8TJt`;BECnntU(+GK<1V#D{}(NjkI%blaQqiVTS zZ99co3XMvs+;-F~PV4Zroh8`a%=FbKZ89F~zrKFHj=)>+w4IfZ=tG!)Y&+SgcwFBp zm7!9jP%kb(0E%=c@?knDl{g7FO-G05Bwc>o=R$XV+RqC%U>C#gkcxm6&jS3g)3R!{ zc<WyhsRTl3P1i^hCoR%IuOZbm^oXQ2LNL}bfjNShL`jG#l!6G$oxu_sS;Ck^U@`{- zKqG4yl@)Ar%BIZ$ifzubNfz*AXZ&!6HZ-yU>|idechD21QM{vZ%WLs|ja7`+=ge?j zF+U~SQ8RYGjFv%q?tbeIpnwWD0nbBeFuZ`_HsBV+i$&(+MZa7G`@cQz-cRxOHSJG7 xK=@U3q^sS%nl{5<1DX)?D6dBK=_qWfQ4ZxGUqLGnGbp2A)hR6TFBtTJ^EWbc-R}SZ diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Disjunction.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Disjunction.binjs deleted file mode 100644 index e8bc0b3ef1e7cc9ee1729b868d820dc2018ce1b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 496 zcmYk0!Arw16vjg+C6qEoks&h15K%$c!K<fEOR2aW+TDhXtj$J7)|TW68}y=or#Jr* z(^hyANWS;|zW4Ix$?`R$>o^S;i!gncg(yM7`RR@h?~|_BNui@tt%WhND#y=UDJ*Ai z5`^X|11-xv`nM=E;2@56>?G8hpAkHU#t03f$Z{=fh*h<<gYv2t)443U{ulN8$U0l4 z$uiDx&F>o)LUr__V-4rgi!_IiG6%b7VAtI26yF;L!hp-SIpyxp=NGf8@pxlp(A|wS zd?mMq)J#>pm}s#Vr+QO!ZN%(gXv5lw(=_y9y-K49f6wW_BZLfGN-n8?O-9a@mCSVl xVqb?chY~^^zq{L%MHhd_R){+7^?@<=QqrE@o?>5bBN}3d9qA#MAZX1N{sQcCdJX^p diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Empty.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Empty.binjs deleted file mode 100644 index bb9af38edcf3074d196711abeead51fa25b99ff1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 275 zcmYL@F^j@L6oi*WVhBORTI4Db4lHc7i4sDN(;{mZ4q44JJXw?F?JLZ`cR7pgW`=Ku z*_WpuCF`Qfj>oL}!v;D=9=2mSS(X3hjzIa#5;%u_H$P}&f?WowSTj6*ef^6Jq>W<2 zt_{E@a}J21Q8z-%h3T&zy7d;m_Sk6}0-Ao1TAi!%RH$(4F%?Pvv^>oGjmzEW)};oo z4N`1+-7E-Nc-f29<Y4`9F@t0IU7xEw4<oxY7D9|hQp7Tuh$u?DOrywWQb_Rz&RJTD diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Everything.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Everything.binjs deleted file mode 100644 index 5dc3739aebbe1bb9d600d25106dccbcf7c7856a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 458 zcmZ`!!AiqG5M73_#2QK|B2r2zBDEs);89O$DWzh2NO~(0w#hcGY_nl@3+b(Y;!*G? zdiOKDtH0o)NbJGGJm$^3;l1gPr?(-@M}a??_`$tMcxHsz+?+$LcP9)-CPRZFONT{{ zTx+4SmXF9bCGU>EkCuXCIcyG?lqKzyZD^R`D{FJ*Yt7N{B#cqyW+c_Zn#C&T?Y_tu z{;}|WB=c|<jHjcpjClcFAaDSO;6W97HN&-uR-&M9+h<!Z^mDhn_N5Hhh$^+lewGX# z7_!*DHjqr~=05eLSR?{nsaVp^RJ6`StP&nAB};V+dCH4C${A|jd(@4+Eq#C5(U0vG zF6XmgI4ncHRx5-M>QbixUdK5hE!%pORGcPtjsaY7>>eySgj#e-)nbj*e`Rgz9064R Lk)7K48L58(3do2a diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Group.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Group.binjs deleted file mode 100644 index c312cdb7639a205d085193ed8da19c703ae5c77b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 373 zcmYk0O>2Wd5QdjUWD$`NN+~5sPi;aWhaTHQF-64E<e(lBq=ZeJ$d>hk-8txg$#3Xy ztRDw^8RmIs=ACyF?mlCh29dYjdeOJYphSV~+Y_BF!vQV=l;6|}v=&vl_~24bxc(9d zipv<4DDz2woZ1*ULebf}o>IJ>1}~o0pb)b7tVE50tWKTLxvJq|BTBCRt=i*C8YfY> z3*sr}ugg5Fig_36c#%BU3_&C1Z2A7Wvbw@omS5D^vIH8WduKmr2YRrjIAuaHS@FzO zkV8`+Ypyh`e>8nglgRg{H&@3ZgfNqmJ8Cb;t#RMAhG{TDDY3~2Ru6<4=7{qi9oipt K;%poZ_2v(z@M{JD diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Lookahead.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Lookahead.binjs deleted file mode 100644 index d48c00f94e870d447a4732ad9d88e0eb57b0f8e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 560 zcmZus!D_-l5M7oKf&>X7Qi_O`VyzYrg`P^0Sb|v8L*hY^64qo*x7}pJ?zZSB^sl=~ zs<F_^%zJO%JZ8qz#ft|w6W5;4ZTFRgIFUpi9&e!4o91LkFn9JT$3hU6G@lWrB^}O) z#2isia*{-)-Yuagk;JizZP}coLpiv&g}_|m&<i+8<%F`W3JO??+hdX-er7cb%f?%} z)5XLq&-{i%!<H;=C(Qp$NWenu?<k6dA+eA;+6Gnz{Fv+;HdUu4NRlsHapF`SYBR<@ z&>Kb}T)}lsJyz^id!sA0d8_(U)~(;(KZ3y#j5-S(<%y@L`s(OjpWtY1QnC#RHz-44 zi{l9IQ$Iyq;NiP~gU!-)obss$Sgim6EFFR#H19xH>nmvJ+6AaXP=ycxsOg2&$fWik ksR<N4b7{JEnMo#4D~fb7Qh|n+=U92I6{FU<@A^OA4^!BYaR2}S diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/MatchOnly.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/MatchOnly.binjs deleted file mode 100644 index 57988e1dcdfc98dd6618f17d3804cb51073fa775..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmZ{g!D<^Z5QfFDi0yVU#+XooF{YFd+_HpFN=Xl8;~3-8Y^gVwV9Fxz%8pW5S|qu| z<l;BUG0>OrWAxs8+gIo$ZrS({fd>7f(Wm+6c$j=hVLTYcr>F7gizv8q!Y$vOLnHbq z95+m+&ImQ@UzLViE411l-WN>;H&wFLV^UVK9UH@zmENn4sbh}M@tcEx{A4lbM&wn+ zVQeioju&ZeMCk@nPq2$zm%MW<6f+OF;ihDqo{fgdAg%iU0Y`r9^qjIu-gex&Y|dPM zk!dBDK;Q{Hg%E0C)P0WyJF!HkiaGI(H<M3EHW>B$C+E%23x?CUGul9R*;KNbZG0W7 zsZcm0`g3)Q`#b%!UI$SZIY+US>B1O2LyNI0dKb*F9ML_=tZi+}03Sr%P>M+*j4w4S zI!b2?C30Qx&0lT9XZ)(nN@gsNF758tE&X+~roUG!csV}9ek<?SP!9<qf$za9sJ(?Q zIl!Yw$#Zz-p?LxuxxX#z5P8r5>Upr^2MD-duuGaA>;d(uM<}_A0SPhINDE_|bRHt> TaQG<W1<>FT#%s*K`A_-_1Y5JP diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/Quantifier.binjs b/js/src/jit-test/tests/binast/lazy/regexp_parse/Quantifier.binjs deleted file mode 100644 index 036f49b05cd7da6d0eea3ae12bcdb9d19ea80238..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1082 zcmZ`$Pm9_>936%b1_>e}vWSS3vWSXowOyoJ8sloMOV?7fm&F#DHKR;7CSfub7s+?% zH)t=t_qdmSqy_K2baVnSS_6}rH}C!4{Qk82gDVq`dPC#-+8BPJ7I8S`4;QyEUFvVa zloHlmdW`r!b)Ebrw(SVkK2S~=woT5cGmGv|qoc_&Cv#zY7HS8JIbn1XDGCN-_#wh| z!}kf}#4;z0dc0@5cjASK>ycucI+*Q9H7OaHH^cs*XGZz|g;&Vn?mWeb&&PAR%zRp4 zQQD>&h|{8o@zlmMU+WFK-Og?LzVA$_BP!1fJ`Tq6vgo+ug+nK<MWi_QdC_S$I^uuX zXjT-wQt_%P)(a$7HL>~C(dNOdVT-mnnA2}W!DSVfbp=;cToIeDVqMqps!@FvB;}@y z&_*@bUIw}_YXqB{K-X+~XHkZ17h45JW@PD&J<NPk`|9Unsi{vt|EN#DAJO{9_eWS6 z-H5WHZu~+i4FFJ5A$S9m@4;*3tvEtec?J*!3POUEpQa=r08mjS|NM|o?((NGeyxMO z_|hRCi!aA`0K!DpdOVHlQCZCGJSIb}&<(ZXZq1{zm|J~MwqM)JLp~N?+vCG*GJDya z9hF6H1yxCd6a+<>P`2%F?@Vo{>m4z*t+w@l{+*m^X5%G>oRRP(geMZ_LYR{<AHuwZ I*$`&`0Xs0mTmS$7 diff --git a/js/src/jit-test/tests/binast/lazy/regexp_parse/directives.txt b/js/src/jit-test/tests/binast/lazy/regexp_parse/directives.txt deleted file mode 100644 index 93b6eaee604b6..0000000000000 --- a/js/src/jit-test/tests/binast/lazy/regexp_parse/directives.txt +++ /dev/null @@ -1 +0,0 @@ -|jit-test| skip-if: typeof parseRegExp === 'undefined' diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Assertion.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Assertion.binjs deleted file mode 100644 index b8705e4472dadca6f14c86ce4ac24cb633bc7c64..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 481 zcmZ9HQES356oo@5PNay)5RoD>L<R#N_PVEbcG977H1%QV7NWgMw%C>=1O21>J*!qN z?CpN{oO?Le3&<<Qi*e{qr*8NmVn~cIho>7{zYk8Z5up5ira)_vCeAaLvc%y;7*JeN zqeQYT_k(hzh8x)Bv5&6SpbW%xtwd(VGF|0|>okL&Clam><&9lf7BmV2GNxs%Z#-xg zF?pAU0d3e$>~SA|HuGL=Bl%W$cR$hyDH15SpQP;Hs^QJ%WaNhLZJ&(T?1cs7Z63AG zFbRm?CNsh=E{8^L7+rmxD;}NJ(zBK;TZ&aIR8^)t?kd>AK4TeI8irpQKP;lq_scJS z?J7d3Ucsn`YkkzU?(z{=tO~L*LfC3uuy(?Bf!0}VT(D4^1v;pDG9Od(sLmO0{{Y%G BhK~RM diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom.binjs deleted file mode 100644 index 2c491b50bb10dc1bae048eaea3166116a4fca169..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 733 zcmZvYL5tHs6vv0h5JD-Xl%<qXOIc)HRLZi5EGlBU8%w3zg(N~tkuXVSyQ67RCZlvI z1uNp&Z=fGxk9(2*Fg+K%dvTfxq=JWe^M3RG@6CUv(;K|8VcfNh^K-*`#{wD&Ca#}9 zfbwB4g-b@cIiGQwBrJ{^rz8w>Z1<U<oP@UEESlu!2YG4>BIs0(Z5o`D>%4GmBnjn$ z2DZ=HOmxH8lY{(tMq3>g5xyfWD#_S(tlpq&=QjVqnQn-9stcNkRusD*Bj(2ebuU9Q zNvcLD-9<#OPZWkQs{d03QX`(fUVT}wzOGl_D)M2fO(P3WBTKKm9qLZm92R&%V2PKc zqCBS`aYZ=s<^0o-B+1d>!f}n)j%m4l(>QbOx0ZF$H5_w)KqskzejI-wSCj<0L+7F} z-2D7ClJVwtR2=^P@m+2q^8&{8FeX8h(+Qo=+!^5sZNE=6sn#|(pXIvMHg|XWwgVoG z9m_QH-?)cM1%yyd1M~!n9dwMJ%Cx585~=_~fJ+L?8I~o2hU*BY)w;q)h7E;#8SW`; zX4q8N%CM!dnqgJp5h?<D2)ZPByPn2ZX)Gwg<E=p35y)JbIRSJCfbN4XPw+GRa<{Gh O|F(U=2dV6Z68{DEy}3UC diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_CharacterClassEscape.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_CharacterClassEscape.binjs deleted file mode 100644 index a93ab99192d28fe3dd9cf45ca04e1b51be087875..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1189 zcmbV}>q`_-7{*@?hr?!@EFuyjwuP8fm`F&OgzF_!RAgtVa5vZ4opBwRon6k%+G-JF zNQ6a1M3hk4r*2SvFI*7p|Ij{{|3c5~g>|7K8hC!3^PczeoHGNXlVb{tj)X%K6QS@8 zL(?tCaF#BfWP#3c!_lQ`DvmU))Nnp4b=x*FR%=K~b*Z}V7%djf8M>?nTLx9rtZv(@ zOT|$gJ&iHlA=}oaqiaf18d+z=%p@=@naS$G0mD+|ff4>vN>qu2M<+*=s?C>tJ>clJ z6HgoYmce;ds!4brG*#PXB=!ph7H6~UEbC=m>_TtIG?ko`nG_s^EUh*_Xl3F#%SdK4 zJw9iuDO>#5D2Sh~%lcV}O|vMEUE{HvY=)_9ncZSOR?m*HAUn=uLp-K5;J)QLBc0<$ zj;C`h*Id()Z*TDJO}_n_?-a!D3uxViR>W?hAokn`&>QGI^bz_5eHMEwub>TRQ|ztc z47uN37g`bfU$&rv*#GLXL+l8TX*_28O(UTh(r0E=tyStNJ)ezdRcY&;3pU@`;@@2K z^|S`Ph2EjBrw{COG!h;ju0HSKy81dIYW4}f%KXpyUAl)Q3A)2C3C_HaQ-B&u!Cu}} z3~~fH`N4V;m7^<yH!>y;9392Fxsu?P8#W@iOt--v>H)`T9E?x|d`OSL$MghDPy(E% zc`!>^aFG^Ev--+5nh@mF1$NUp@H~xylN1K8(sgi}V&DwTf*Q?%3uJ+k957$;*2hcc zJ;VRouyom)w(Vt~KD5Off~^z;edI+>(V5b9+OfGzL&cZ<htvV;FQ$6W|J$yJPtg=; zl3AM2RyI<HVCBEHV10r*z&i5cot4LE!=`8lf76@s=YpF5>y;I)p)By%vimq)qo?3A HD!2FrAF=*1 diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_ControlEscape.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_ControlEscape.binjs deleted file mode 100644 index bedbb57e4a70c3babc992a026f692f8c9babe94c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 364 zcmYMu%}T>S5C`yOSYnK^lp-QhO7S3q(1TY`se}-*J!E@JBy5{aSlK3FcaZdLe2hMx z(FFE3zxm?7j<@d&(kKZwn;`j=g{V>D>Gc98Pw_uWDRkJiS{Ngndj7_hvRr*g6q+lB zTGo~AKiZNZM{(@mz68byjiO)&EnAFKv+oZNO)HjbS#y1|H~z4avRx8yBW7d$Jh%Zi z$5|gDFBPxM6otY3C_A_W53az6Ynqibt7)cbhBW*3mE0FnyQ<;ELW@dtZQgQi#Olky ybGl2y(EdOBE+NEsfXu;Ll6$)7OX|=m0U!kE-=ybkq&x6t<YeIONN3>PNbeVA@M1au diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_ControlLetter.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_ControlLetter.binjs deleted file mode 100644 index 1ac602b7c38a412d30fe3bef5a37cb192b5ba98f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 344 zcmY+8PfNo<5XILe#1KL$MMR2-ClQ1myn0F{goy1S+mlhkHkpQz%^!B>korM9_-S2? zvUqs#e)DFAx6Zatf){BXZ#HrMhBb7AbbL7Fv)k+k4hT9K2Mxwx-(5aRr5vuFkw8l& zNMqNy`Hi!JBtdK6-p9s(Ca6WFaiCQ7dwW>*16;4MlltgxqG_cNyFA;b!qxg*1~K*R z!j>oxN;YOrV5n?y<R^UTzgDr;i<Pwch!pN?)Pd?{eWjs+aVQ6=4XoY`zbkfmlDOAj mQNS1rea_B!c)=FlxwW3}%^2s5anGM{{)@qc;r}%HOTPg*17X?# diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_DecimalEscape.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_DecimalEscape.binjs deleted file mode 100644 index 9ec99a33bf96c59d94cd83b0819d0f0bde515dab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1264 zcmdVXfo{@37zgm~JZmL{kY!mGLI_#N!Zt%F&e^I_%0y(@*wUg=In#9IAg85mu7`og z^$mOkuilN$E<S)Xr2YNxuHSvv-f(p8fXTqNE-x+nE1BYu5w?E$8EiL)e=sAM_E#~* zNkXEqdgcW|#?}R4n0kT3C<*6T-j?}jxxke8*}y^e=rE7r1+Q1LDD~FaK*vfFOc|a! zJ|!_51knwz;72j8_eki`J5!5d%ETGl!_mOW_J0gf>CB7SlHx*t5wmrf;e@#hvZ{xX zy9|jRO|d%*ym_KoEL!YZ0dFMq82N!KJ<tDc;~Azn^l__sc>h9rTWcO7eOqjmAI#C{ zYU~b2uJggRuLjn*?_OI&yYg2hu%&JpCIH|8fZ!oe!6Trl8c!Yr1DKkn8>VU*CPcc* z3zYa@=TR}e8)kvu_&Cya4RJ!$f#@kjClEb@=oF&o5E&4e#em#Q3Dttgo7O0v<5ld& z9!+rTTLO+JW4qtaPU&Z%TvQaLsR899D1A}J@DqQ8Dm+zGplAT@3BHxA3ci!93BH%C z3!Y2v3tmVz1V@qwg4dEQL0hsdXh^0T<h$xhJ`wCmRs>&59tpmZJP~{$*%2(KEPw(8 z3V$;{1OEH<1}N!O1e@S?^6oz;i+9{v0+ek4cf`VytiqSytFj4{t|+?+w0uy`2Rr#- jFCSF%K|LSr=Yxg}HoY{uw_S+#|En%?-z9A>{Vu-&JSx7@ diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_HexEscapeSequence.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_HexEscapeSequence.binjs deleted file mode 100644 index eff6d639b55314a3c7152ae764c5414495a3b806..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 418 zcmYL@(Q3jl6ox|xU6CRpV~impV~8-2vfEwNp`l}X(R$}biS{TNu_;Lg@#(zSJM1y` z49iTR7diRA^PhA0XX)xS#~Yd@%Vm;%@DeJ+&FT3HcPHru_8ipQ)(W)dvKqWFAzGZi zaRZ8p+$dfh+WxqexnTy5?(9>dH7EmRzEiw5RLHGc+{qe7GhQ)uYIh<(vdPz3x}td- z>vs|+Mjm?xv?-3<_FbA{FW5nkDp`D0d?!or4U7nigLfN;?!}$|a*@>WV&M!L3BE14 z3Wa3lP{9FgUDQlzn0{(v<G{w0SW3Rn_;It&=JPhjPZT1Ax&cOaxHCq#WZ)zYNEZ=| f5GJ9=>job@M#%ln9eV6FZpY(I<KBDhH#qtO#&2;* diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_IdentityEscape.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_IdentityEscape.binjs deleted file mode 100644 index 434839f134ec4e53f42ca4a2cc7d0f37506c008b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 731 zcmYMw{Y%?G7zgn1@K8btQbfiWB4rebb;KfLxEFNo?7E7UE-9m1ua=mc<s?nQ<pN6W zpRoUVXP;xaU+(!F-+OtkHym9BFdO*Yo13mb7cozjP*0yfLc<+yaWA;+KjxAbg~-zV zZ()*D^sa^CGE4#`MY^ok534dzq2eojY{z6r<%&xYRf*GXQE;hv97Iy&YLH}i`ot*9 zd9x?dP(D>rha$6J;txlIpn7i!%<igeWh-8&UH!(zeG)E<W|}R^R76?KX`#lV1sp>Q zTsVR@cyIz2&cN^YFMq>$?`Ik6_Fp=N88BomWG=EJWNl=}$UI~x$S#nLk<F0lz#Q3a zjg`{|E7u)8Hpte<o{?=}4!2Gs?qVVBBn#sM$(Q^wU*w@Ixc5*%iRBd5@C=*TMBiVv z@)vjNmSwp$utwn2t!o_X5^DIxLa;2rD`LygA)Xn&C3=Q?#J1rs@tt9vcxw2Xcxbpo zbPXHC4~9+RC&M4ap5ZUzcf&u#OT#I#WB7{r-qN#faG!W?I3a$0;el=IzuAue1-{wt K@+oGUUG_hI_>pn| diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_Null.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_Null.binjs deleted file mode 100644 index 49aa105babf3449509141532a5731813ba19f544..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 284 zcmYLDJ!``-6cj?FCYTU1m(r;e3ZZoEQl}W>(qyo*xy2~)i+M%1#M2v`e_zoKn(l+U z<97AoL(8^miv7N5zOjdik*}{ea`jmMi3<XivnL1v-E{kItW9$Ji40_{X2NMm{zIag z4Z|2`Uy2Zb7<zps^jukYip8_@aKFRJ&^2}P|46HkO?{|zx;1a4$O?9&`g-2PC*8%G zA><ZMJyK?!>F)>zn0@CB1=#+CHACQT#92PI$EGaP)?1zlA=E;OrChE>rt(Nv3#CLv HDV6vI2CiIt diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_RegExpUnicodeEscapeSequence.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Atom_RegExpUnicodeEscapeSequence.binjs deleted file mode 100644 index fccb27ee716702e02cc8ee918b8fd2d50d8d0bf4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1124 zcmb7>(Q4Z;6o!Q`#uO7mD4~=PLK$7?O30d0!Zya7#K}_9bl4swWW%Vjnrd_GAgd!~ z1ojAfgY6M^*_)AP*#m^_5hht~ok4RkUC8G@`t%>2<3_iCYQs^-GS1En>pk&szzDl} z{upM<-B?@_OwIX>;wU0vP-r6GPi3V?7^cX#8709a%@++y(M_uN)6iy!;VCb3WJD3B z414yNk{Rpx;RQDuhcjGikO0xO>$*fnwqtes9XoyIFU8Re7EU#WBer`Tka6f?_tHm` zC~x@uX#ry76NUpg%nHPvlDWG2{!?B3xXsD>aZ^`_qA|ytK8m7h|J-qnwqsgu&oo-D z{noP1JBDNK_3<S3>xJP*bcK<}eZHux<x>0e?dxrhk4Dxm1)=-TV<6BRJZFW$yX#iH z*5Z4!Rv+q8i4T|R@8vR^0K+&COrB>xKW!h^>WksFh{gT8kOPaMJ`lx)S(UGy^$I-K z<}1suiL*uS-b<unr#KKkA`tLG_sNAvsOE>rD^fhc^O-wCG{Th+5qvUoEYnPXfT?A+ z003nTf<DwO&{N*<5UR>cP=WwJr6^???8Wlgom3#$hpHMUc}|e=zQu*EDhCOlk^BMR zyvl83CIi6^gkT$rjIyf~BvehHd(+Jq)=M2GrLxlHFfEmXN<Jo&qoaolq}aOci(~+g zWJ9kKS&_0Kta#JO>1iUxDetM3$YglOLT;QE=i36<+^sY{Nud835BGkZdZ&#_$NIyL IDJJLf7lq2+J^%m! diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Capture.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Capture.binjs deleted file mode 100644 index d1b7bf20d286cb5c6b43c9369e4b4f208f71e7c3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 511 zcmZXO&uYRz5XP4wgb;#=6p<n#J(PrklwNyiqXe;34~Z9%BAaBCEt@~=uA;BmC+Q<} z)wV0`9+sK!_sz^VoXlPlSdQaxIt}ADmSd@yIy^3*<xft{nxTmHwLmFZRdz>|bJGr9 znL<H%q68~9M!)~oXWIe=%M7?RWumCULf`9!LePT&522JO6y`}LSgppqO7(@Ts<A(0 zB^4J|?`&Bn^LR2FCno>LO=CoBwH4@usw!GK^=i%OMmh?mYKL6ME~#QWbfcnH2cR9_ zr+$zILFVUy<p;J;14to*+~X|GnQ(YT^Pa#B?(0=eg~Y+TguCTDjv{k-0Zoq(;y6IM z(CCwEtEWrbwwlBOLM&TD{XU<7xa3S){|JEPomu0^9B}PFv%ibT^AA4`UAP<#TmnSP OSEs*y0h=0X(D?%D5rC)w diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass.binjs deleted file mode 100644 index 395616cc8a6e6de24e14fb09456f94360f85458e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 835 zcmah_U27Ua6df+humlm2AVEYVlr*$aLMWxQrF7MeH5gNNEhx((<L<;vy6(#Cq?osU z(dYhy_9x^qFU23zXK8;z@46<YFD=X7nK}2IbI(k@-956wX<5ecv0=Hw=b;kn^4WdJ z)jC3P$pTwR5suB-RPs0$QMlV)l1>GeYp`rc$u8IDQiBD-`na>++KMSY!7&F$9CN9- zZ+lWqRV#=_ILwQtyiyk-lXu)QDaEmSR=eA>*D;y)y3{yhl6e@l5wJMc6^|A4VE`<T z5r(G$8^?vFh|e!VPhouUiWi~qBA=%{`t!p_{J%i8U<BwAG9}(|7}3S|A9QhbjlIu6 z@@ZJq>xPOZ``we?&^YXw*05t5&7u9qvQAn?&)n<s@zUV$RNFUjCyL&(GtPYKRNbu8 z$038|dUZW;b58&Fx39R-9CyoMRS%<8F`7#q=9U~bN&t+LK$$>{d?EE9Vt!fjF`rF` zQzm0xJCAe88w@96hWX#q#e7bG&F6Yz4G*23Wt!^;{G??!2qAf$!b`|>;RUJVwn@oj z*r4zLG|)7%O^y%*N}eVlNkN_HDfoN^W{`;>)*>ll&5|tEJjr9NkP6mKvYASrtRxzO z`iiz{)$WWakV49T1UU*BjIx}bsPMx|38k<Dq?6M2|3%xnkta7QkrIVHxV_9Fd6ilm P{NLgpklkBhnUwzkIJMA_ diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_CharacterClassEscape.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_CharacterClassEscape.binjs deleted file mode 100644 index 960f79fe433c87ca48a773c359da3c50186e638e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1197 zcmbV}>q`_-7{*@?hr_mQA|eqYwuP8fm`F&OgzF_!RAgtVa9!8gopBu*XO=UwrWP@V zL|8;bMEN1@Q#ZPNFI*7p|Ij{{|3c5~g>|7K8hC!3^PczeoHM;cW5WuI4@M)SqmgLB z&~(c++@(vWSZ&*g;p$Q~6;~QoW?(TZb;mJmt0^L-x>VV>4i$=K3|&@&jeV+VR<<pb zrQ)itK94aS5y#P`t7}SH8d-PHv{M+CwzGP;*RWK1U__{x5?5l;p|L@wV)FxE54gJH zHulY`Qcc5epQ$<yBe9>)vm~2l=U5kOXBWF7rm5tlv@@6<v9#*^uw^H6mXWqKJvn2l z8Atrs$cvwz$9h<VO|W<%K6yO>+)S`3rm|&riv?H>JI=!F1j7CPnUbi(olEt`e2yDA zKA&T`hN{kddxLLp^6giACogtiK<gf~B6jn6vFAO2UPJGokI*ORv)EgC32i`|Vs8~^ z$o=kl(2CgqvIXVE{#TD3Vn<*^^W8X!kZGheLk3J+)taQ9(HFDHtSTM7ZO-94Tl|}c z-oDnLH_%)3_Vu2fiN~S?1C?h!9IOcvQA0rRRTg^A@6tUiNzfgBS#aimoNB4A80_Ll z3qg(`rw~{}qI`5!@Os9?fumzsH<S~+Qp0)#m+3axNuA&bjes$Vfe+~s_?Vu6DN2E} zGz(@a3og(?aaMQ9#!&=0wSygW9=t%q;21^0Yjgvgph<9wra_Hnz&Wx&NiMip_SVgd z=6%Ee+pu`qs<tg9p8>SR8-h&~1_R_rPSe@qby~2wLj8r8{fE?E>M5l9&;Q%5h>z1a zXp&i+&|ESSM6mqd8nHe}tzeM+cw6}~nz1R^!Qb>}{JEg&|N3PGYbdMzYuSCAuF+HQ I8I@Z60wHk$0{{R3 diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ClassEscape.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ClassEscape.binjs deleted file mode 100644 index afdc73af1e8a58a6479b5630a1861c19b7e61de0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 340 zcmYk0F>Avx5QW8Iga{^tP&$RssV$Ub=-SCK#<(;YtZc#r#lE;Is%=i9B!8p7xTYDD z?Y+mlci*Piy-QGenQXU7S(yeqZ~W!$31-j5zd0GC>^u-UXZmjaVLXzy(v#`hkS|hg zZLrIPNMC|~3{raS@q2vpnmC8#v5_^I!RNL=j=Oa~;KRmrnr_bHYemU@S?qEdFn{ks zz-p0xYSQ%xmRjxHd_*~%tZtp~=sZ`V;%ZgJ)*Kr{!uGmZ61I3A4ud9#>n{f{YF}nq l82*_~7-L*SYzFZio5FmQg2ROIh(*AGN5Ftx!}ulyfIp#SXK?@k diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ControlEscape.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ControlEscape.binjs deleted file mode 100644 index 9141e45c9267ffd857d043b32a01566ba149862a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 426 zcmYk0L2H9R5QUdP#9AvMlv0XF=%FnXa_F@u6GSXc4w{>lu+i0S*{aMgA^CUxQT+j3 z>p?G%dEe~Ld#iZ+mO>UK!DbUAIWJkGxH`W+!t5#jHx*|Xo;qYw^0ryNbH$K~R3UHb zk$Y<@#Ay8hk)B8YFpjCBihb*tmq1E}ij`@Byi<{A5BhG=c5JcY4aLcKXLypOyCmL5 z=~(mU-dlfCq=hcE7F5c)uCcEKt)-=yRB!<{T!I5vR`yZlTAE(47uCx#cLYC_94*n( z(nnUaQ@8IZO1Aux@SN?EFdXxKU7HZ%SO)RHS&%#M^=OzdBVZ5$CYXi}>-QSYC(r_G VfY%e~f;+&Q3Dh?RcsqeM*nihoZ>j(Q diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ControlLetter.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_ControlLetter.binjs deleted file mode 100644 index 4598db9ed9460044ef95c87dd813060b0bc59f92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 493 zcmYjL!D_-l5Zw+T1PMW;lu|^b6k8~G=(Tu=LBvu$B%T_BtjTD%Y?Cm%1?`9T+-*`! z7<jyS^LX>7i`7d6@jUdGOFv9RhPf8{^n4H9@vG2CTt=EiewZCgLZw8JKP)QKULZB% zz$fCTX72}F%4QukG}2t-r+M?_D}|&ni&7G$p37oqo~1>J!>PzQwbI<$5=ZNBv6@Fs z&7V;}c<01Z(=?D=DMzEyZ~-^4>6r%Gz2pZ4DNKfWvHi+LT4Y#@op_T@l0Wn-d`ld| zE6OYUPFyK=nIK0NJR1-m@K|n3P722#3LfKiIGZ(90`NMFG0(AK2<{yW*sY;pvm5Bx xz`z2_VrFWw-x6(R*WzVMJUg#i;@No(-73>EnGSOdy3DOZdjBW8eKOo*-Y-^fdanQg diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_HexEscapeSequence.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_HexEscapeSequence.binjs deleted file mode 100644 index 417e41145288918c22e15600c7fed1aecc5e1080..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 503 zcmZWj!D_-l5M724f&>vMr4*4+iY*jGdhIES1WUD$cuRw<$;58iCSiAl_;o$>ze=}R zF+%q+`{unjGjF<BJx34+p}$=EVZt&j6jO(%JLrvHm_k8$qy#H=^STl!B`b^jMPtet zik2MuLeN9o4`!6}wjH%FQdHrmKJ(~Hi9%r(rGix|;N?~yOUnwqDJ!Tr+vXZe9IeB} zDu~*cKO?9Ivv(?Js<X~GmC{it6-*%TigL3rSXySd$vNFgAblOmVC(zKjo<3YBx$}N z>HKv~4H8G=hR^fF<!qZV;qa1XLxDT2t4&3P#PNrOhj<;%=WU!<=ynJpUB?Cw+*=ru z8x1X+^r345fCZLCT;dvXa7Ok>&yd&9IXU$zLtY(8OONZPt3w<kUH+47VjJn=DA}he HEt%P082^0) diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_Null.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_Null.binjs deleted file mode 100644 index e30ef40a7c1fef5fb0a8a23a3ccd244297f7e4aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 314 zcmYk0!D_-l5Qdjw2|<F0XOW(2p&+H#o?-|gMLlG_r6OZ8rdzg2nB9ZEK_9zIJ#26P zH_ZI=ZOZ+-g1V^E-7c+;x~1M}cY9mG?5X^Nizd#mBa^jy=+|5Ah|ws=y6?h#k)bgG zmnk#e0zZbR96I{;Z(dVti5<17VLiIS3}@fl3?n^kbdUV+Jh`vb>QI&YLIusAIfzB} ziHwcc$_!c?*B>v(xwko840bj#`rK-c&4BHasiW(78j&rnzijNtI(V)RRi1~=?Q|l9 akg*gKNM<62#K&m_QbbY!L=Z_3AbtTwer7QM diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.binjs deleted file mode 100644 index 5c717639a1d6edf55b1a8f3f3644a1952c230540..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1279 zcma)4?P?Q26di_PSwaY*lu$wlp_E#xgxVAdD&jUDYfGBSZiI%oglRHOr*3z{>_l2b z@DcP0^bz{Ae<Tm!vjlwv@9reo+G^_lxN|?woOAZ>?(Q}BZQL;}<KV!s9NuT1<nr>_ z1Dq~4xMYI5wiMhO)GmgC1p)WHydea=jO&fP=+X&iB5vj?)OF)>Jx*;&B|8V1Z6gSn zkgRX_1RqM%^^ZZU=MPz7mwQy)kVq;>$8K4BP1BBT{va)Ugxk5wDHXH_b}KFo0$s8| z;!$?w@t)sj-4mA%0&Vi`yEeJHE_i<Tk3pu&gR_y>lkjdB;Sw%q3>T<8D*1bctJu_j zj>k*NEnsv*`sZ8C!&cX*w`x|mQ8TJt`;BECnntU(+GK<1V#D{}(NjkI%blaQqiVTS zZ99co3XMvs+;-F~PV4Zroh8`a%=FbKZ89F~zrKFHj=)>+w4IfZ=tG!)Y&+SgcwFBp zm7!9jP%kb(0E%=c@?knDl{g7FO-G05Bwc>o=R$XV+RqC%U>C#gkcxm6&jS3g)3R!{ zc<WyhsRTl3P1i^hCoR%IuOZbm^oXQ2LNL}bfjNShL`jG#l!6G$oxu_sS;Ck^U@`{- zKqG4yl@)Ar%BIZ$ifzubNfz*AXZ&!6HZ-yU>|idechD21QM{vZ%WLs|ja7`+=ge?j zF+U~SQ8RYGjFv%q?tbeIpnwWD0nbBeFuZ`_HsBV+i$&(+MZa7G`@cQz-cRxOHSJG7 xK=@U3q^sS%nl{5<1DX)?D6dBK=_qWfQ4ZxGUqLGnGbp2A)hR6TFBtTJ^EWbc-R}SZ diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Disjunction.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Disjunction.binjs deleted file mode 100644 index e8bc0b3ef1e7cc9ee1729b868d820dc2018ce1b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 496 zcmYk0!Arw16vjg+C6qEoks&h15K%$c!K<fEOR2aW+TDhXtj$J7)|TW68}y=or#Jr* z(^hyANWS;|zW4Ix$?`R$>o^S;i!gncg(yM7`RR@h?~|_BNui@tt%WhND#y=UDJ*Ai z5`^X|11-xv`nM=E;2@56>?G8hpAkHU#t03f$Z{=fh*h<<gYv2t)443U{ulN8$U0l4 z$uiDx&F>o)LUr__V-4rgi!_IiG6%b7VAtI26yF;L!hp-SIpyxp=NGf8@pxlp(A|wS zd?mMq)J#>pm}s#Vr+QO!ZN%(gXv5lw(=_y9y-K49f6wW_BZLfGN-n8?O-9a@mCSVl xVqb?chY~^^zq{L%MHhd_R){+7^?@<=QqrE@o?>5bBN}3d9qA#MAZX1N{sQcCdJX^p diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Empty.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Empty.binjs deleted file mode 100644 index bb9af38edcf3074d196711abeead51fa25b99ff1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 275 zcmYL@F^j@L6oi*WVhBORTI4Db4lHc7i4sDN(;{mZ4q44JJXw?F?JLZ`cR7pgW`=Ku z*_WpuCF`Qfj>oL}!v;D=9=2mSS(X3hjzIa#5;%u_H$P}&f?WowSTj6*ef^6Jq>W<2 zt_{E@a}J21Q8z-%h3T&zy7d;m_Sk6}0-Ao1TAi!%RH$(4F%?Pvv^>oGjmzEW)};oo z4N`1+-7E-Nc-f29<Y4`9F@t0IU7xEw4<oxY7D9|hQp7Tuh$u?DOrywWQb_Rz&RJTD diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Everything.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Everything.binjs deleted file mode 100644 index 5dc3739aebbe1bb9d600d25106dccbcf7c7856a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 458 zcmZ`!!AiqG5M73_#2QK|B2r2zBDEs);89O$DWzh2NO~(0w#hcGY_nl@3+b(Y;!*G? zdiOKDtH0o)NbJGGJm$^3;l1gPr?(-@M}a??_`$tMcxHsz+?+$LcP9)-CPRZFONT{{ zTx+4SmXF9bCGU>EkCuXCIcyG?lqKzyZD^R`D{FJ*Yt7N{B#cqyW+c_Zn#C&T?Y_tu z{;}|WB=c|<jHjcpjClcFAaDSO;6W97HN&-uR-&M9+h<!Z^mDhn_N5Hhh$^+lewGX# z7_!*DHjqr~=05eLSR?{nsaVp^RJ6`StP&nAB};V+dCH4C${A|jd(@4+Eq#C5(U0vG zF6XmgI4ncHRx5-M>QbixUdK5hE!%pORGcPtjsaY7>>eySgj#e-)nbj*e`Rgz9064R Lk)7K48L58(3do2a diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Group.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Group.binjs deleted file mode 100644 index c312cdb7639a205d085193ed8da19c703ae5c77b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 373 zcmYk0O>2Wd5QdjUWD$`NN+~5sPi;aWhaTHQF-64E<e(lBq=ZeJ$d>hk-8txg$#3Xy ztRDw^8RmIs=ACyF?mlCh29dYjdeOJYphSV~+Y_BF!vQV=l;6|}v=&vl_~24bxc(9d zipv<4DDz2woZ1*ULebf}o>IJ>1}~o0pb)b7tVE50tWKTLxvJq|BTBCRt=i*C8YfY> z3*sr}ugg5Fig_36c#%BU3_&C1Z2A7Wvbw@omS5D^vIH8WduKmr2YRrjIAuaHS@FzO zkV8`+Ypyh`e>8nglgRg{H&@3ZgfNqmJ8Cb;t#RMAhG{TDDY3~2Ru6<4=7{qi9oipt K;%poZ_2v(z@M{JD diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Lookahead.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Lookahead.binjs deleted file mode 100644 index d48c00f94e870d447a4732ad9d88e0eb57b0f8e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 560 zcmZus!D_-l5M7oKf&>X7Qi_O`VyzYrg`P^0Sb|v8L*hY^64qo*x7}pJ?zZSB^sl=~ zs<F_^%zJO%JZ8qz#ft|w6W5;4ZTFRgIFUpi9&e!4o91LkFn9JT$3hU6G@lWrB^}O) z#2isia*{-)-Yuagk;JizZP}coLpiv&g}_|m&<i+8<%F`W3JO??+hdX-er7cb%f?%} z)5XLq&-{i%!<H;=C(Qp$NWenu?<k6dA+eA;+6Gnz{Fv+;HdUu4NRlsHapF`SYBR<@ z&>Kb}T)}lsJyz^id!sA0d8_(U)~(;(KZ3y#j5-S(<%y@L`s(OjpWtY1QnC#RHz-44 zi{l9IQ$Iyq;NiP~gU!-)obss$Sgim6EFFR#H19xH>nmvJ+6AaXP=ycxsOg2&$fWik ksR<N4b7{JEnMo#4D~fb7Qh|n+=U92I6{FU<@A^OA4^!BYaR2}S diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/MatchOnly.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/MatchOnly.binjs deleted file mode 100644 index 57988e1dcdfc98dd6618f17d3804cb51073fa775..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 659 zcmZ{g!D<^Z5QfFDi0yVU#+XooF{YFd+_HpFN=Xl8;~3-8Y^gVwV9Fxz%8pW5S|qu| z<l;BUG0>OrWAxs8+gIo$ZrS({fd>7f(Wm+6c$j=hVLTYcr>F7gizv8q!Y$vOLnHbq z95+m+&ImQ@UzLViE411l-WN>;H&wFLV^UVK9UH@zmENn4sbh}M@tcEx{A4lbM&wn+ zVQeioju&ZeMCk@nPq2$zm%MW<6f+OF;ihDqo{fgdAg%iU0Y`r9^qjIu-gex&Y|dPM zk!dBDK;Q{Hg%E0C)P0WyJF!HkiaGI(H<M3EHW>B$C+E%23x?CUGul9R*;KNbZG0W7 zsZcm0`g3)Q`#b%!UI$SZIY+US>B1O2LyNI0dKb*F9ML_=tZi+}03Sr%P>M+*j4w4S zI!b2?C30Qx&0lT9XZ)(nN@gsNF758tE&X+~roUG!csV}9ek<?SP!9<qf$za9sJ(?Q zIl!Yw$#Zz-p?LxuxxX#z5P8r5>Upr^2MD-duuGaA>;d(uM<}_A0SPhINDE_|bRHt> TaQG<W1<>FT#%s*K`A_-_1Y5JP diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Quantifier.binjs b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/Quantifier.binjs deleted file mode 100644 index 036f49b05cd7da6d0eea3ae12bcdb9d19ea80238..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1082 zcmZ`$Pm9_>936%b1_>e}vWSS3vWSXowOyoJ8sloMOV?7fm&F#DHKR;7CSfub7s+?% zH)t=t_qdmSqy_K2baVnSS_6}rH}C!4{Qk82gDVq`dPC#-+8BPJ7I8S`4;QyEUFvVa zloHlmdW`r!b)Ebrw(SVkK2S~=woT5cGmGv|qoc_&Cv#zY7HS8JIbn1XDGCN-_#wh| z!}kf}#4;z0dc0@5cjASK>ycucI+*Q9H7OaHH^cs*XGZz|g;&Vn?mWeb&&PAR%zRp4 zQQD>&h|{8o@zlmMU+WFK-Og?LzVA$_BP!1fJ`Tq6vgo+ug+nK<MWi_QdC_S$I^uuX zXjT-wQt_%P)(a$7HL>~C(dNOdVT-mnnA2}W!DSVfbp=;cToIeDVqMqps!@FvB;}@y z&_*@bUIw}_YXqB{K-X+~XHkZ17h45JW@PD&J<NPk`|9Unsi{vt|EN#DAJO{9_eWS6 z-H5WHZu~+i4FFJ5A$S9m@4;*3tvEtec?J*!3POUEpQa=r08mjS|NM|o?((NGeyxMO z_|hRCi!aA`0K!DpdOVHlQCZCGJSIb}&<(ZXZq1{zm|J~MwqM)JLp~N?+vCG*GJDya z9hF6H1yxCd6a+<>P`2%F?@Vo{>m4z*t+w@l{+*m^X5%G>oRRP(geMZ_LYR{<AHuwZ I*$`&`0Xs0mTmS$7 diff --git a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/directives.txt b/js/src/jit-test/tests/binast/nonlazy/regexp_parse/directives.txt deleted file mode 100644 index 93b6eaee604b6..0000000000000 --- a/js/src/jit-test/tests/binast/nonlazy/regexp_parse/directives.txt +++ /dev/null @@ -1 +0,0 @@ -|jit-test| skip-if: typeof parseRegExp === 'undefined' diff --git a/js/src/jit-test/tests/regexp_parse/Assertion.js b/js/src/jit-test/tests/regexp_parse/Assertion.js deleted file mode 100644 index 844e019e27ee6..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Assertion.js +++ /dev/null @@ -1,17 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("^", no_multiline_flags, - Assertion("START_OF_INPUT")); -test_mix("^", multiline_flags, - Assertion("START_OF_LINE")); - -test_mix("$", no_multiline_flags, - Assertion("END_OF_INPUT")); -test_mix("$", multiline_flags, - Assertion("END_OF_LINE")); - -test_mix("\\b", all_flags, - Assertion("BOUNDARY")); - -test_mix("\\B", all_flags, - Assertion("NON_BOUNDARY")); diff --git a/js/src/jit-test/tests/regexp_parse/Atom.js b/js/src/jit-test/tests/regexp_parse/Atom.js deleted file mode 100644 index ca992c6de4502..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom.js +++ /dev/null @@ -1,51 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("a", all_flags, - Atom("a")); -test_mix("abc\u3042\u3044\u3046", all_flags, - Atom("abc\u3042\u3044\u3046")); - -// raw brace - -test("{", no_unicode_flags, - Atom("{")); -test("{a", no_unicode_flags, - Atom("{a")); -test("a{b", no_unicode_flags, - Atom("a{b")); - -test("}", no_unicode_flags, - Atom("}")); -test("}a", no_unicode_flags, - Atom("}a")); -test("a}b", no_unicode_flags, - Atom("a}b")); - -// raw surrogate pair - -test("X\uD83D\uDC38Y", unicode_flags, - Text([ - Atom("X"), - Atom("\uD83D\uDC38"), - Atom("Y") - ])); - -test("X\uD83DY", unicode_flags, - Alternative([ - Atom("X"), - Alternative([ - Atom("\uD83D"), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ]), - Atom("Y") - ])); - -test("X\uDC38Y", unicode_flags, - Alternative([ - Atom("X"), - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - Atom("\uDC38"), - ]), - Atom("Y") - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Atom_CharacterClassEscape.js b/js/src/jit-test/tests/regexp_parse/Atom_CharacterClassEscape.js deleted file mode 100644 index 18183e8272729..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_CharacterClassEscape.js +++ /dev/null @@ -1,112 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("\\d", all_flags, - CharacterClass([["0", "9"]])); - -test_mix("\\D", no_unicode_flags, - CharacterClass([ - ["\u0000", "/"], - [":", "\uFFFF"] - ])); -test_mix("\\D", unicode_flags, - AllSurrogateAndCharacterClass([ - ["\u0000", "/"], - [":", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])); - -test_mix("\\s", all_flags, - CharacterClass([ - ["\t", "\r"], - [" ", " "], - ["\u00A0", "\u00A0"], - ["\u1680", "\u1680"], - ["\u2000", "\u200A"], - ["\u2028", "\u2029"], - ["\u202F", "\u202F"], - ["\u205F", "\u205F"], - ["\u3000", "\u3000"], - ["\uFEFF", "\uFEFF"] - ])); -test_mix("\\S", no_unicode_flags, - CharacterClass([ - ["\u0000", "\u0008"], - ["\u000E", "\u001F"], - ["!", "\u009F"], - ["\u00A1", "\u167F"], - ["\u1681", "\u1FFF"], - ["\u200B", "\u2027"], - ["\u202A", "\u202E"], - ["\u2030", "\u205E"], - ["\u2060", "\u2FFF"], - ["\u3001", "\uFEFE"], - ["\uFF00", "\uFFFF"] - ])); -test_mix("\\S", unicode_flags, - AllSurrogateAndCharacterClass([ - ["\u0000", "\u0008"], - ["\u000E", "\u001F"], - ["!", "\u009F"], - ["\u00A1", "\u167F"], - ["\u1681", "\u1FFF"], - ["\u200B", "\u2027"], - ["\u202A", "\u202E"], - ["\u2030", "\u205E"], - ["\u2060", "\u2FFF"], - ["\u3001", "\uD7FF"], - ["\uE000", "\uFEFE"], - ["\uFF00", "\uFFFF"] - ])); - -test_mix("\\w", no_unicode_flags, - CharacterClass([ - ["0", "9"], - ["A", "Z"], - ["_", "_"], - ["a", "z"] - ])); -test_mix("\\w", ["u", "mu"], - CharacterClass([ - ["0", "9"], - ["A", "Z"], - ["_", "_"], - ["a", "z"] - ])); -test_mix("\\w", ["iu", "imu"], - CharacterClass([ - ["0", "9"], - ["A", "Z"], - ["_", "_"], - ["a", "z"], - ["\u017F", "\u017F"], - ["\u212A", "\u212A"] - ])); - -test_mix("\\W", no_unicode_flags, - CharacterClass([ - ["\u0000", "/"], - [":", "@"], - ["[", "^"], - ["`", "`"], - ["{", "\uFFFF"] - ])); -test_mix("\\W", ["u", "mu"], - AllSurrogateAndCharacterClass([ - ["\u0000", "/"], - [":", "@"], - ["[", "^"], - ["`", "`"], - ["{", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])); -test_mix("\\W", ["iu", "imu"], - AllSurrogateAndCharacterClass([ - ["\u0000", "/"], - [":", "@"], - ["[", "^"], - ["`", "`"], - ["{", "\u017E"], - ["\u0180", "\u2129"], - ["\u212B", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Atom_ControlEscape.js b/js/src/jit-test/tests/regexp_parse/Atom_ControlEscape.js deleted file mode 100644 index f6c1ea4b337a3..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_ControlEscape.js +++ /dev/null @@ -1,16 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("\\f", all_flags, - Atom("\u000c")); - -test_mix("\\n", all_flags, - Atom("\u000a")); - -test_mix("\\r", all_flags, - Atom("\u000d")); - -test_mix("\\t", all_flags, - Atom("\u0009")); - -test_mix("\\v", all_flags, - Atom("\u000b")); diff --git a/js/src/jit-test/tests/regexp_parse/Atom_ControlLetter.js b/js/src/jit-test/tests/regexp_parse/Atom_ControlLetter.js deleted file mode 100644 index 089413b12ccbd..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_ControlLetter.js +++ /dev/null @@ -1,10 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("\\ca", all_flags, - Atom("\u0001")); -test_mix("\\cz", all_flags, - Atom("\u001a")); -test_mix("\\cA", all_flags, - Atom("\u0001")); -test_mix("\\cZ", all_flags, - Atom("\u001a")); diff --git a/js/src/jit-test/tests/regexp_parse/Atom_DecimalEscape.js b/js/src/jit-test/tests/regexp_parse/Atom_DecimalEscape.js deleted file mode 100644 index 89826d458b44a..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_DecimalEscape.js +++ /dev/null @@ -1,84 +0,0 @@ -load(libdir + "regexp_parse.js"); - -// LegacyOctalEscapeSequence - -test_mix("\\1", no_unicode_flags, - Atom("\u0001")); -test_mix("\\2", no_unicode_flags, - Atom("\u0002")); -test_mix("\\3", no_unicode_flags, - Atom("\u0003")); -test_mix("\\4", no_unicode_flags, - Atom("\u0004")); -test_mix("\\5", no_unicode_flags, - Atom("\u0005")); -test_mix("\\6", no_unicode_flags, - Atom("\u0006")); -test_mix("\\7", no_unicode_flags, - Atom("\u0007")); -test_mix("\\8", no_unicode_flags, - Atom("8")); -test_mix("\\9", no_unicode_flags, - Atom("9")); - -test_mix("\\10", no_unicode_flags, - Atom("\u0008")); -test_mix("\\11", no_unicode_flags, - Atom("\u0009")); - -test_mix("\\189", no_unicode_flags, - Atom("\u{0001}89")); -test_mix("\\1089", no_unicode_flags, - Atom("\u{0008}89")); -test_mix("\\10189", no_unicode_flags, - Atom("A89")); -test_mix("\\101189", no_unicode_flags, - Atom("A189")); - -// BackReference - -test_mix("()\\1", no_unicode_flags, - Alternative([ - Capture(1, Empty()), - BackReference(1) - ])); -test_mix("()\\1", unicode_flags, - Alternative([ - Capture(1, Empty()), - Alternative([ - BackReference(1), - Assertion("NOT_IN_SURROGATE_PAIR") - ]) - ])); - -test_mix("()()()()()()()()()()\\10", no_unicode_flags, - Alternative([ - Capture(1, Empty()), - Capture(2, Empty()), - Capture(3, Empty()), - Capture(4, Empty()), - Capture(5, Empty()), - Capture(6, Empty()), - Capture(7, Empty()), - Capture(8, Empty()), - Capture(9, Empty()), - Capture(10, Empty()), - BackReference(10) - ])); -test_mix("()()()()()()()()()()\\10", unicode_flags, - Alternative([ - Capture(1, Empty()), - Capture(2, Empty()), - Capture(3, Empty()), - Capture(4, Empty()), - Capture(5, Empty()), - Capture(6, Empty()), - Capture(7, Empty()), - Capture(8, Empty()), - Capture(9, Empty()), - Capture(10, Empty()), - Alternative([ - BackReference(10), - Assertion("NOT_IN_SURROGATE_PAIR") - ]) - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Atom_HexEscapeSequence.js b/js/src/jit-test/tests/regexp_parse/Atom_HexEscapeSequence.js deleted file mode 100644 index acc7019787c3f..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_HexEscapeSequence.js +++ /dev/null @@ -1,16 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("\\x00", all_flags, - Atom("\u0000")); -test_mix("\\xFF", all_flags, - Atom("\u00FF")); - -test_mix("\\x0", no_unicode_flags, - Atom("x0")); -test_mix("\\x000", all_flags, - Atom("\u{0000}0")); - -test_mix("\\xG", no_unicode_flags, - Atom("xG")); -test_mix("\\x0G", no_unicode_flags, - Atom("x0G")); diff --git a/js/src/jit-test/tests/regexp_parse/Atom_IdentityEscape.js b/js/src/jit-test/tests/regexp_parse/Atom_IdentityEscape.js deleted file mode 100644 index bda64e5943e6c..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_IdentityEscape.js +++ /dev/null @@ -1,52 +0,0 @@ -load(libdir + "regexp_parse.js"); - -// SyntaxCharacter - -test("\\^", all_flags, - Atom("^")); -test("\\$", all_flags, - Atom("$")); -test("\\\\", all_flags, - Atom("\\")); -test("\\.", all_flags, - Atom(".")); -test("\\*", all_flags, - Atom("*")); -test("\\+", all_flags, - Atom("+")); -test("\\?", all_flags, - Atom("?")); -test("\\(", all_flags, - Atom("(")); -test("\\)", all_flags, - Atom(")")); -test("\\[", all_flags, - Atom("[")); -test("\\]", all_flags, - Atom("]")); -test("\\{", all_flags, - Atom("{")); -test("\\}", all_flags, - Atom("}")); -test("\\|", all_flags, - Atom("|")); - -// Slash - -test("\\/", all_flags, - Atom("/")); - -// SourceCharacter - -test("\\P", no_unicode_flags, - Atom("P")); - -test("\\uX", no_unicode_flags, - Atom("uX")); - -test("\\u{0000}", no_unicode_flags, - Quantifier(0, 0, "GREEDY", Atom("u"))); - -test("\\c_", no_unicode_flags, - Atom("\\c_")); - diff --git a/js/src/jit-test/tests/regexp_parse/Atom_Null.js b/js/src/jit-test/tests/regexp_parse/Atom_Null.js deleted file mode 100644 index f60141bb8f5c0..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_Null.js +++ /dev/null @@ -1,4 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("\\0", all_flags, - Atom("\u0000")); diff --git a/js/src/jit-test/tests/regexp_parse/Atom_RegExpUnicodeEscapeSequence.js b/js/src/jit-test/tests/regexp_parse/Atom_RegExpUnicodeEscapeSequence.js deleted file mode 100644 index 485e8567e1af8..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Atom_RegExpUnicodeEscapeSequence.js +++ /dev/null @@ -1,105 +0,0 @@ -load(libdir + "regexp_parse.js"); - -// LeadSurrogate TrailSurrogate - -test("\\uD83D\\uDC38", all_flags, - Atom("\uD83D\uDC38")); -test("X\\uD83D\\uDC38Y", no_unicode_flags, - Atom("X\uD83D\uDC38Y")); -test("X\\uD83D\\uDC38Y", unicode_flags, - Text([ - Atom("X"), - Atom("\uD83D\uDC38"), - Atom("Y") - ])); - -// LeadSurrogate - -test_mix("\\uD83D", no_unicode_flags, - Atom("\uD83D")); -test("\\uD83D", unicode_flags, - Alternative([ - Atom("\uD83D"), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ])); -test("X\\uD83DY", unicode_flags, - Alternative([ - Atom("X"), - Alternative([ - Atom("\uD83D"), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ]), - Atom("Y") - ])); - -// TrailSurrogate - -test_mix("\\uDC38", no_unicode_flags, - Atom("\uDC38")); -test("\\uDC38", unicode_flags, - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - Atom("\uDC38"), - ])); -test("X\\uDC38Y", unicode_flags, - Alternative([ - Atom("X"), - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - Atom("\uDC38"), - ]), - Atom("Y") - ])); - -// NonSurrogate / Hex4Digits - -test_mix("\\u0000", all_flags, - Atom("\u0000")); -test_mix("\\uFFFF", all_flags, - Atom("\uFFFF")); - -// braced HexDigits - -test_mix("\\u{0000}", unicode_flags, - Atom("\u0000")); -test_mix("\\u{FFFF}", unicode_flags, - Atom("\uFFFF")); - -test("\\u{1F438}", unicode_flags, - Atom("\uD83D\uDC38")); -test("X\\u{1F438}Y", unicode_flags, - Text([ - Atom("X"), - Atom("\uD83D\uDC38"), - Atom("Y") - ])); - -test("\\u{D83D}", unicode_flags, - Alternative([ - Atom("\uD83D"), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ])); -test("X\\u{D83D}Y", unicode_flags, - Alternative([ - Atom("X"), - Alternative([ - Atom("\uD83D"), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ]), - Atom("Y") - ])); - -test("\\u{DC38}", unicode_flags, - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - Atom("\uDC38"), - ])); -test("X\\u{DC38}Y", unicode_flags, - Alternative([ - Atom("X"), - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - Atom("\uDC38"), - ]), - Atom("Y") - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Capture.js b/js/src/jit-test/tests/regexp_parse/Capture.js deleted file mode 100644 index ee24f41f27a6a..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Capture.js +++ /dev/null @@ -1,18 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("()", all_flags, - Capture(1, Empty())); - -test("(a)", all_flags, - Capture(1, Atom("a"))); - -test("((a()b))c(d)", all_flags, - Alternative([ - Capture(1, Capture(2, Alternative([ - Atom("a"), - Capture(3, Empty()), - Atom("b") - ]))), - Atom("c"), - Capture(4, Atom("d")) - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass.js b/js/src/jit-test/tests/regexp_parse/CharacterClass.js deleted file mode 100644 index 850ed33c250e4..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass.js +++ /dev/null @@ -1,71 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("[]", all_flags, - NegativeCharacterClass([ - ["\u0000", "\uFFFF"] - ])); - -test("[a]", all_flags, - CharacterClass([ - ["a", "a"] - ])); - -test("[abc\u3042\u3044\u3046]", all_flags, - CharacterClass([ - ["a", "a"], - ["b", "b"], - ["c", "c"], - ["\u3042", "\u3042"], - ["\u3044", "\u3044"], - ["\u3046", "\u3046"], - ])); - -test("[a-c\u3042-\u3046]", all_flags, - CharacterClass([ - ["a", "c"], - ["\u3042", "\u3046"] - ])); - -test("[-]", all_flags, - CharacterClass([ - ["-", "-"] - ])); - -// raw surrogate pair - -test("[X\uD83D\uDC38Y]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"], - ]), - Atom("\uD83D\uDC38") - ])); - -test("[X\uD83DY]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"] - ]), - Alternative([ - CharacterClass([ - ["\uD83D", "\uD83D"] - ]), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ]) - ])); - -test("[X\uDC38Y]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"] - ]), - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - CharacterClass([ - ["\uDC38", "\uDC38"] - ]) - ]) - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_CharacterClassEscape.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_CharacterClassEscape.js deleted file mode 100644 index 27bf00837f6f1..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass_CharacterClassEscape.js +++ /dev/null @@ -1,112 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("[\\d]", all_flags, - CharacterClass([["0", "9"]])); - -test("[\\D]", no_unicode_flags, - CharacterClass([ - ["\u0000", "/"], - [":", "\uFFFF"] - ])); -test("[\\D]", unicode_flags, - AllSurrogateAndCharacterClass([ - ["\u0000", "/"], - [":", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])); - -test("[\\s]", all_flags, - CharacterClass([ - ["\t", "\r"], - [" ", " "], - ["\u00A0", "\u00A0"], - ["\u1680", "\u1680"], - ["\u2000", "\u200A"], - ["\u2028", "\u2029"], - ["\u202F", "\u202F"], - ["\u205F", "\u205F"], - ["\u3000", "\u3000"], - ["\uFEFF", "\uFEFF"] - ])); -test("[\\S]", no_unicode_flags, - CharacterClass([ - ["\u0000", "\u0008"], - ["\u000E", "\u001F"], - ["!", "\u009F"], - ["\u00A1", "\u167F"], - ["\u1681", "\u1FFF"], - ["\u200B", "\u2027"], - ["\u202A", "\u202E"], - ["\u2030", "\u205E"], - ["\u2060", "\u2FFF"], - ["\u3001", "\uFEFE"], - ["\uFF00", "\uFFFF"] - ])); -test("[\\S]", unicode_flags, - AllSurrogateAndCharacterClass([ - ["\u0000", "\u0008"], - ["\u000E", "\u001F"], - ["!", "\u009F"], - ["\u00A1", "\u167F"], - ["\u1681", "\u1FFF"], - ["\u200B", "\u2027"], - ["\u202A", "\u202E"], - ["\u2030", "\u205E"], - ["\u2060", "\u2FFF"], - ["\u3001", "\uD7FF"], - ["\uE000", "\uFEFE"], - ["\uFF00", "\uFFFF"] - ])); - -test("[\\w]", no_unicode_flags, - CharacterClass([ - ["0", "9"], - ["A", "Z"], - ["_", "_"], - ["a", "z"] - ])); -test("[\\w]", ["u", "mu"], - CharacterClass([ - ["0", "9"], - ["A", "Z"], - ["_", "_"], - ["a", "z"] - ])); -test("[\\w]", ["iu", "imu"], - CharacterClass([ - ["0", "9"], - ["A", "Z"], - ["_", "_"], - ["a", "z"], - ["\u017F", "\u017F"], - ["\u212A", "\u212A"] - ])); - -test("[\\W]", no_unicode_flags, - CharacterClass([ - ["\u0000", "/"], - [":", "@"], - ["[", "^"], - ["`", "`"], - ["{", "\uFFFF"] - ])); -test("[\\W]", ["u", "mu"], - AllSurrogateAndCharacterClass([ - ["\u0000", "/"], - [":", "@"], - ["[", "^"], - ["`", "`"], - ["{", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])); -test("[\\W]", ["iu", "imu"], - AllSurrogateAndCharacterClass([ - ["\u0000", "/"], - [":", "@"], - ["[", "^"], - ["`", "`"], - ["{", "\u017E"], - ["\u0180", "\u2129"], - ["\u212B", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_ClassEscape.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_ClassEscape.js deleted file mode 100644 index 1d0ca6a97eb3f..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass_ClassEscape.js +++ /dev/null @@ -1,10 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("[\b]", all_flags, - CharacterClass([ - ["\u0008", "\u0008"] - ])); -test("[\-]", all_flags, - CharacterClass([ - ["-", "-"] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlEscape.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlEscape.js deleted file mode 100644 index c7353d85d2e62..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlEscape.js +++ /dev/null @@ -1,26 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("[\\f]", all_flags, - CharacterClass([ - ["\u000c", "\u000c"] - ])); - -test("[\\n]", all_flags, - CharacterClass([ - ["\u000a", "\u000a"] - ])); - -test("[\\r]", all_flags, - CharacterClass([ - ["\u000d", "\u000d"] - ])); - -test("[\\t]", all_flags, - CharacterClass([ - ["\u0009", "\u0009"] - ])); - -test("[\\v]", all_flags, - CharacterClass([ - ["\u000b", "\u000b"] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js deleted file mode 100644 index cf8dd11856662..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass_ControlLetter.js +++ /dev/null @@ -1,32 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("[\\ca]", all_flags, - CharacterClass([ - ["\u0001", "\u0001"] - ])); -test("[\\cz]", all_flags, - CharacterClass([ - ["\u001a", "\u001a"] - ])); -test("[\\cA]", all_flags, - CharacterClass([ - ["\u0001", "\u0001"] - ])); -test("[\\cZ]", all_flags, - CharacterClass([ - ["\u001a", "\u001a"] - ])); - -// Invalid - -test("[\\c]", no_unicode_flags, - CharacterClass([ - ["\\", "\\"], - ["c", "c"] - ])); -test("[\\c=]", no_unicode_flags, - CharacterClass([ - ["\\", "\\"], - ["c", "c"], - ["=", "="] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_HexEscapeSequence.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_HexEscapeSequence.js deleted file mode 100644 index cd9d9b37a8dcb..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass_HexEscapeSequence.js +++ /dev/null @@ -1,36 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("[\\x00]", all_flags, - CharacterClass([ - ["\u0000", "\u0000"] - ])); -test("[\\xff]", all_flags, - CharacterClass([ - ["\u00FF", "\u00FF"] - ])); - -// Invalid - -test("[\\x]", no_unicode_flags, - CharacterClass([ - ["x", "x"] - ])); - -test("[\\xG]", no_unicode_flags, - CharacterClass([ - ["x", "x"], - ["G", "G"] - ])); - -test("[\\x0]", no_unicode_flags, - CharacterClass([ - ["x", "x"], - ["0", "0"] - ])); - -test("[\\x0G]", no_unicode_flags, - CharacterClass([ - ["x", "x"], - ["0", "0"], - ["G", "G"], - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_Null.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_Null.js deleted file mode 100644 index d29cc9de7f6cd..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass_Null.js +++ /dev/null @@ -1,6 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("[\\0]", all_flags, - CharacterClass([ - ["\u0000", "\u0000"] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.js b/js/src/jit-test/tests/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.js deleted file mode 100644 index e691a1c59d75c..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/CharacterClass_RegExpUnicodeEscapeSequence.js +++ /dev/null @@ -1,159 +0,0 @@ -load(libdir + "regexp_parse.js"); - -// LeadSurrogate TrailSurrogate - -test("[X\\uD83D\\uDC38Y]", no_unicode_flags, - CharacterClass([ - ["X", "X"], - ["\uD83D", "\uD83D"], - ["\uDC38", "\uDC38"], - ["Y", "Y"] - ])); -test("[X\\uD83D\\uDC38Y]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"], - ]), - Atom("\uD83D\uDC38") - ])); - -// LeadSurrogate - -test("[X\\uD83DY]", no_unicode_flags, - CharacterClass([ - ["X", "X"], - ["\uD83D", "\uD83D"], - ["Y", "Y"] - ])); -test("[X\\uD83DY]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"] - ]), - Alternative([ - CharacterClass([ - ["\uD83D", "\uD83D"] - ]), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ]) - ])); - -// TrailSurrogate - -test("[X\\uDC38Y]", no_unicode_flags, - CharacterClass([ - ["X", "X"], - ["\uDC38", "\uDC38"], - ["Y", "Y"] - ])); -test("[X\\uDC38Y]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"] - ]), - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - CharacterClass([ - ["\uDC38", "\uDC38"] - ]) - ]) - ])); - -// NonSurrogate / Hex4Digits - -test("[X\\u0000Y]", all_flags, - CharacterClass([ - ["X", "X"], - ["\u0000", "\u0000"], - ["Y", "Y"] - ])); -test("[X\\uFFFFY]", all_flags, - CharacterClass([ - ["X", "X"], - ["\uFFFF", "\uFFFF"], - ["Y", "Y"] - ])); - -// braced HexDigits - -test("[X\\u{0000}Y]", unicode_flags, - CharacterClass([ - ["X", "X"], - ["\u0000", "\u0000"], - ["Y", "Y"] - ])); -test("[X\\uFFFFY]", unicode_flags, - CharacterClass([ - ["X", "X"], - ["\uFFFF", "\uFFFF"], - ["Y", "Y"] - ])); - -test("[X\\u{1F438}Y]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"], - ]), - Atom("\uD83D\uDC38") - ])); - -test("[X\\u{D83D}Y]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"] - ]), - Alternative([ - CharacterClass([ - ["\uD83D", "\uD83D"] - ]), - NegativeLookahead(CharacterClass([["\uDC00", "\uDFFF"]])) - ]) - ])); -test("[X\\u{DC38}Y]", unicode_flags, - Disjunction([ - CharacterClass([ - ["X", "X"], - ["Y", "Y"] - ]), - Alternative([ - Assertion("NOT_AFTER_LEAD_SURROGATE"), - CharacterClass([ - ["\uDC38", "\uDC38"] - ]) - ]) - ])); - -// Invalid - -test("[\\u]", no_unicode_flags, - CharacterClass([ - ["u", "u"] - ])); - -test("[\\uG]", no_unicode_flags, - CharacterClass([ - ["u", "u"], - ["G", "G"] - ])); - -test("[\\uD83]", no_unicode_flags, - CharacterClass([ - ["u", "u"], - ["D", "D"], - ["8", "8"], - ["3", "3"] - ])); - -test("[\\uD83G]", no_unicode_flags, - CharacterClass([ - ["u", "u"], - ["D", "D"], - ["8", "8"], - ["3", "3"], - ["G", "G"] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Disjunction.js b/js/src/jit-test/tests/regexp_parse/Disjunction.js deleted file mode 100644 index fec0574767490..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Disjunction.js +++ /dev/null @@ -1,39 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("a|\u3042", all_flags, - Disjunction([ - Atom("a"), - Atom("\u3042") - ])); - -test("a|\u3042|abc", all_flags, - Disjunction([ - Atom("a"), - Atom("\u3042"), - Atom("abc") - ])); - -test("|", all_flags, - Disjunction([ - Empty(), - Empty() - ])); - -test("||", all_flags, - Disjunction([ - Empty(), - Empty(), - Empty() - ])); - -test("abc|", all_flags, - Disjunction([ - Atom("abc"), - Empty() - ])); - -test("|abc", all_flags, - Disjunction([ - Empty(), - Atom("abc") - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Empty.js b/js/src/jit-test/tests/regexp_parse/Empty.js deleted file mode 100644 index 6e9c1e9417b50..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Empty.js +++ /dev/null @@ -1,4 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("", all_flags, - Empty()); diff --git a/js/src/jit-test/tests/regexp_parse/Everything.js b/js/src/jit-test/tests/regexp_parse/Everything.js deleted file mode 100644 index 988c0e8c58c02..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Everything.js +++ /dev/null @@ -1,18 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix(".", no_unicode_flags, - CharacterClass([ - ["\u0000", "\u0009"], - ["\u000b", "\u000c"], - ["\u000e", "\u2027"], - ["\u202A", "\uFFFF"] - ])); - -test_mix(".", unicode_flags, - AllSurrogateAndCharacterClass([ - ["\u0000", "\u0009"], - ["\u000b", "\u000c"], - ["\u000e", "\u2027"], - ["\u202A", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Group.js b/js/src/jit-test/tests/regexp_parse/Group.js deleted file mode 100644 index 0ba951505ecb9..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Group.js +++ /dev/null @@ -1,12 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test("(?:)", all_flags, - Empty()); -test("(?:a)", all_flags, - Atom("a")); -test("X(?:a)Y", all_flags, - Text([ - Atom("X"), - Atom("a"), - Atom("Y") - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Lookahead.js b/js/src/jit-test/tests/regexp_parse/Lookahead.js deleted file mode 100644 index df471eb42d7a2..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Lookahead.js +++ /dev/null @@ -1,28 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("(?=abc)", all_flags, - Lookahead(Atom("abc"))); - -test_mix("(?!abc)", all_flags, - NegativeLookahead(Atom("abc"))); - -test_mix("(?=abc)+", no_unicode_flags, - Lookahead(Atom("abc"))); - -// Lookahead becomes Empty because max_match of Lookahead is 0 and the min vaue -// of Quantifier is also 0. -test("(?=abc)*", no_unicode_flags, - Empty()); -test("X(?=abc)*Y", no_unicode_flags, - Alternative([ - Atom("X"), - Atom("Y"), - ])); - -test("(?=abc)?", no_unicode_flags, - Empty()); -test("X(?=abc)?Y", no_unicode_flags, - Alternative([ - Atom("X"), - Atom("Y"), - ])); diff --git a/js/src/jit-test/tests/regexp_parse/MatchOnly.js b/js/src/jit-test/tests/regexp_parse/MatchOnly.js deleted file mode 100644 index ea3b3dce2122f..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/MatchOnly.js +++ /dev/null @@ -1,32 +0,0 @@ -load(libdir + "regexp_parse.js"); - -// Leading and trailing .* are ignored if match_only==true. - -test_match_only(".*abc", all_flags, - Atom("abc")); -test_match_only("abc.*", all_flags, - Atom("abc")); - -test_match_only(".*?abc", no_unicode_flags, - Alternative([ - Quantifier(0, kInfinity, "NON_GREEDY", - CharacterClass([ - ["\u0000", "\u0009"], - ["\u000b", "\u000c"], - ["\u000e", "\u2027"], - ["\u202A", "\uFFFF"] - ])), - Atom("abc") - ])); -test_match_only(".*?abc", unicode_flags, - Alternative([ - Quantifier(0, kInfinity, "NON_GREEDY", - AllSurrogateAndCharacterClass([ - ["\u0000", "\u0009"], - ["\u000b", "\u000c"], - ["\u000e", "\u2027"], - ["\u202A", "\uD7FF"], - ["\uE000", "\uFFFF"] - ])), - Atom("abc") - ])); diff --git a/js/src/jit-test/tests/regexp_parse/Quantifier.js b/js/src/jit-test/tests/regexp_parse/Quantifier.js deleted file mode 100644 index 73f4184e1b68c..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/Quantifier.js +++ /dev/null @@ -1,55 +0,0 @@ -load(libdir + "regexp_parse.js"); - -test_mix("a*", all_flags, - Quantifier(0, kInfinity, "GREEDY", Atom("a"))); -test_mix("a*?", all_flags, - Quantifier(0, kInfinity, "NON_GREEDY", Atom("a"))); - -test_mix("a+", all_flags, - Quantifier(1, kInfinity, "GREEDY", Atom("a"))); -test_mix("a+?", all_flags, - Quantifier(1, kInfinity, "NON_GREEDY", Atom("a"))); - -test_mix("a?", all_flags, - Quantifier(0, 1, "GREEDY", Atom("a"))); -test_mix("a??", all_flags, - Quantifier(0, 1, "NON_GREEDY", Atom("a"))); - -test_mix("a{3}", all_flags, - Quantifier(3, 3, "GREEDY", Atom("a"))); -test_mix("a{3}?", all_flags, - Quantifier(3, 3, "NON_GREEDY", Atom("a"))); - -test_mix("a{3,}", all_flags, - Quantifier(3, kInfinity, "GREEDY", Atom("a"))); -test_mix("a{3,}?", all_flags, - Quantifier(3, kInfinity, "NON_GREEDY", Atom("a"))); - -test_mix("a{3,5}", all_flags, - Quantifier(3, 5, "GREEDY", Atom("a"))); -test_mix("a{3,5}?", all_flags, - Quantifier(3, 5, "NON_GREEDY", Atom("a"))); - -// Surrogate Pair and Quantifier - -test("\\uD83D\\uDC38+", no_unicode_flags, - Alternative([ - Atom("\uD83D"), - Quantifier(1, kInfinity, "GREEDY", Atom("\uDC38")) - ])); -test("\\uD83D\\uDC38+", unicode_flags, - Quantifier(1, kInfinity, "GREEDY", Atom("\uD83D\uDC38"))); - -// Invalid - -test_mix("a{", no_unicode_flags, - Atom("a{")); -test_mix("a{1", no_unicode_flags, - Atom("a{1")); -test_mix("a{1,", no_unicode_flags, - Atom("a{1,")); -test_mix("a{1,2", no_unicode_flags, - Atom("a{1,2")); - -test_mix("a{,", no_unicode_flags, - Atom("a{,")); diff --git a/js/src/jit-test/tests/regexp_parse/directives.txt b/js/src/jit-test/tests/regexp_parse/directives.txt deleted file mode 100644 index 93b6eaee604b6..0000000000000 --- a/js/src/jit-test/tests/regexp_parse/directives.txt +++ /dev/null @@ -1 +0,0 @@ -|jit-test| skip-if: typeof parseRegExp === 'undefined' diff --git a/js/src/jit/arm64/Assembler-arm64.h b/js/src/jit/arm64/Assembler-arm64.h index dc657b2c752a8..2f444c70f3e02 100644 --- a/js/src/jit/arm64/Assembler-arm64.h +++ b/js/src/jit/arm64/Assembler-arm64.h @@ -89,9 +89,6 @@ static constexpr Register PseudoStackPointer{Registers::x28}; static constexpr ARMRegister PseudoStackPointer64 = {Registers::x28, 64}; static constexpr ARMRegister PseudoStackPointer32 = {Registers::x28, 32}; -// StackPointer for use by irregexp. -static constexpr Register RegExpStackPointer = PseudoStackPointer; - static constexpr Register IntArgReg0{Registers::x0}; static constexpr Register IntArgReg1{Registers::x1}; static constexpr Register IntArgReg2{Registers::x2}; diff --git a/js/src/js.msg b/js/src/js.msg index 1be881edc3ec0..f6568dabc3051 100644 --- a/js/src/js.msg +++ b/js/src/js.msg @@ -548,7 +548,6 @@ MSG_DEF(JSMSG_UNDEFINED_CURRENCY, 0, JSEXN_TYPEERR, "undefined currency in MSG_DEF(JSMSG_UNDEFINED_UNIT, 0, JSEXN_TYPEERR, "undefined unit in NumberFormat() with unit style") // RegExp -MSG_DEF(JSMSG_BACK_REF_OUT_OF_RANGE, 0, JSEXN_SYNTAXERR, "back reference out of range in regular expression") MSG_DEF(JSMSG_BAD_CLASS_RANGE, 0, JSEXN_SYNTAXERR, "invalid range in character class") MSG_DEF(JSMSG_ESCAPE_AT_END_OF_REGEXP, 0, JSEXN_SYNTAXERR, "\\ at end of pattern") MSG_DEF(JSMSG_EXEC_NOT_OBJORNULL, 0, JSEXN_TYPEERR, "RegExp exec method should return object or null") @@ -561,7 +560,6 @@ MSG_DEF(JSMSG_NEWREGEXP_FLAGGED, 0, JSEXN_TYPEERR, "can't supply flags whe MSG_DEF(JSMSG_NOTHING_TO_REPEAT, 0, JSEXN_SYNTAXERR, "nothing to repeat") MSG_DEF(JSMSG_NUMBERS_OUT_OF_ORDER, 0, JSEXN_SYNTAXERR, "numbers out of order in {} quantifier.") MSG_DEF(JSMSG_RANGE_WITH_CLASS_ESCAPE, 0, JSEXN_SYNTAXERR, "character class escape cannot be used in class range in regular expression") -MSG_DEF(JSMSG_RAW_BRACE_IN_REGEXP, 0, JSEXN_SYNTAXERR, "raw brace is not allowed in regular expression with unicode flag") MSG_DEF(JSMSG_RAW_BRACKET_IN_REGEXP, 0, JSEXN_SYNTAXERR, "raw bracket is not allowed in regular expression with unicode flag") MSG_DEF(JSMSG_TOO_MANY_PARENS, 0, JSEXN_INTERNALERR, "too many parentheses in regular expression") MSG_DEF(JSMSG_UNICODE_OVERFLOW, 1, JSEXN_SYNTAXERR, "Unicode codepoint must not be greater than 0x10FFFF in {0}") diff --git a/js/src/moz.build b/js/src/moz.build index deb15d83abbe2..5e04efeadccc0 100755 --- a/js/src/moz.build +++ b/js/src/moz.build @@ -455,26 +455,14 @@ if CONFIG['MOZ_VTUNE']: '-Wno-stringop-overflow' ] -if not CONFIG['ENABLE_NEW_REGEXP']: - UNIFIED_SOURCES += [ - 'irregexp/NativeRegExpMacroAssembler.cpp', - 'irregexp/RegExpAST.cpp', - 'irregexp/RegExpCharacters.cpp', - 'irregexp/RegExpEngine.cpp', - 'irregexp/RegExpInterpreter.cpp', - 'irregexp/RegExpMacroAssembler.cpp', - 'irregexp/RegExpParser.cpp', - 'irregexp/RegExpStack.cpp', - ] - DIRS += [ 'build', 'debugger', 'frontend', 'gc', 'jit', - 'wasm', -] + (['new-regexp'] if CONFIG['ENABLE_NEW_REGEXP'] else []) + 'new-regexp', + 'wasm'] if CONFIG['JS_JITSPEW']: DIRS += ['zydis'] diff --git a/js/src/vm/RegExpObject.h b/js/src/vm/RegExpObject.h index ec596487cb494..2da96fc28a569 100644 --- a/js/src/vm/RegExpObject.h +++ b/js/src/vm/RegExpObject.h @@ -45,23 +45,6 @@ namespace frontend { class TokenStreamAnyChars; } -// Temporary definitions until irregexp is updated from upstream. -namespace irregexp { -constexpr size_t JS_HOWMANY(size_t x, size_t y) { return (x + y - 1) / y; } - -constexpr size_t JS_ROUNDUP(size_t x, size_t y) { return JS_HOWMANY(x, y) * y; } - -template <class T> -static constexpr inline T Min(T t1, T t2) { - return t1 < t2 ? t1 : t2; -} - -template <class T> -static constexpr inline T Max(T t1, T t2) { - return t1 > t2 ? t1 : t2; -} -} // namespace irregexp - extern RegExpObject* RegExpAlloc(JSContext* cx, NewObjectKind newKind, HandleObject proto = nullptr); -- GitLab