Commit graph

605 commits

Author SHA1 Message Date
meatloaf
00a689060f Issue #1726 - Implement String.replaceAll()
This also implements IsRegExp, as this demands it.
Ported from https://bugzilla.mozilla.org/show_bug.cgi?id=1540021
2021-02-05 07:35:06 +08:00
Moonchild
0989dc6d2d [js] Remove unused promise selfhosting functions.
These are leftovers from when promises were fully self-hosted and could cause
confusion if left in place.
2021-02-03 10:04:44 +08:00
Moonchild
5d2fea0dac [js] Add AutoEnterOOMUnsafeRegion to JS_TransplantObject.
Transplanting objects is inherently oom-unsafe, so add
`AutoEnterOOMUnsafeRegion` to `JS_TransplantObject()` and annotate crashes
accordingly if they do happen.
2021-01-27 21:02:55 +08:00
Matt A. Tobin
325e57e916 Issue #1624 - Fix slot access intrinsics for objects with > 16 reserved slots
Also flips ion inlining pref back on
2021-01-14 22:19:19 +08:00
Moonchild
aa38ed97fa Issue #1701 - Implement Intl.PluralRules API 2020-12-24 09:36:34 +08:00
Moonchild
fe5097e7ed Nuke erroneously added vim line. 2020-12-04 08:52:50 +08:00
Moonchild
ec0865128b Issue #1624 - Make ion inlining optimizations a pref.
This also adds it to JS_SetGlobalJitCompilerOption()
2020-12-04 08:52:49 +08:00
Moonchild
7996b9e2cf Issue #1624 - Globally disable inlining optimizations in the JS JIT compiler. 2020-12-02 09:57:31 +08:00
Matt A. Tobin
50684945ba Issue #1676 - Follow-up: Put js/src (including vm), jit, and wasm back into unified sources.
Function template inflation in intermediate code. The linker problem we hit with the corrupt file was because there were too many function descriptors and relation in the .lib
2020-11-27 10:02:14 +08:00
Moonchild
87982cb409 Issue #1679 - Part 2: Some small issues to address buildability.
- Explicitly |this| the Asserts in Cell.as<>
- Unified deprot in regexp-error.h
- Convert RegExpShared* inner() to a reinterpret_cast because for SOME reason
  .as<> no longer works after the reimport (which is a static cast)
2020-11-13 09:15:22 +08:00
Matt A. Tobin
dbeab6d3af Issue #1679 - Part 1: First pass account for some of the refactoring differences in regexp-shim.h
This is the patch Moonchild committed on the aborted branch before the plan was revised.
2020-11-13 09:15:20 +08:00
Matt A. Tobin
d646d4403f Bug 1328948 - Add is(), as() to Cell.
Tag #1679
2020-11-13 09:15:16 +08:00
Matt A. Tobin
0789f637d1 Issue #1677 - Part 6: Implement NativeRegExpMacroAssembler for new regexp import based on irregexp/NativeRegExpMacroAssembler.cpp 2020-11-13 09:15:13 +08:00
Matt A. Tobin
e3a3e92316 Issue #1677 - Part 5: "Simplify" regexp re-import process (and re-import from later revision)
I am going on record to say Mozilla are utter fucking assholes for pulling this as part of their progression.
2020-11-13 09:15:11 +08:00
Matt A. Tobin
12c7f5df33 Issue #1677 - Part 4: Implement shim for regexp 2020-11-13 09:15:10 +08:00
Matt A. Tobin
fdb560b34d Issue #1677 - Part 3: Create shim definitions for V8-specific code in new regexp implementation 2020-11-13 09:15:08 +08:00
Matt A. Tobin
a3bc68b4e9 Issue #1677 - Part 2: Add build files 2020-11-06 09:43:55 +08:00
Matt A. Tobin
6dc6ff456e Issue #1677 - Part 1: Import new V8 regexp code with Mozilla's header modifications 2020-11-06 09:43:54 +08:00
Matt A. Tobin
5f32ee0c71 Issue #1676 - Part 21: Use js-cxxflags.mozbuild in testing code and js shell 2020-11-06 09:43:34 +08:00
Matt A. Tobin
b38a250130 Issue #1676 - Part 20: Split vtune sources out of js/src/moz.build 2020-11-06 09:43:32 +08:00
Matt A. Tobin
6da35ffb78 Issue #1676 - Part 19: Split ctypes sources out of js/src/moz.build 2020-11-06 09:43:31 +08:00
Matt A. Tobin
66308991b1 Issue #1676 - Part 18: Move and separate top level sources from vm sources in js/src/moz.build 2020-11-06 09:43:29 +08:00
Matt A. Tobin
fc371224e1 Issue #1676 - Part 17: Put remaining source files which have debug code ifdef'd behind MOZ_DEBUG 2020-11-06 09:43:28 +08:00
Matt A. Tobin
6fa51e7392 Issue #1676 - Part 16: Split WASM sources out of js/src/moz.build
Also puts WasmBinaryIterator.cpp which is debug code ifdef'd behind MOZ_DEBUG
2020-11-06 09:43:27 +08:00
Matt A. Tobin
81d575eff7 Issue #1676 - Part 15: Split threading sources out of js/src/moz.build 2020-11-06 09:43:25 +08:00
Matt A. Tobin
e6a6e0e7fd Issue #1676 - Part 14: Split proxy sources out of js/src/moz.build 2020-11-06 09:43:24 +08:00
Matt A. Tobin
155a0fbe41 Issue #1676 - Part 13: Split perf sources out of js/src/moz.build 2020-11-06 09:43:23 +08:00
Matt A. Tobin
70db4edd43 Issue #1676 - Part 12: Split jit sources out of js/src/moz.build 2020-11-06 09:43:21 +08:00
Matt A. Tobin
96f685e827 Issue #1676 - Part 11: Split irregexp sources out of js/src/moz.build 2020-11-06 09:43:20 +08:00
Matt A. Tobin
25a9cb15e8 Issue #1676 - Part 10: Split gc sources out of js/src/moz.build 2020-11-06 09:43:19 +08:00
Matt A. Tobin
c509fb2251 Issue #1676 - Part 9: Move DIRS down in js/src/moz.build 2020-11-06 09:43:17 +08:00
Matt A. Tobin
69b861a491 Issue #1676 - Part 8: Fix up include for selfhosted.out.h 2020-11-06 09:43:16 +08:00
Matt A. Tobin
f7a8fe807e Issue #1676 - Part 7: Split frontend sources out of js/src/moz.build 2020-11-06 09:43:14 +08:00
Matt A. Tobin
c25769b145 Issue #1676 - Part 6: Split ds sources out of js/src/moz.build 2020-11-06 09:43:13 +08:00
Matt A. Tobin
1f772961f7 Issue #1676 - Part 5: Split devtools sources out of js/src/moz.build 2020-11-06 09:43:12 +08:00
Matt A. Tobin
6c5f461881 Issue #1676 - Part 4: Split builtin sources out of js/src/moz.build 2020-11-06 09:43:10 +08:00
Matt A. Tobin
bf147b821c Issue #80 - De-unify js/src
Three debug sources are producing link warnings and will be solved as Issue #1676 progresses.

This does not include JS Testing sources.
Specifically: js/src/gdb or js/src/jsapi-tests
2020-11-06 09:43:09 +08:00
Matt A. Tobin
55c2ff2df2 Issue #1676 - Part 3: Split DEFINES out of js/src/moz.build 2020-11-06 09:43:08 +08:00
Matt A. Tobin
209c7f2305 Issue #1676 - Part 2: Split CFLAGS and CXXFLAGS directives out of js/src/moz.build 2020-11-06 09:43:06 +08:00
Matt A. Tobin
b69cf124dc Issue #1676 - Part 1: Split MozTesting directives out of js/src/moz.build 2020-11-06 09:43:05 +08:00
Moonchild
3e118e4948 [devtools] More gracefully (than a crash) handle stack capture failures. 2020-11-06 09:42:40 +08:00
Moonchild
9c59990883 Issue #1656 - Part 10: Manual cleanup. 2020-09-25 22:07:01 +08:00
Moonchild
9305760571 Issue #1656 - Part 9: Single-line-comment style. 2020-09-25 22:07:00 +08:00
Moonchild
d5919942ff Issue #1656 - Part 8: Devtools and misc. 2020-09-25 22:06:55 +08:00
Moonchild
dabd32f955 Issue #1656 - Part 7: Nuke vim config lines in JS 2020-09-25 22:04:24 +08:00
Moonchild
0cd673d720 Issue #1656 - Part 6: Clean up the build files 2020-09-25 22:04:23 +08:00
Moonchild
30df895eb2 Issue #1656 - Part 3: Nuke more vim config lines in the tree.
Another S&R run with some smarter matching.
2020-09-25 22:04:17 +08:00
Moonchild
8c395520d9 Issue #1656 - Part 1: Nuke most vim config lines in the tree.
Since these are just interpreted comments, there's 0 impact on actual code.
This removes all lines that match /* vim: set(.*)tw=80: */ with S&R -- there are
a few others scattered around which will be removed manually in a second part.
2020-09-25 22:04:12 +08:00
Moonchild
ef11a4d7e8 Issue #618 - Clear the module map when changing a Document's global and add
release build assertions for mismatching compartments.
2020-09-10 21:07:51 +08:00
Moonchild
065ef47e65 Issue #1639 - Implement object.fromEntries()
Adds a self-hosted implementation of this map->object conversion.
This resolves #1639.
2020-09-10 21:06:50 +08:00