Commit graph

1,540 commits

Author SHA1 Message Date
Martok
7d2b83fafc No issue - reformat GlobalObject::skipDeselectedConstructor 2023-01-26 11:37:54 +08:00
Martok
2db0386e65 No issue - implement js::NativeDefineDataProperty helper 2023-01-26 11:37:43 +08:00
roytam1
cad030d6cc Merge remote-tracking branch 'origin/tracking' into custom 2023-01-19 09:43:10 +08:00
Moonchild
549389d327 No issue - factor out some frame iterator helper functions. 2023-01-19 09:41:27 +08:00
roytam1
12b3c5e5fe Merge remote-tracking branch 'origin/tracking' into custom 2023-01-13 13:29:29 +08:00
Job Bautista
ee541a5330 Issue #80 - Re-unify some more missed sources in js/src 2023-01-13 13:29:05 +08:00
roytam1
a48debaabe Merge remote-tracking branch 'origin/tracking' into custom 2023-01-10 08:22:51 +08:00
FranklinDM
2f7f622cd4 No issue - Fix invalid neq check on assert in RegExpParser 2023-01-10 07:41:54 +08:00
roytam1
7ecc55be25 Merge remote-tracking branch 'origin/tracking' into custom 2023-01-06 20:37:26 +08:00
Martok
86782b8f39 Issue #1382 - RegExpShared::groupsTemplate_ cannot be a GCPtr since RegExpShared is managed by C++ 2023-01-06 20:36:47 +08:00
roytam1
120ac6d556 Merge remote-tracking branch 'origin/tracking' into custom 2022-12-30 09:29:56 +08:00
Job Bautista
507ed86ef5 Issue #80 - Fix deprot in js/src/irregexp.
Regression seems to have been introduced by PR #2060? This tree didn't fail
 building before we've reinstated unified building for js/src.
Found while building js/src de-unified.
2022-12-30 09:23:06 +08:00
Job Bautista
5c505b86ca No issue - Fallthrough attributes must be terminated with semicolon.
This also fixes building with Clang 15 on Linux.
2022-12-30 09:21:30 +08:00
FranklinDM
558b83975c Issue #2065 - Part 3: Process install manifests with --track in the recursive make backend
This excludes parts that remove support for building the Mozilla SDK.
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1390916
2022-12-30 09:20:05 +08:00
Martok
904ddfa28f Follow-up #2060 - Correctly handle \k in non-unicode expressions 2022-12-30 09:08:53 +08:00
roytam1
5e9f3d0667 Merge remote-tracking branch 'origin/tracking' into custom 2022-12-24 08:14:57 +08:00
Martok
81a8ac427a Issue #1286 - Parse unicode property escapes and property sequences
In addition to upstream, we also allow RGI-named sequences since they're used in the wild.
2022-12-24 08:09:55 +08:00
Martok
d2e0e199b7 No issue - Refactor CharacterRange + Unicode handling into module for maintainability
Collects code from RegExpParser and RegExpEngine (regexp-compiler-tonode.cc)
Simplify parsing AtomEscape/CharacterClassEscape
2022-12-24 08:09:52 +08:00
Martok
6eead2deb4 Issue #1285 - Implement named capturing groups for replacing 2022-12-24 08:09:49 +08:00
Martok
e81a8d866d Issue #1285 - implement named capturing groups and named backrefs
- RegExpParser collects seen groups in named_captures_.
- After irregexp::ParsePattern has finished, RegExpParser::StoreNamedCaptureMap translates
  the parser data to RegExpCompileData.capture_name/index
- RegExpShared::initializeNamedCaptures takes these and builds a PlainObject map which
  is kept with the compiled expression
This is done because irregexp doesn't have access to the JS context and so can't allocate
any JSValues itself.
- for each match result, this map is used to build PlainObjects of name->match/undefined
  (extremely simplified from upstream at the expense of some perf)

IonMonkey switches to non-masm code path for expressions with named groups.
2022-12-24 08:09:39 +08:00
Martok
05a8a5271c No issue - Refactor parsing of unicode escapes to be more general 2022-12-24 08:09:37 +08:00
Martok
952f2273b6 No issue - Fix VectorMatchPairs allocating more memory than required 2022-12-24 08:09:33 +08:00
Martok
199ff12ba8 No issue - Flag to parse 'v' flag as 'u' for automated tests, disabled by default 2022-12-24 08:09:25 +08:00
Martok
85cb46096a No issue - refactor base classes for easier access
- move InfallibleVector into its own header, together with common typedefs
- refactor CapturesVector
2022-12-24 08:09:22 +08:00
Martok
5555a72d8e Issue #2056 - Fix handling of captures in lookbehinds
- Port unification of CheckNotBackReference*
- Port LoadCurrentCharacter
- Make RegExpMacroAssembler::CheckAtStart understand cp_offset
- Replace magic numbers in ChoiceNode::Emit, Trace::PerformDeferredActions
- CheckBacktrackStackLimit
- Allow backrefs to resist recursion
2022-12-24 08:09:18 +08:00
Moonchild
4db6fa8360 Issue #1279 - Implement regular expressions lookbehind (v3)
Based on d10e8a5b with the addition of chromium issue 570241.
2022-12-24 08:09:04 +08:00
roytam1
f9dc0e6d15 Merge remote-tracking branch 'origin/tracking' into custom 2022-11-10 14:55:46 +08:00
Moonchild
bf19c2087b Update timezone data to 2022e 2022-11-10 14:55:09 +08:00
roytam1
fe4859b2c1 Revert "Issue #1279 - Implement regular expressions lookbehind (v2)"
This reverts commit 2f0896ab31.
rev 2f0896ab cause crash when visiting https://nl.hardware.info/nieuw so
a revert is needed.
2022-10-30 20:48:29 +08:00
roytam1
5f18cf3bed Merge remote-tracking branch 'origin/tracking' into custom 2022-10-27 09:04:51 +08:00
FranklinDM
1a55f18324 Issue #58 - Remove leftover rust build files from /js 2022-10-27 08:58:50 +08:00
roytam1
221a4433e3 Merge remote-tracking branch 'origin/tracking' into custom 2022-10-13 10:40:39 +08:00
Moonchild
2f0896ab31 Issue #1279 - Implement regular expressions lookbehind (v2)
Because of some additional changes in the JS engine in the meantime,
this implementation should work and not crash due to slot allocation.
2022-10-13 10:40:14 +08:00
Moonchild
d32162089d Issue #2016 - Remove non-functional V8 regex import 2022-10-12 17:21:14 +08:00
roytam1
15458344bf Merge remote-tracking branch 'origin/tracking' into custom 2022-10-06 10:30:55 +08:00
Moonchild
1868e88741 Fix some debug assertions.
refactored code porting in assertions causing debug build failures.
2022-10-06 10:26:38 +08:00
roytam1
1e93ef4c00 Merge remote-tracking branch 'origin/tracking' into custom 2022-09-19 16:22:22 +08:00
Moonchild
05389eb41f Issue #2008 - Implement missing s parameter parsing and align case with spec.
This does 2 things.
First, it adds parsing of the 's' parameter parsing to DOM object construction of regexes
Second, it corrects the DOM property to be `dotAll` instead of `dotall`

For consistency's sake, all function names and calls were renamed with the finalized casing.

This resolves #2008
2022-09-19 16:20:22 +08:00
roytam1
591552c5bb partly import changes from tenfourfox:
- #651: M1767365+backbugs M1757604 M1771774 M1776658 (bc6daa0ae)
2022-09-19 16:18:37 +08:00
roytam1
866ded0b0a Merge remote-tracking branch 'origin/tracking' into custom 2022-09-07 11:03:19 +08:00
Moonchild
4bdd6dd93c Issue #80 - Re-unify building of /js/src 2022-09-07 11:02:02 +08:00
Moonchild
c86c612bb5 Revert "Issue #1676 - Part 4: Split builtin sources out of js/src/moz.build" 2022-09-07 11:01:51 +08:00
Moonchild
1c6fb7fcaa Revert "Issue #1676 - Part 5: Split devtools sources out of js/src/moz.build"
This reverts commit 24b835f0a92881903c6e5f0cebb7ffa93c5e9d05.
2022-09-07 11:01:37 +08:00
Moonchild
62b5ce90af Revert "Issue #1676 - Part 6: Split ds sources out of js/src/moz.build"
This reverts commit eedfa63a1d244426df38be6d72ee35422a5d9d82.
2022-09-07 11:01:23 +08:00
Moonchild
cd3c43e614 Revert "Issue #1676 - Part 7: Split frontend sources out of js/src/moz.build"
This reverts commit 1396383aeed414c23b3dce639932987000412be0.
2022-09-07 11:01:10 +08:00
Moonchild
5f23cd3017 Revert "Issue #1676 - Part 8: Fix up include for selfhosted.out.h"
This reverts commit bc450dab41695f85290f83c53c2c6914c1710883.
2022-09-07 11:00:53 +08:00
Moonchild
28392d5dca Revert "Issue #1676 - Part 9: Move DIRS down in js/src/moz.build" 2022-09-07 11:00:39 +08:00
Moonchild
8da86488ea Revert "Issue #1676 - Part 10: Split gc sources out of js/src/moz.build"
This reverts commit 65eac50e2dd9d2c4773a927aa7909eff13bc121c.
2022-09-07 11:00:25 +08:00
Moonchild
86b12c766d Revert "Issue #1676 - Part 11: Split irregexp sources out of js/src/moz.build"
This reverts commit 3d9bf5d7a32eb7076ad4e1782ca677981efff150.
2022-09-07 11:00:13 +08:00
Moonchild
f4c5ef005c Revert "Issue #1676 - Part 12: Split jit sources out of js/src/moz.build"
This reverts commit 95e057e737e3edcb270c256000b893365e1d9a9b.
2022-09-07 11:00:00 +08:00