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
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
Moonchild
bf19c2087b
Update timezone data to 2022e
2022-11-10 14:55:09 +08:00
FranklinDM
1a55f18324
Issue #58 - Remove leftover rust build files from /js
2022-10-27 08:58:50 +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
Moonchild
1868e88741
Fix some debug assertions.
...
refactored code porting in assertions causing debug build failures.
2022-10-06 10:26:38 +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
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
Moonchild
b15c6109e9
Revert "Issue #1676 - Part 13: Split perf sources out of js/src/moz.build"
...
This reverts commit 383bc182e3a3fe53cf79a51bc36c6218334d93b5.
2022-09-07 10:59:46 +08:00
Moonchild
29fc6d519a
Revert "Issue #1676 - Part 14: Split proxy sources out of js/src/moz.build"
...
This reverts commit 6f76f1cb362b98fc617c5c0735cdacee64103e89.
2022-09-07 10:41:56 +08:00
Moonchild
14da6dc66d
Revert "Issue #1676 - Part 15: Split threading sources out of js/src/moz.build"
...
This reverts commit 2f50f543a245a559a277505dfa6906f1888ef0d9.
2022-09-07 10:41:43 +08:00
Moonchild
7a45d4dcf9
Revert "Issue #1676 - Part 16: Split WASM sources out of js/src/moz.build"
...
This reverts commit 1abc696f87d175ab967e0e86fdf375255c43e98d.
2022-09-07 10:41:29 +08:00
Moonchild
d83377b8ce
Revert "Issue #1676 - Part 17: Put remaining source files which have debug code ifdef'd behind MOZ_DEBUG"
...
This reverts commit ff355fe9ac5327a62cdbd05f99dff9febe5de5df.
2022-09-07 10:41:18 +08:00
Moonchild
0e7a3f2144
Revert "Issue #1676 - Part 18: Move and separate top level sources from vm sources in js/src/moz.build"
...
This reverts commit 59511eb8dddac5556c4aa72d6d7fe1a2c3dc3972.
2022-09-07 10:40:59 +08:00
Moonchild
b03603e73e
Revert "Issue #1676 - Part 19: Split ctypes sources out of js/src/moz.build"
...
This reverts commit cdf46e803b2fc1ab0787138890dfff67030e6516.
2022-09-07 10:40:47 +08:00
Moonchild
23a10c68fa
Revert "Issue #1676 - Part 20: Split vtune sources out of js/src/moz.build"
...
This reverts commit fd1b2dc2b14ded708f8eb62a55109c03356c6b26.
2022-09-07 10:40:33 +08:00
Moonchild
7bb8046c17
Revert "Issue #1676 - Follow-up: Put js/src (including vm), jit, and wasm back into unified sources."
...
This reverts commit a8a397fbceb78d2338e214e583be4f02797637d1.
2022-09-07 10:40:18 +08:00
Moonchild
5dfded811d
Issue #80 - reinstated unified building for some large chunks of our code.
...
This should reduce compile complexity saving time and reducing linker stress.
2022-09-07 10:36:23 +08:00
Moonchild
66424272f3
Issue #1999 - Switch to the unorm2 API for String.normalize()
...
Resolves #1999
2022-09-07 10:26:05 +08:00
Moonchild
59cf6bd808
Issue #1996 - Implement at() method on built-in indexables.
...
Resolves #1996
2022-09-01 10:19:41 +08:00
Moonchild
aedbffe910
Issue #1956 - Fix C++ code standard conformance issue in StoreBuffer.h
2022-09-01 10:18:54 +08:00
Job Bautista
3e6cbc6af3
Issue #1969 - Implement Intl.RelativeTimeFormat.
...
Based on Mozilla bugs 1270140, 1504656, 1483545, and 1504334.
Took note of Mozilla bug 1379222 which changed GetPrototypeFromCallableConstructor
to GetPrototypeFromBuiltinConstructor.
There are many other changes I did myself since the initial implementation by
Mozilla wouldn't work with this codebase.
2022-07-30 08:43:43 +08:00
Job Bautista
c090dd7ce8
Issue #1971 - Part 5: Update Spidermonkey for Unicode 11.
...
I forgot to do this while working on issue #326 .
2022-07-30 08:43:43 +08:00
Job Bautista
1e69214382
Issue #1971 - Part 2: Update ICU source to 63.2.
2022-07-30 08:43:41 +08:00
Moonchild
065e8bc77b
Issue #1805 - Follow-up: Include the same headers for Solaris as well to future-proof gcc versions.
2022-07-26 22:27:50 +08:00
Moonchild
3571cc8de0
Issue #1805 - Follow-up: provide for Linux builds using rlimit and min/max.
2022-07-26 22:27:12 +08:00
Moonchild
5ed7e7d56d
Issue #1805 - Improve stack size limits for all targets.
...
This allows us to use a greater rendering depth for exceedingly-deep DOM trees
in layout, better matching what mainstream browsers are capable of. Note that
for 32-bit Windows the stack size MUST be set to larger than the default or Bad
Things Will Happen™ - we use 1.5 MB for this as a carefully-tuned value.
This needs to be capped specifically for JS use because some JavaScript
obfuscators deliberately trigger stack overflows and would lock up the browser
otherwise as long as there's still stack space to abuse. For web compatibility
we therefore limit this to 2MB in JS only (3x for ASAN) while still allowing
a greater depth for the layout engine.
2022-07-26 22:26:38 +08:00
Martok
887e6d0ab3
Issue #1952 - m-c 1440468: Proxied functions can't be passed to Function.prototype.toString.call()
2022-07-03 06:55:36 +08:00
Martok
85af7f6e80
Issue #1952 - m-c 1383775: Clean up function toString/toSource code, remove remnants of source decompiler
2022-07-03 06:55:19 +08:00
Martok
1e753237e5
Issue #1952 - m-c 1380962/2: Remove unnecessary lambda function in FunctionToString
2022-07-03 06:54:52 +08:00