Граф коммитов

71690 Коммитов

Автор SHA1 Сообщение Дата
Karan Sapolia ed6ee44baf Bug 1549263 - Rename sliceTimeBudget() and related symbols to include units. r=pbone
Differential Revision: https://phabricator.services.mozilla.com/D35588

--HG--
extra : moz-landing-system : lando
2019-06-28 12:56:08 +00:00
Mike Hommey f704e82913 Bug 1562063 - Stop including Char16.h everywhere in js/. r=jwalden
Same as bug 1426898, but for js.

Differential Revision: https://phabricator.services.mozilla.com/D36259

--HG--
extra : moz-landing-system : lando
2019-06-27 22:33:09 +00:00
Ashley Hauck 267711591c Bug 1561381 - Remove TODO(khyperia) from the frontend. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D35837

--HG--
extra : moz-landing-system : lando
2019-06-27 20:57:48 +00:00
Jason Orendorff 5b135c7bdb Bug 1555464 - Part 2: Enable fields by default in the JS shell. r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D34639

--HG--
extra : moz-landing-system : lando
2019-06-27 14:57:44 +00:00
Jim Blandy 979f0b33e0 Bug 1557343: Gather the code to manage the association between DebuggerFrames and AbstractGeneratorObjects. r=jorendorff
Merge Debugger::addGeneratorFrame into DebuggerFrame::setGenerator, and expand
the role of clearGenerator to fully undo the effect of setGenerator.

The association between a Debugger.Frame referring to a generator or async call
and the underlying generator object must be recorded in five separate places, as
a transaction: either all or present, or none are present. To ensure this is
true, this patch places sole responsibility for emplacing all those relations in
a single function (setGenerator), with another function to tear down those
relations (clearGenerator) as its inverse/antidote/complement/antagonist (in the
anatomical sense)/what-have-you.

Actually, when a Debugger.Frame is GC'd, we cannot reliably undo some of the
connections, and in fact can let the GC take care of those for us, so the
tear-down function clearGenerator is split into two overloads, one which is
suitable for use from a finalizer and the other which takes care of the entire
task.

Differential Revision: https://phabricator.services.mozilla.com/D35607

--HG--
extra : moz-landing-system : lando
2019-06-27 06:18:55 +00:00
Jim Blandy 256d0b172d Bug 1557343: Replace the sole use of DebuggerWeakMap::removeIf with its definition. r=jorendorff
Later in this patch series, we will be gathering up all the code to manage the
association between DebuggerFrame and AbstractGeneratorFrame objects into a pair
of functions, one to establish a relation and the other to tear it down. The
removeif method combines iteration and entry removal, but we would rather have
entry removal live next to the code that tears down the rest of the association.

In preparation for that, this changeset replaces the sole use of removeIf with
its (not very large) definition, so that the entry removal can be more readily
moved into another function.

Differential Revision: https://phabricator.services.mozilla.com/D35606

--HG--
extra : moz-landing-system : lando
2019-06-27 06:18:47 +00:00
Jim Blandy 19b16f67aa Bug 1557343: Move AutoRealm outside addGeneratorFrame. r=jorendorff
Without this patch, addGeneratorFrame may be called from any realm, and enters
the debugger's realm to call DebuggerFrame::setGenerator. However, we would like
to merge addGeneratorFrame and setGenerator, and call the combined from various
points which are already in the debugger's realm, so it would be a little nicer
to simply make the function assume it is called from the debugger's realm.

Differential Revision: https://phabricator.services.mozilla.com/D35605

--HG--
extra : moz-landing-system : lando
2019-06-27 06:18:38 +00:00
Nathan Froyd 03e51146b9 Bug 1561088 - emit unwind information for libffi aarch64/win assembly; r=dmajor,gsvelto
The hand-written assembly for libffi on aarch64/windows doesn't emit
unwind information.  If we ever tried to unwind through these functions,
they'd look like leaf functions, which is decidedly not true and would
cause great pain.

For whatever reason, the original aarch64 libffi functions used
x21/x22/x23/x24 as their (callee-saved) scratch registers.  This
convention works on windows as well, but the unwind information on
windows mandates that we start saving callee-saved registers starting
from x19, rather than x21.  Rather than rewriting the assembly to use
x19/x20 instead of x21/x22, which would be a large change, we chose
instead to simply save/restore extra registers in the prolog/epilog.
This change does make the stack frame sizes slightly bigger, but an
extra 16 bytes in libffi stack frames should not matter.

The `-TC` change is necessary to make the compiler play nicely with .asm
file suffixes.

Differential Revision: https://phabricator.services.mozilla.com/D35714

--HG--
extra : moz-landing-system : lando
2019-06-27 13:36:48 +00:00
Andy Wingo 0a3aa2702a Bug 1557655 - Fix size_t/uint64_t mismatch for StringToBigInt on 32-bit r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D35022

--HG--
extra : moz-landing-system : lando
2019-06-25 17:36:07 +00:00
Andy Wingo 1694e85a41 Bug 1556220 - Don't add CacheIR entries for typed bigint array access r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D33459

--HG--
extra : moz-landing-system : lando
2019-06-25 17:37:08 +00:00
Gurzau Raul ef6c54db66 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-27 01:01:13 +03:00
Gurzau Raul 24d0e8e2ba Merge inbound to mozilla-central. a=merge 2019-06-27 00:54:09 +03:00
Ted Campbell 1a7e616897 Bug 1471062 - Avoid storing SharedScriptData metadata for empty arrays. r=jandem
If optional arrays of SharedScriptData are empty, avoid storing their
offset in order to save memory. This is done by deduplicating offsets
and storing this variably-sized set of offsets as a trailing array. A
uint32_t for each non-empty array. These offsets are analogous to the
array length we would naively consider storing but with careful encoding
for performance.

Differential Revision: https://phabricator.services.mozilla.com/D34791

--HG--
extra : moz-landing-system : lando
2019-06-26 21:07:00 +00:00
Ted Campbell 83d19349e9 Bug 1471062 - Add SharedScriptData::flags. r=jandem
Add a flag into the byte array area. It is inserted before code() so it
will be at a fixed offset once atoms are removed. This will be used to
store flags about optional trailing arrays.

Differential Revision: https://phabricator.services.mozilla.com/D34789

--HG--
extra : moz-landing-system : lando
2019-06-26 21:05:19 +00:00
Ted Campbell e3491853b7 Bug 1471062 - Remove the PrivateScriptData::PackedSpan mechanism. r=jandem
Now that PrivateScriptData contains a single array, the PackedSpan
mechanism for packing multiple trailing arrays can be removed.

Differential Revision: https://phabricator.services.mozilla.com/D35817

--HG--
extra : moz-landing-system : lando
2019-06-26 20:50:17 +00:00
Ted Campbell 1c0cf73eef Bug 1471062 - Move resumeOffsets/scopeNotes/tryNotes to SharedScriptData. r=jandem
These arrays contain only relocatable, cloneable data and should be made
shareable. The API they now expose in SharedScriptData uses Span.

Differential Revision: https://phabricator.services.mozilla.com/D34790

--HG--
extra : moz-landing-system : lando
2019-06-26 20:50:03 +00:00
Ted Campbell 5f5b082297 Bug 1471062 - Pad source notes to target alignment. r=jandem
Pad the source notes with SRC_NULL such that the code and notes arrays
together maintain uint32_t alignment. This is will later be used to add
optional trailing arrays with uint32_t alignment. The allocator would
already be rounding up our allocation so actually memory usage should be
neutral.

Differential Revision: https://phabricator.services.mozilla.com/D34788

--HG--
extra : moz-landing-system : lando
2019-06-26 20:49:43 +00:00
Ted Campbell 04085d857f Bug 1471062 - Add SharedScriptData::offsetToPointer. r=jandem
Make access to trailing arrays more consistent with other data
structures and better encapsulate the reinterpret_casts.

Differential Revision: https://phabricator.services.mozilla.com/D34787

--HG--
extra : moz-landing-system : lando
2019-06-26 18:42:35 +00:00
Narcis Beleuzu 255b52c321 Backed out 2 changesets (bug 1558971, bug 1555464) for SM bustages on ecma262-issue-1461.js . CLOSED TREE
Backed out changeset 8227f5fbbe20 (bug 1555464)
Backed out changeset 36683eb4d0db (bug 1558971)
2019-06-26 19:55:40 +03:00
Ted Campbell fdabbcfb9a Bug 1471062 - Make heap-analysis/byteSize-of-scripts jit-test more complex r=jandem,arai
As PrivateScriptData contains less data, we need to make this test have
more complicated functions so that the test is not sensistive to
allocator rounding. This also removes the binjs variant of test until
they next time they are regenerated.

Differential Revision: https://phabricator.services.mozilla.com/D35840

--HG--
extra : moz-landing-system : lando
2019-06-26 15:36:43 +00:00
Jason Orendorff 1c562e6022 Bug 1555464 - Part 2: Enable fields by default in the JS shell. r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D34639

--HG--
extra : moz-landing-system : lando
2019-06-26 04:43:05 +00:00
Jason Orendorff e0a435b1bb Bug 1558971 - Enable the await fix by default in the JS shell. r=khyperia
Depends on D35478

Differential Revision: https://phabricator.services.mozilla.com/D35978

--HG--
extra : moz-landing-system : lando
2019-06-26 15:53:43 +00:00
Jan de Mooij bf66e7b740 Bug 1560432 - Remove unused NSPR header from vm/Time.cpp. r=sfink
Gary noticed we can't build without NSPR on Windows due to this unused #include
inside #ifdef XP_WIN. This patch fixes the build.

Differential Revision: https://phabricator.services.mozilla.com/D35494

--HG--
extra : moz-landing-system : lando
2019-06-26 15:22:27 +00:00
Iain Ireland 3847b9b0b4 Bug 1559072: MIPS fixes r=djvj
Depends on D35549

Differential Revision: https://phabricator.services.mozilla.com/D35550

--HG--
extra : moz-landing-system : lando
2019-06-25 15:58:59 +00:00
Iain Ireland c55e3c9fab Bug 1559072: Revert GDB python bindings to old boxing format r=sfink
Depends on D35548

Differential Revision: https://phabricator.services.mozilla.com/D35549

--HG--
extra : moz-landing-system : lando
2019-06-25 18:06:41 +00:00
Iain Ireland 29dc9fe2ea Bug 1559072: Revert Rust bindings to old boxing format r=djvj
Depends on D35547

Differential Revision: https://phabricator.services.mozilla.com/D35548

--HG--
extra : moz-landing-system : lando
2019-06-25 17:11:15 +00:00
Iain Ireland 5cd03cc9d2 Bug 1559072: Revert to old boxing format r=djvj
Differential Revision: https://phabricator.services.mozilla.com/D35547

--HG--
extra : moz-landing-system : lando
2019-06-25 17:34:50 +00:00
Csoregi Natalia 2c0114f8c7 Backed out 3 changesets (bug 1557343) for bustages on Debugger.h. CLOSED TREE
Backed out changeset 70040a80a4d7 (bug 1557343)
Backed out changeset a9de28d699a7 (bug 1557343)
Backed out changeset 1663fcb7bfd7 (bug 1557343)
2019-06-26 22:05:21 +03:00
Jim Blandy 4580d11ff7 Bug 1557343: Gather the code to manage the association between DebuggerFrames and AbstractGeneratorObjects. r=jorendorff
Merge Debugger::addGeneratorFrame into DebuggerFrame::setGenerator, and expand
the role of clearGenerator to fully undo the effect of setGenerator.

The association between a Debugger.Frame referring to a generator or async call
and the underlying generator object must be recorded in five separate places, as
a transaction: either all or present, or none are present. To ensure this is
true, this patch places sole responsibility for emplacing all those relations in
a single function (setGenerator), with another function to tear down those
relations (clearGenerator) as its inverse/antidote/complement/antagonist (in the
anatomical sense)/what-have-you.

Actually, when a Debugger.Frame is GC'd, we cannot reliably undo some of the
connections, and in fact can let the GC take care of those for us, so the
tear-down function clearGenerator is split into two overloads, one which is
suitable for use from a finalizer and the other which takes care of the entire
task.

Differential Revision: https://phabricator.services.mozilla.com/D35607

--HG--
extra : moz-landing-system : lando
2019-06-26 18:18:32 +00:00
Jim Blandy e76592d50e Bug 1557343: Replace the sole use of DebuggerWeakMap::removeIf with its definition. r=jorendorff
Later in this patch series, we will be gathering up all the code to manage the
association between DebuggerFrame and AbstractGeneratorFrame objects into a pair
of functions, one to establish a relation and the other to tear it down. The
removeif method combines iteration and entry removal, but we would rather have
entry removal live next to the code that tears down the rest of the association.

In preparation for that, this changeset replaces the sole use of removeIf with
its (not very large) definition, so that the entry removal can be more readily
moved into another function.

Differential Revision: https://phabricator.services.mozilla.com/D35606

--HG--
extra : moz-landing-system : lando
2019-06-26 18:18:23 +00:00
Jim Blandy 0349206743 Bug 1557343: Move AutoRealm outside addGeneratorFrame. r=jorendorff
Without this patch, addGeneratorFrame may be called from any realm, and enters
the debugger's realm to call DebuggerFrame::setGenerator. However, we would like
to merge addGeneratorFrame and setGenerator, and call the combined from various
points which are already in the debugger's realm, so it would be a little nicer
to simply make the function assume it is called from the debugger's realm.

Differential Revision: https://phabricator.services.mozilla.com/D35605

--HG--
extra : moz-landing-system : lando
2019-06-26 18:18:20 +00:00
Nicolas B. Pierron a27dde9915 Bug 1466160 - assertRecoveredOnBailout needs controlled GC environment when expecting compilation results. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D36063

--HG--
extra : moz-landing-system : lando
2019-06-26 17:29:18 +00:00
Jon Coppeard 22952620f8 Bug 1560931 - Set JS engine low memory state based on memory pressure notifications r=smaug
Update the memory pressure observers for main thread and workers to call the new JS API to set/clear the low memory state.

Differential Revision: https://phabricator.services.mozilla.com/D35682
2019-06-24 18:24:47 +01:00
Jon Coppeard ca04a00e08 Bug 1560931 - Add low memory state API and use it to restrict max nursery size r=sfink
Add a lowMemoryState field to GCRuntime and an API set set it.  Use it to restict the nursery size when resizing the nursery.

Differential Revision: https://phabricator.services.mozilla.com/D35680
2019-06-24 18:23:52 +01:00
Jason Orendorff 8e2b478fcc Bug 1560412 - A jit-test for setImmutablePrototype with scripted proxies. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D35478

--HG--
extra : moz-landing-system : lando
2019-06-26 05:20:40 +00:00
Jason Orendorff b50452e1f5 Bug 1559269 - Remove preliminary TokenStream support for private fields. r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D35532

--HG--
extra : moz-landing-system : lando
2019-06-26 04:40:34 +00:00
yulia de6d72c152 Bug 1515221 - remove GeneralParser::thisForCtor() r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D35581

--HG--
extra : moz-landing-system : lando
2019-06-24 15:21:43 +00:00
arthur.iakab 785bee02e8 Merge mozilla-central to mozilla-inbound 2019-06-26 01:09:31 +03:00
Nicolas B. Pierron a1b6779f72 Bug 1559461 - gdb unwinder: Lookup JIT memory using ::execMemory. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D35062

--HG--
extra : moz-landing-system : lando
2019-06-25 16:39:31 +00:00
Mihai Alexandru Michis 8712dcd6e4 Backed out changeset 00b675dfb3de (bug 1559461) for causing linting failures. CLOSED TREE 2019-06-25 17:25:22 +03:00
Nicolas B. Pierron 81b33d5e07 Bug 1559462 - gdb unwinder: Fix lookup of frame name by prefixing with FrameType::. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D35063

--HG--
extra : moz-landing-system : lando
2019-06-25 14:20:16 +00:00
Nicolas B. Pierron 1af27256eb Bug 1559461 - gdb unwinder: Lookup JIT memory using ::execMemory. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D35062

--HG--
extra : moz-landing-system : lando
2019-06-25 13:56:57 +00:00
Jon Coppeard 1a625b6d2a Bug 1561296 - Fix occurences of gray spelled as grey r=allstarschh DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D35804
2019-06-25 15:08:53 +01:00
Ciure Andrei 7e158713cf Merge inbound to mozilla-central. a=merge 2019-06-25 12:39:48 +03:00
Kris Maglione e9aa7e2899 Bug 1559500: Remove unused async subscriptloader functionality. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D35086

--HG--
extra : rebase_source : ddef79974de06ef8c7646b60fe094bef1b429661
extra : amend_source : 7d39f9c83ccd169fa1d95f7d691bcaa1022d5f18
2019-06-14 14:19:41 -07:00
Jon Coppeard fb607e89b8 Bug 1395509 - Track malloc memory used by wasm objects, part 1 r=luke
This adds tracking of malloc memory to WasmInstanceObject, WasmGlobalObject, WasmMemoryObject and ResolveResponseClosure (the straightforward cases).

Differential Revision: https://phabricator.services.mozilla.com/D35485
2019-06-20 15:19:18 -07:00
Jon Coppeard 532b9e4484 Bug 1395509 - Add FreeOp methods to deal with releasing RefCounted types r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D35484
2019-06-20 15:17:06 -07:00
Andrea Marchesini 872502eaf3 Bug 1560040 - Introduce 2 new URL-Classifier features to annotate and block social trackers, r=dimi
Differential Revision: https://phabricator.services.mozilla.com/D35421

--HG--
extra : moz-landing-system : lando
2019-06-22 16:53:50 +00:00
Paul Bone 5e2fecfbf1 Bug 1555101 - Raise the phase limit for GC telemetry to 73 r=chutten,jonco
Differential Revision: https://phabricator.services.mozilla.com/D33136

--HG--
extra : moz-landing-system : lando
2019-06-12 06:43:43 +00:00
Jeff Walden 5a7cce5fce Bug 1557193 - Enable the assertion in testScriptSourceCompression.cpp verifying that script source was, in fact, compressed off-thread synchronously. r=arai,jonco,sfink
Differential Revision: https://phabricator.services.mozilla.com/D33890

--HG--
extra : moz-landing-system : lando
2019-06-25 02:31:44 +00:00
Kristen Wright dadb1f6f65 Bug 1539270 Part 2: Runtime hook to expose the helper thread dispatch method to js r=sfink
Created a hook in Runtime to expose the helper thread dispatch method to js, which is set by XPCJSRUntime::init.

Differential Revision: https://phabricator.services.mozilla.com/D27818

--HG--
extra : moz-landing-system : lando
2019-06-21 20:38:02 +00:00
Kristen Wright 9f4f6add03 Bug 1539270 Part 1: Add HelperThreadPool & HelperThreadTaskHandler classes and their initialization/shutdown process to manage an nsThreadPool r=mccr8,froydnj
Added HelperThreadPool & HelperThreadTaskHandler classes to hold and manage an nsThreadPool. Initialized thread pool in XPCJSRuntime.

Differential Revision: https://phabricator.services.mozilla.com/D27817

--HG--
extra : moz-landing-system : lando
2019-06-24 22:29:18 +00:00
Dorel Luca d85302a490 Backed out 3 changesets (bug 1559975) for Build bustage. CLOSED TREE
Backed out changeset bdb15150dc59 (bug 1559975)
Backed out changeset 16efad631029 (bug 1559975)
Backed out changeset d72bc2063456 (bug 1559975)
2019-06-24 23:42:34 +03:00
Bastien Abadie be17d14cb5 Bug 1559975 - Fix python3 lint issues on js/src, r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D35243

--HG--
extra : moz-landing-system : lando
2019-06-24 16:55:05 +00:00
Tom Schuster 6ce38b36d0 Bug 1558914 - Disable Array generics in Nightly. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D35541

--HG--
extra : moz-landing-system : lando
2019-07-01 12:52:59 +00:00
Benjamin Bouvier 79e55332e8 Bug 1562393: Cranelift: Don't panic when seeing unexpected number of memories/tables; r=lth
Differential Revision: https://phabricator.services.mozilla.com/D36465

--HG--
extra : moz-landing-system : lando
2019-07-01 12:18:40 +00:00
Lars T Hansen 43069b8e39 Bug 1561747 - Enable bulk memory on non-Nightly if shared memory is enabled. r=jseward
Toolchains that support wasm threads will soon start relying on bulk
memory being available (as Chrome more or less ships both proposals
already).  Currently we have bulk memory on Nightly under an ifdef,
but shared memory in all channels under a flag; as a result, we are
not compatible on non-Nightly with code that will soon come out of
these toolchains.

This patch keeps bulk memory enabled on Nightly but additionally
enables it on other channels if shared memory has been enabled by the
flag.

Mostly this is straightforward: we always enable decoding of bulk
memory operations, but will subsequently fail compilation for these
ops if bulk memory has not been enabled by the ifdef and shared memory
has not been enabled by the flag.

The only tricky part is really that the bulk memory proposal changes
the bounds checking for memory.init and table.init from eager to lazy,
so here the combinations of flags selects the bounds checking
behavior.

Once we ship bulk memory all of this complexity disappears.

Differential Revision: https://phabricator.services.mozilla.com/D36302

--HG--
extra : moz-landing-system : lando
2019-07-01 11:57:04 +00:00
Paul Bone 0934b12c0a Bug 1561832 - Separate setting the current chunk from poisoning it r=jonco
This allows us to run the poisoning code after resizing the nursery,
ensuring that the correct region of that chunk is poisoned, fixing the bug.

This also simplifies the logic around how much of the nursery to poison, we
always poison the valid region of the nursery regardless of how much was
used (removing an earlier optimisation).

Differential Revision: https://phabricator.services.mozilla.com/D36315

--HG--
extra : moz-landing-system : lando
2019-07-01 08:35:11 +00:00
Jan de Mooij a261b8dc01 Bug 1551499 - Support Baseline Interpreter code in the profiler. r=djvj
Because the return address cannot be used to uniquely identify script/pc, this
is unfortunately quite different from what we do for Baseline/Ion code.

The strategy is as follows:

* When the profiler is enabled, ensure each JitScript has a pointer to the
  profile string (released when the script is finalized).

* The BaselineInterpreter code is registered with the JitcodeMap.

* The profiler code treats interpreter frames like C++ Interpreter frames,
  instead of doing the return address based mapping.

Differential Revision: https://phabricator.services.mozilla.com/D31052

--HG--
extra : moz-landing-system : lando
2019-06-21 16:13:48 +00:00
shindli c0ca77697c Merge inbound to mozilla-central. a=merge 2019-06-21 12:34:14 +03:00
kriswright c3a19591ea Bug 1559821 - 2: switch parse task checks for new parse task pointer, cleanup instances of HelperThread() leftover r=jonco
Removed helperthread_ and its associated functions since they are no longer used & cleaned up a few missed checks that used it. Changed helperThread()->parseTask() checks to look for cx->parseTask() instead.

Differential Revision: https://phabricator.services.mozilla.com/D35491

--HG--
extra : moz-landing-system : lando
2019-06-20 23:08:59 +00:00
kriswright e1dfee9d67 Bug 1559821 - teach JSContext about parse tasks r=jonco
Added a ParseTask pointer to JSContext, set/removed during ParseTask::runTask

Differential Revision: https://phabricator.services.mozilla.com/D35365

--HG--
extra : moz-landing-system : lando
2019-06-20 22:43:59 +00:00
Jason Orendorff 62e9d98923 Bug 1560206 - Part 3: Add entries to jstests.list for new failing test262 tests. r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D35444

--HG--
extra : moz-landing-system : lando
2019-06-20 22:53:14 +00:00
Jason Orendorff cc28c9817f Bug 1560206 - Part 2: Update test262. r=khyperia
Depends on D35442

Differential Revision: https://phabricator.services.mozilla.com/D35443

--HG--
rename : js/src/tests/test262/built-ins/TypedArray/stability.js => js/src/tests/test262/built-ins/TypedArray/prototype/sort/stability.js
rename : js/src/tests/test262/language/module-code/instn-resolve-err-syntax_FIXTURE.js => js/src/tests/test262/language/module-code/instn-resolve-err-syntax-1_FIXTURE.js
rename : js/src/tests/test262/language/module-code/instn-resolve-err-reference_FIXTURE.js => js/src/tests/test262/language/module-code/instn-resolve-err-syntax-2_FIXTURE.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.3_T1.js => js/src/tests/test262/language/white-space/comment-multi-form-feed.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.1_T1.js => js/src/tests/test262/language/white-space/comment-multi-horizontal-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.5_T1.js => js/src/tests/test262/language/white-space/comment-multi-nbsp.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.4_T1.js => js/src/tests/test262/language/white-space/comment-multi-space.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.2_T1.js => js/src/tests/test262/language/white-space/comment-multi-vertical-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.3_T1.js => js/src/tests/test262/language/white-space/comment-single-form-feed.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.1_T1.js => js/src/tests/test262/language/white-space/comment-single-horizontal-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.5_T1.js => js/src/tests/test262/language/white-space/comment-single-nbsp.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.4_T1.js => js/src/tests/test262/language/white-space/comment-single-space.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.2_T1.js => js/src/tests/test262/language/white-space/comment-single-vertical-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.3_T1.js => js/src/tests/test262/language/white-space/string-form-feed.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.1_T1.js => js/src/tests/test262/language/white-space/string-horizontal-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.5_T1.js => js/src/tests/test262/language/white-space/string-nbsp.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.4_T1.js => js/src/tests/test262/language/white-space/string-space.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.2_T1.js => js/src/tests/test262/language/white-space/string-vertical-tab.js
extra : moz-landing-system : lando
2019-06-20 20:31:58 +00:00
Jason Orendorff a981bc3f46 Bug 1560206 - Part 1: Add new unsupported features to the test262 update script. r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D35442

--HG--
extra : moz-landing-system : lando
2019-06-20 20:31:53 +00:00
Jed Davis 73345f53d2 Bug 1479960 - Make AutoMemMap not fstat() the mapped object if it doesn't need to. r=kmag
One problem with using shared memory instead of files for MemMapSnapshot
is that AutoMemMap was trying to use fstat() to obtain the object size;
that doesn't work with ashmem on Android and was causing problems with
the Mac sandbox, but it's not necessary, because we already know the
size.  This patch changes it to not do that.

Depends on D26743

Differential Revision: https://phabricator.services.mozilla.com/D26744

--HG--
extra : moz-landing-system : lando
2019-06-20 22:40:34 +00:00
Boris Zbarsky e0bd7114ae Bug 1559468 part 1. Move JS_DefineProfilingFunctions into InitClassesWithNewWrappedGlobal. r=mccr8
All callers of InitClassesWithNewWrappedGlobal already call it.

Differential Revision: https://phabricator.services.mozilla.com/D35457

--HG--
extra : moz-landing-system : lando
2019-06-20 21:44:03 +00:00
Cosmin Sabou 26a3767938 Merge mozilla-central to mozilla-inbound. 2019-06-21 01:48:24 +03:00
Marco Trevisan (Treviño) 7dd56cc3a6 Bug 1560064 - Barrier: Remove JS_BROKEN_GCC_ATTRIBUTE_WARNING guards. r=sfink
--HG--
extra : rebase_source : df7028fd7f4b44a46e5061827c975a870819b1ec
2019-06-20 19:19:58 +02:00
Marco Trevisan (Treviño) 957a283e83 Bug 1560064 - Barrier: Set MovableCellHasher<JSObject*> visibility before being used. r=sfink
--HG--
extra : rebase_source : 40d731c5b8e78cb8ecf77f34ae78611f3c78af46
2019-06-20 19:15:39 +02:00
Ciure Andrei 72f3f971fb Backed out 15 changesets (bug 1479960, bug 1426526, bug 1534780, bug 1536697) for causing build bustages CLOSED TREE
Backed out changeset 5645e0cc3915 (bug 1479960)
Backed out changeset a7c09894c6a0 (bug 1536697)
Backed out changeset 510f03381af9 (bug 1426526)
Backed out changeset 7cf4735a088f (bug 1426526)
Backed out changeset 41080844e645 (bug 1479960)
Backed out changeset fdba3c5f8fd0 (bug 1479960)
Backed out changeset 26a8ebcb2db4 (bug 1479960)
Backed out changeset d0d383e5bae1 (bug 1479960)
Backed out changeset c418095bb7b7 (bug 1479960)
Backed out changeset 7b78b1945532 (bug 1479960)
Backed out changeset c47d47d4073d (bug 1479960)
Backed out changeset 71253b62a633 (bug 1479960)
Backed out changeset ae525f20bdbb (bug 1479960)
Backed out changeset 7fba719355d7 (bug 1534780)
Backed out changeset 771db331860a (bug 1534780)
2019-06-20 19:54:57 +03:00
Ciure Andrei 217ab9d060 Backed out 4 changesets (bug 1545582) for causing spidermonkey bustages CLOSED TREE
Backed out changeset c53f9e22d5f7 (bug 1545582)
Backed out changeset 6640b7f3d7e0 (bug 1545582)
Backed out changeset c65de5ec10da (bug 1545582)
Backed out changeset 3224107774b1 (bug 1545582)
2019-06-20 19:39:54 +03:00
Jon Coppeard 947bc6ad9a Bug 1395509 - Track malloc memory used by ForOfPIC objects r=jandem
This refactors freeing stubs and adds memory tracking.  It also adds a back pointer to the JSObject to ForOfPIC::Chain which is slightly annoying, but I think there's only one per global so this shouldn't be too bad.

Differential Revision: https://phabricator.services.mozilla.com/D35348
2019-06-19 11:34:36 -07:00
Jon Coppeard 6c5e6c0de8 Bug 1395509 - Track malloc memory used by script breakpoints r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D35347
2019-06-19 11:15:40 -07:00
Jon Coppeard 15ae5ecf77 Bug 1395509 - Track malloc memory used by ObjectGroups r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D35346
2019-06-19 11:14:11 -07:00
Jon Coppeard 32ed420e1a Bug 1395509 - Track malloc memory used by JitScripts r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D35345
2019-06-18 13:33:43 -07:00
Jed Davis 3f8c33e57f Bug 1479960 - Make AutoMemMap not fstat() the mapped object if it doesn't need to. r=kmag
One problem with using shared memory instead of files for MemMapSnapshot
is that AutoMemMap was trying to use fstat() to obtain the object size;
that doesn't work with ashmem on Android and was causing problems with
the Mac sandbox, but it's not necessary, because we already know the
size.  This patch changes it to not do that.

Depends on D26743

Differential Revision: https://phabricator.services.mozilla.com/D26744

--HG--
extra : moz-landing-system : lando
2019-06-17 02:19:55 +00:00
Greg Tatum c46b8c0571 Bug 1545582 - Add a JS runtime level of allocation logging; r=jimb
Differential Revision: https://phabricator.services.mozilla.com/D28142

--HG--
extra : moz-landing-system : lando
2019-06-19 21:07:52 +00:00
Jeff Walden 438420c8fc Bug 1558538 - Add tests of converting BigInt around and exceeding Number.MAX_VALUE to Number. r=wingo
Differential Revision: https://phabricator.services.mozilla.com/D35369

--HG--
extra : moz-landing-system : lando
2019-06-20 15:57:09 +00:00
Benjamin Bouvier 4426078a24 Bug 1558165: Throw when forcing Cranelift usage on an unsupported platform; r=lth
Differential Revision: https://phabricator.services.mozilla.com/D35178

--HG--
extra : moz-landing-system : lando
2019-06-18 13:44:08 +00:00
Jan de Mooij 7542b540e4 Bug 1535154 - Merge PrivateScriptData scopes/objects/bigints arrays into a single array of GC things. r=tcampbell,jonco
Once the other data is moved out of PrivateScriptData, this GC-thing array will be stored
at a fixed offset. At that point we can simplify PrivateScriptData and get fast indexing
into this array, important for the Baseline Interpreter.

Differential Revision: https://phabricator.services.mozilla.com/D34902

--HG--
extra : moz-landing-system : lando
2019-06-20 03:02:35 +00:00
Tooru Fujisawa 5e4375de8d Bug 1557056 - Use extended function only for self-hosted function that needs to store canonical name in extended slot. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D34983

--HG--
extra : moz-landing-system : lando
2019-06-19 20:00:24 +00:00
Jeff Walden c69f589086 Bug 1558538 - BigInt-to-Number conversion is rather borken. r=wingo
Differential Revision: https://phabricator.services.mozilla.com/D34678

--HG--
extra : moz-landing-system : lando
2019-06-19 18:39:02 +00:00
Dorel Luca 3185bc13bb Backed out changeset 382f21591267 (bug 1558538) for Build bustage. CLOSED TREE 2019-06-19 20:38:50 +03:00
Jeff Walden b0a2ee2fd8 Bug 1558538 - BigInt-to-Number conversion is rather borken. r=wingo
Differential Revision: https://phabricator.services.mozilla.com/D34678

--HG--
extra : moz-landing-system : lando
2019-06-19 17:01:02 +00:00
Mihai Alexandru Michis b81b091687 Backed out changeset 45210f041ea7 (bug 1558538) for causing bustages. CLOSED TREE 2019-06-19 18:26:41 +03:00
Jeff Walden 17cc5247ff Bug 1558538 - BigInt-to-Number conversion is rather borken. r=wingo
Differential Revision: https://phabricator.services.mozilla.com/D34678

--HG--
extra : moz-landing-system : lando
2019-06-19 15:24:17 +00:00
Mihai Alexandru Michis ab05e6b60b Backed out 2 changesets (bug 1560064) for causing build bustages. CLOSED TREE
Backed out changeset ca7d45d235a6 (bug 1560064)
Backed out changeset 75d71e4211bb (bug 1560064)
2019-06-19 11:18:56 +03:00
Marco Trevisan de17295a47 Bug 1560064 - Barrier: Remove JS_BROKEN_GCC_ATTRIBUTE_WARNING guards r=sfink
As per previous commit the warning isn't emitted anymore, so no need to guard
against it.

Also in this case the warning was actually right, so we need to make sure that
we track similar ones.

Depends on D35292

Differential Revision: https://phabricator.services.mozilla.com/D35293

--HG--
extra : moz-landing-system : lando
2019-06-19 08:01:08 +00:00
Marco Trevisan 750c8d08fc Bug 1560064 - Barrier: Set MovableCellHasher<JSObject*> visibility before being used r=sfink
Under GCC, the type attributes can't be set more than once, and when this happens
only the firt definition they are ignored.

Since MovableCellHasher<JSObject*> is used in various headers g++ implicitly set
the symbol visibility to default (and thus hidden), making this symbol not to be
exported as it should be.

Move the template specialization with type attributes to Barrier.h, so that this
might happen before any other definition, muting the warning and making the symbol
to be really exported

Fixes https://gcc.gnu.org/bugzilla/show_bug.cgi?id=39159

Differential Revision: https://phabricator.services.mozilla.com/D35292

--HG--
extra : moz-landing-system : lando
2019-06-19 08:00:46 +00:00
Ted Campbell 1e2658e982 Bug 1559275 - Add TransistiveCompileOptions::forceFullParse. r=jandem
Check VM and Realm options that may disable syntax parsing up front in
the CompileOptions constructor. This is needed to make the frontend
closer to a pure-function.

Differential Revision: https://phabricator.services.mozilla.com/D35214

--HG--
extra : moz-landing-system : lando
2019-06-19 01:43:06 +00:00
Ted Campbell 1138b5e8fc Bug 1559275 - Add TransistiveCompileOptions::discardSource. r=jandem
Check realm flags at when creating CompileOptions rather than during
compilation. This is helpful for pre-compiling self-hosting code.

Differential Revision: https://phabricator.services.mozilla.com/D34976

--HG--
extra : moz-landing-system : lando
2019-06-19 00:27:40 +00:00
Ted Campbell 8a260ca538 Bug 1559275 - Remove unused CompileOptions::allowSyntaxParser. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D35070

--HG--
extra : moz-landing-system : lando
2019-06-19 00:27:41 +00:00
Ted Campbell d2cb6059f3 Bug 1559275 - Remove unused CompileOptions::isProbablySystemCode. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D34977

--HG--
extra : moz-landing-system : lando
2019-06-19 00:27:40 +00:00
Ted Campbell a68d5a818e Bug 1559275 - Only initialize JS::OwningCompileOptions by copying. r=jandem
All uses of OwningCompileOptions now are initialized from copy() so
remove the now-unused setters.

Differential Revision: https://phabricator.services.mozilla.com/D35080

--HG--
extra : moz-landing-system : lando
2019-06-19 00:27:41 +00:00
Ted Campbell 9b0fa42e1f Bug 1559275 - Avoid OwningCompileOptions accessors in js-rust glue. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D35260

--HG--
extra : moz-landing-system : lando
2019-06-19 00:50:43 +00:00
Ted Campbell 243dd6a969 Bug 1559275 - Use JS::CompileOptions in AsyncScriptCompiler. r=kmag
Initializing OwningCompileOptions directly will soon be deprecated in
order to have consistent defaults. This results in more consistent
behavior of experimental features that are enabled based on realm flags.

Differential Revision: https://phabricator.services.mozilla.com/D35071

--HG--
extra : moz-landing-system : lando
2019-06-19 00:27:41 +00:00
Narcis Beleuzu 68e070762a Merge mozilla-central to inbound. CLOSED TREE 2019-06-16 12:38:13 +03:00
shindli e1240cd017 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-16 00:50:56 +03:00
Jeff Walden 563e73698d Bug 1554362 - Implement nsJSUtils::CompileModule for UTF-8 as well as UTF-16. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D34821

--HG--
extra : moz-landing-system : lando
2019-06-15 20:47:51 +00:00
Andreea Pavel 8c09b0389f Merge mozilla-inbound to mozilla-central. a=merge
--HG--
rename : mobile/android/base/java/org/mozilla/gecko/util/OnboardingStringUtil.java => mobile/android/base/java/org/mozilla/gecko/util/OnboardingResources.java
rename : toolkit/components/normandy/test/browser/addons/normandydriver-1.0/manifest.json => toolkit/components/normandy/test/browser/addons/normandydriver-a-1.0/manifest.json
rename : toolkit/components/normandy/test/browser/addons/normandydriver-2.0/manifest.json => toolkit/components/normandy/test/browser/addons/normandydriver-a-2.0/manifest.json
rename : toolkit/components/normandy/test/browser/addons/normandydriver-1.0/manifest.json => toolkit/components/normandy/test/browser/addons/normandydriver-b-1.0/manifest.json
2019-06-15 12:54:47 +03:00
Mihai Alexandru Michis cff1990963 Backed out 4 changesets (bug 1545582) for causing build bustages in SavedStacks.cpp CLOSED TREE
Backed out changeset a47c4a44bae0 (bug 1545582)
Backed out changeset c05a5d68d9a8 (bug 1545582)
Backed out changeset 699de45940b1 (bug 1545582)
Backed out changeset 285673afaa99 (bug 1545582)
2019-06-15 02:19:08 +03:00
Greg Tatum 808dfce0d8 Bug 1545582 - Add a JS runtime level of allocation logging; r=jimb
Differential Revision: https://phabricator.services.mozilla.com/D28142

--HG--
extra : moz-landing-system : lando
2019-06-14 20:18:22 +00:00
Dorel Luca bb47ceb7e9 Backed out 2 changesets (bug 1559275) for Mochitest failures in js/xpconnect/tests/chrome/test_discardSystemSource.xul. CLOSED TREE
Backed out changeset 41762079fd4c (bug 1559275)
Backed out changeset 248e294630c1 (bug 1559275)

--HG--
extra : rebase_source : 88e75469d7ad3dda9c969fa2c9ceee47b6d0169a
2019-06-14 23:52:03 +03:00
Kristen Wright 6cb69baf92 Bug 1558556 - swap cx->helperThread() nullchecks to check for js::ContextKind::HelperThread r=tcampbell
Added isHelperThreadContext() to check that cx runs on a helper thread, similar to isMainThreadContext(). Replaced null-checks meant to look for helper threads with isHelperThreadContext(), leaving instances where helperthread() is checked in order to access the actual helper thread.

Differential Revision: https://phabricator.services.mozilla.com/D34937

--HG--
extra : moz-landing-system : lando
2019-06-14 17:58:28 +00:00
Jim Blandy 44b4472bb0 Bug 1559062: Don't leak onStep handlers. r=jorendorff
When I wrote my prior patch, I forgot that a DebuggerFrame object's
ONSTEP_HANDLER_SLOT holds, not a JavaScript object, but a private value pointing
to an OnStepHandler, which must be explicitly freed.

Differential Revision: https://phabricator.services.mozilla.com/D34978

--HG--
extra : moz-landing-system : lando
2019-06-14 19:26:09 +00:00
Ted Campbell e35a46b5c0 Bug 1559275 - Remove unused CompileOptions::isProbablySystemCode. r=jandem
Depends on D34976

Differential Revision: https://phabricator.services.mozilla.com/D34977

--HG--
extra : moz-landing-system : lando
2019-06-14 07:35:17 +00:00
Ted Campbell d91ab6cc88 Bug 1559275 - Add CompileOptions::discardSource. r=jandem
Check realm flags at when creating CompileOptions rather than during
compilation. This is helpful for pre-compiling self-hosting code.

Differential Revision: https://phabricator.services.mozilla.com/D34976

--HG--
extra : moz-landing-system : lando
2019-06-14 18:34:32 +00:00
Jon Coppeard cd489feba4 Bug 1395509 - Track malloc memory used by TypedObject trace lists r=sfink
This changes the format of the trace list from using -1 as a delimter to storing the list lengths up front so that we have length information.

Differential Revision: https://phabricator.services.mozilla.com/D34731
2019-06-12 16:23:04 +01:00
Jon Coppeard da44422dfb Bug 1395509 - Track malloc memory used by PerfMesaurement objects r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D34730
2019-06-12 16:22:13 +01:00
Jon Coppeard 0c97e981f1 Bug 1395509 - Track malloc memory used by non-inline TypedArray elements r=sfink
Note that we only track the for typed arrays that are not backed by an ArrayBuffer as the memory is tracked there from then on.

Differential Revision: https://phabricator.services.mozilla.com/D34729
2019-06-12 16:22:03 +01:00
Jon Coppeard 2f2b9fb759 Bug 1395509 - Track malloc memory used by RegExp bytecode r=jandem
I had to store the length as the first word of the bytecode. I also shuffled RegExpShared fields around to make the class a little smaller.

Differential Revision: https://phabricator.services.mozilla.com/D34726
2019-06-12 16:21:18 +01:00
Jon Coppeard e7e5bc5f08 Bug 1395509 - Allow multiple associations for some memory uses r=sfink
Some kinds of memory use (e.g. reg exp byte code) require multiple memory associations for a single cell. This patch adds machinery to let that happen for specific uses.

Differential Revision: https://phabricator.services.mozilla.com/D34723
2019-06-12 16:19:52 +01:00
Jon Coppeard e5408fbd5b Bug 1395509 - Track malloc memory used by RegExpStatics objects r=pbone
I wanted to make VectorMatchPairs use ZoneAllocPolicy but this is also used in a bunch of places where it's not attached to a GC thing, so I left this as a todo.

Differential Revision: https://phabricator.services.mozilla.com/D34556
2019-06-11 17:03:42 +01:00
Jon Coppeard 7a505286bf Bug 1395509 - Track malloc memory used by native iterator objects r=jandem
Use memory tracking APIs to track malloc memory associated with NativeIterator objects. I had to store the initial propery count as propertiesEnd can change during the lifetime of this object.

Differential Revision: https://phabricator.services.mozilla.com/D34554
2019-06-11 17:03:41 +01:00
Jon Coppeard 3930aadd70 Bug 1555936 - Add diagnostic asserts to check the contents of the atoms table r=jandem a=abillings
Differential Revision: https://phabricator.services.mozilla.com/D34515
2019-06-11 15:04:29 +01:00
Ashley Hauck 8b0ff305bb Bug 1559123 - Do not relazify scripts with JSOP_CALLSITEOBJ. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D34916

--HG--
extra : moz-landing-system : lando
2019-06-14 15:10:10 +00:00
Paul Bone 42d58c9bd2 Bug 1476845 - Define the LifoAlloc poison values in jsutil.h r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D33452

--HG--
extra : moz-landing-system : lando
2019-06-14 05:37:17 +00:00
Paul Bone 30f610c54e Bug 1476845 - Add link to mrgiggles' source r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D33451

--HG--
extra : moz-landing-system : lando
2019-06-14 05:36:54 +00:00
Paul Bone 22ecc62435 Bug 1476845 - Collect poison values from around the engine into jsutil.h r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D33450

--HG--
extra : moz-landing-system : lando
2019-06-14 05:36:37 +00:00
Paul Bone 8dfaa246d4 Bug 1476845 - Update IsThingPoisoned r=jonco
Not all the listed poison values were used in IsThingPoisoned

Differential Revision: https://phabricator.services.mozilla.com/D33449

--HG--
extra : moz-landing-system : lando
2019-06-14 05:35:43 +00:00
André Bargull a39b233aa1 Bug 1549578: Cache most recently used UDateTimePatternGenerator in SharedIntlData. r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D30114

--HG--
extra : moz-landing-system : lando
2019-06-14 03:34:33 +00:00
Noemi Erli 98dd316a59 Backed out 3 changesets (bug 1560206) for causing bustages in non-generic-realm.js CLOSED TREE
Backed out changeset 0dd4ee1df7ef (bug 1560206)
Backed out changeset bce9437c8e50 (bug 1560206)
Backed out changeset b42b51c49598 (bug 1560206)

--HG--
rename : js/src/tests/test262/built-ins/TypedArray/prototype/sort/stability.js => js/src/tests/test262/built-ins/TypedArray/stability.js
rename : js/src/tests/test262/language/module-code/instn-resolve-err-syntax-2_FIXTURE.js => js/src/tests/test262/language/module-code/instn-resolve-err-reference_FIXTURE.js
rename : js/src/tests/test262/language/module-code/instn-resolve-err-syntax-1_FIXTURE.js => js/src/tests/test262/language/module-code/instn-resolve-err-syntax_FIXTURE.js
rename : js/src/tests/test262/language/white-space/string-horizontal-tab.js => js/src/tests/test262/language/white-space/S7.2_A2.1_T1.js
rename : js/src/tests/test262/language/white-space/string-vertical-tab.js => js/src/tests/test262/language/white-space/S7.2_A2.2_T1.js
rename : js/src/tests/test262/language/white-space/string-form-feed.js => js/src/tests/test262/language/white-space/S7.2_A2.3_T1.js
rename : js/src/tests/test262/language/white-space/string-space.js => js/src/tests/test262/language/white-space/S7.2_A2.4_T1.js
rename : js/src/tests/test262/language/white-space/string-nbsp.js => js/src/tests/test262/language/white-space/S7.2_A2.5_T1.js
rename : js/src/tests/test262/language/white-space/comment-single-horizontal-tab.js => js/src/tests/test262/language/white-space/S7.2_A3.1_T1.js
rename : js/src/tests/test262/language/white-space/comment-single-vertical-tab.js => js/src/tests/test262/language/white-space/S7.2_A3.2_T1.js
rename : js/src/tests/test262/language/white-space/comment-single-form-feed.js => js/src/tests/test262/language/white-space/S7.2_A3.3_T1.js
rename : js/src/tests/test262/language/white-space/comment-single-space.js => js/src/tests/test262/language/white-space/S7.2_A3.4_T1.js
rename : js/src/tests/test262/language/white-space/comment-single-nbsp.js => js/src/tests/test262/language/white-space/S7.2_A3.5_T1.js
rename : js/src/tests/test262/language/white-space/comment-multi-horizontal-tab.js => js/src/tests/test262/language/white-space/S7.2_A4.1_T1.js
rename : js/src/tests/test262/language/white-space/comment-multi-vertical-tab.js => js/src/tests/test262/language/white-space/S7.2_A4.2_T1.js
rename : js/src/tests/test262/language/white-space/comment-multi-form-feed.js => js/src/tests/test262/language/white-space/S7.2_A4.3_T1.js
rename : js/src/tests/test262/language/white-space/comment-multi-space.js => js/src/tests/test262/language/white-space/S7.2_A4.4_T1.js
rename : js/src/tests/test262/language/white-space/comment-multi-nbsp.js => js/src/tests/test262/language/white-space/S7.2_A4.5_T1.js
2019-06-20 23:27:43 +03:00
Jason Orendorff 913d5a844c Bug 1560206 - Part 3: Add entries to jstests.list for new failing test262 tests. r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D35444

--HG--
extra : moz-landing-system : lando
2019-06-20 19:41:52 +00:00
Jason Orendorff 70d8887aa8 Bug 1560206 - Part 2: Update test262. r=khyperia
Depends on D35442

Differential Revision: https://phabricator.services.mozilla.com/D35443

--HG--
rename : js/src/tests/test262/built-ins/TypedArray/stability.js => js/src/tests/test262/built-ins/TypedArray/prototype/sort/stability.js
rename : js/src/tests/test262/language/module-code/instn-resolve-err-syntax_FIXTURE.js => js/src/tests/test262/language/module-code/instn-resolve-err-syntax-1_FIXTURE.js
rename : js/src/tests/test262/language/module-code/instn-resolve-err-reference_FIXTURE.js => js/src/tests/test262/language/module-code/instn-resolve-err-syntax-2_FIXTURE.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.3_T1.js => js/src/tests/test262/language/white-space/comment-multi-form-feed.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.1_T1.js => js/src/tests/test262/language/white-space/comment-multi-horizontal-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.5_T1.js => js/src/tests/test262/language/white-space/comment-multi-nbsp.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.4_T1.js => js/src/tests/test262/language/white-space/comment-multi-space.js
rename : js/src/tests/test262/language/white-space/S7.2_A4.2_T1.js => js/src/tests/test262/language/white-space/comment-multi-vertical-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.3_T1.js => js/src/tests/test262/language/white-space/comment-single-form-feed.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.1_T1.js => js/src/tests/test262/language/white-space/comment-single-horizontal-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.5_T1.js => js/src/tests/test262/language/white-space/comment-single-nbsp.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.4_T1.js => js/src/tests/test262/language/white-space/comment-single-space.js
rename : js/src/tests/test262/language/white-space/S7.2_A3.2_T1.js => js/src/tests/test262/language/white-space/comment-single-vertical-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.3_T1.js => js/src/tests/test262/language/white-space/string-form-feed.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.1_T1.js => js/src/tests/test262/language/white-space/string-horizontal-tab.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.5_T1.js => js/src/tests/test262/language/white-space/string-nbsp.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.4_T1.js => js/src/tests/test262/language/white-space/string-space.js
rename : js/src/tests/test262/language/white-space/S7.2_A2.2_T1.js => js/src/tests/test262/language/white-space/string-vertical-tab.js
extra : moz-landing-system : lando
2019-06-20 18:18:39 +00:00
Jason Orendorff 7189e73f8d Bug 1560206 - Part 1: Add new unsupported features to the test262 update script. r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D35442

--HG--
extra : moz-landing-system : lando
2019-06-20 18:18:08 +00:00
Jason Orendorff 0ba6cd4cf4 Bug 1555037 - Part 2: Support SuperProperty in field initializers. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34608

--HG--
extra : moz-landing-system : lando
2019-06-20 19:22:53 +00:00
Jason Orendorff f2f8ad24f2 Bug 1555037 - Part 1: Refactor code for emitting the .initializers array into ClassEmitter. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34607

--HG--
extra : moz-landing-system : lando
2019-06-20 19:22:40 +00:00
Tom Ritter c52c6af4b1 Bug 1555355 - Enable arena randomization for the Arraybuffer and String arenas r=glandium,jandem
Differential Revision: https://phabricator.services.mozilla.com/D33212

--HG--
extra : moz-landing-system : lando
2019-06-20 17:06:49 +00:00
Noemi Erli 10dff281bf Backed out changeset eb8646af425c (bug 1556818) for bustages in invalid-asssignmenttargettype-reference-error-14-lhs-assignment-operator-assignment-expression.js CLOSED TREE 2019-06-20 21:16:52 +03:00
Ross Kirsling 8eaf7a531e Bug 1556818 - Throw early SyntaxError instead of ReferenceError for 0 = 0 r=khyperia
Differential Revision: https://phabricator.services.mozilla.com/D35298

--HG--
extra : moz-landing-system : lando
2019-06-20 04:08:50 +00:00
Brian Hackett 3b879d5295 Bug 1556819 - Prevent AutoDebuggerJobQueueInterruption from doing anything when recording/replaying, r=jimb.
--HG--
extra : rebase_source : e83c092d13fc0e78f41256dcc28fb0000df1e0e1
2019-06-04 10:47:23 -10:00
arthur.iakab a549fe0532 Merge mozilla-central to mozilla-inbound
--HG--
extra : rebase_source : 144e998695db067f1dad805e5263b591ed98e50f
2019-06-28 13:10:08 +03:00
Jon Coppeard afdba4e113 Bug 1561866 - Move alloc policies where possible r=jwalden
Patch to use std::move when passing AllocPolicy instances to constructors. This also fixes HashTable move constuction/assignment that previously PodAssigned the whole object including the AllocPolicy base.

Differential Revision: https://phabricator.services.mozilla.com/D36175
2019-06-27 11:56:26 +01:00
Jon Coppeard fff1668b7a Bug 1558835 - Make Nursery::removeMallocedBuffer assert that its argument is valid and don't call it unless necessary r=allstarschh
Nursery objects can have slots buffers in the nursery or in malloc memory; tenured objects always have their slots buffers in malloc memory. When a nursery object has a pointer to a malloced buffer it is present in the Nursery::mallocedBuffers set. The patch checks whether an object is tenured when freeing its slots buffer because if so this tells us that its buffer is malloced and can't be in the nursery's mallocedBuffers set.

This also gets rid of a call to Nursery::isInside() call (linear in the number of nursery chunks) when we know the object is tenured and hence can't reference nursery memory.

Differential Revision: https://phabricator.services.mozilla.com/D36211
2019-06-27 17:09:40 +01:00
Razvan Maries 968156f90a Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-06-28 06:41:53 +03:00
Razvan Maries 6cd0726ada Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-06-28 00:46:58 +03:00
Noemi Erli fc3db67332 Backed out 2 changesets (bug 1558604) for causing failures in class-declaration-explicit-ctor.js CLOSED TREE
Backed out changeset 2fa5845aab8f (bug 1558604)
Backed out changeset 6accf00aa7cc (bug 1558604)
2019-06-13 16:06:59 +03:00
Matthew Gaudet 18dbab68b3 Bug 1558604 - Keep interpreted and interpretedLazy on FunctionBox r=jorendorff
Depends on D34586

Differential Revision: https://phabricator.services.mozilla.com/D34587

--HG--
extra : moz-landing-system : lando
2019-06-12 23:52:08 +00:00
Matthew Gaudet 17696d5b2a Bug 1558604 - Defer initializaton of JSFunction::nargs until after function parsing is done. r=jorendorff
The args count needs to be set before the LazyScript takes hold of the
functionbox, or else some code that references lazy functions can get the wrong
number of arguments (ie, CloneFunctionObjectIfNotSingleton on a lazy function)

Differential Revision: https://phabricator.services.mozilla.com/D34586

--HG--
extra : moz-landing-system : lando
2019-06-12 23:49:04 +00:00
Eden Chuang 2e0a3f0ddb Bug 1546306 - Add an optional aFromChromeContext parameter to nsIScriptError::InitWithWindowID for the case the passed in windowId is zero. r=baku
In some cases, the nsIScriptError is initialized with zero innerWindowId, but is from chrome context.

For cases, this patch adds an optional aFromChromeContext parameter to nsIScriptError::InitWithWindowID, which default value is false.

Differential Revision: https://phabricator.services.mozilla.com/D34508

--HG--
extra : moz-landing-system : lando
2019-06-13 09:50:49 +00:00
Oana Pop Rus b93335c27f Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-13 13:04:19 +03:00
Oana Pop Rus 1133b6716d Merge inbound to mozilla-central. a=merge 2019-06-13 12:55:51 +03:00
Paul Bone 97cbd21e24 Bug 1557928 - Rename the DoNotCare tracer kind r=jonco
Depends on D34675

Differential Revision: https://phabricator.services.mozilla.com/D34703

--HG--
extra : moz-landing-system : lando
2019-06-13 01:11:53 +00:00
Paul Bone dfeb403149 Bug 1557928 - Replace several functions with a single general function r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D34675

--HG--
extra : moz-landing-system : lando
2019-06-13 01:11:54 +00:00
Paul Bone 314393ad7b Bug 1557928 - Fix obsolete comments r=jonco
IsMarkingTracer no-longer exists, so remove one comment that refers to it
and fix another comment.

Differential Revision: https://phabricator.services.mozilla.com/D34674

--HG--
extra : moz-landing-system : lando
2019-06-13 01:11:56 +00:00
Paul Bone 256fa598e8 Bug 1557928 - Use the UnmarkGray tracekind for AssertNonGrayTracer r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D34673

--HG--
extra : moz-landing-system : lando
2019-06-13 06:06:11 +00:00
Adam Holm 46d3b5f507 Bug 1467191 - Unifies some implementations of CacheIR ops that perform a callVM. r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D31702

--HG--
extra : moz-landing-system : lando
2019-06-13 02:28:50 +00:00
Adam Holm f8f9b8becc Bug 1467191 - Unified IonCacheIRCompiler::calledPrepareVMCall_ and BaselineCacheIRCompiler::inStubFrame_ into CacheIRCompiler::preparedForVMCall_. r=mgaudet
Member variables `calledPrepareVMCall_` and `inStubFrame_` served the same purpose for their classes.
Unified them in CacheIRCompiler.

Differential Revision: https://phabricator.services.mozilla.com/D33526

--HG--
extra : moz-landing-system : lando
2019-06-13 02:25:36 +00:00
Adam Holm 6e4e4786b3 Bug 1467191 -Unified IonCacheIRCompiler and BaselineCacheIRCompiler's callVM and callVMInternal methods in CacheIRCompiler. r=mgaudet
Base commit for bug 1467191.

Differential Revision: https://phabricator.services.mozilla.com/D33524

--HG--
extra : moz-landing-system : lando
2019-06-13 02:23:26 +00:00
Adam Holm c3861ce19d Bug 1467191 - Moving BaselineCacheIRCompiler and IonCacheIRCompiler into their respective headers. r=mgaudet
Base commit for bug 1467191. Moves declarations of BaselineCacheIRCompiler and IonCacheIRCompiler
into their respective header files.

Differential Revision: https://phabricator.services.mozilla.com/D33521

--HG--
extra : moz-landing-system : lando
2019-06-13 02:20:35 +00:00
Adam Holm 70dbabb58d Bug 1467191 - Moving BaselineCacheIRCompiler inside js::jit namespace. r=mgaudet
Base commit for patch for bug 1467191 that fixes inconsistencies in
namespace use between BaselineCacheIRCompiler and IonCacheIRCompiler.

Differential Revision: https://phabricator.services.mozilla.com/D33516

--HG--
extra : moz-landing-system : lando
2019-06-13 02:06:34 +00:00
Andrea Marchesini bb718d74fc Bug 1490044 - Remove DOMPrefs. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D33510

--HG--
extra : moz-landing-system : lando
2019-06-13 09:02:03 +00:00
Jan de Mooij cf29e09a41 Bug 1558801 - Change PrivateScriptData consts array to BigInt array. r=tcampbell
Since bug 1535137 the consts array only stores `BigIntValues` so we can change
it to a `BigInt` array. This will also make it easier to fix bug 1535154.

Differential Revision: https://phabricator.services.mozilla.com/D34712

--HG--
extra : moz-landing-system : lando
2019-06-12 16:18:22 +00:00
Andreea Pavel 9d535a8d72 Backed out 4 changesets (bug 1557928) SM build bustages on a CLOSED TREE
Backed out changeset 5e5b8a770b18 (bug 1557928)
Backed out changeset 6096454af6f1 (bug 1557928)
Backed out changeset 618afaab2634 (bug 1557928)
Backed out changeset ef396dbaecf3 (bug 1557928)
2019-06-13 04:07:17 +03:00
Paul Bone ee87fa7f84 Bug 1557928 - Rename the DoNotCare tracer kind r=jonco
Depends on D34675

Differential Revision: https://phabricator.services.mozilla.com/D34703

--HG--
extra : moz-landing-system : lando
2019-06-12 16:23:47 +00:00
Paul Bone f2b96f7abf Bug 1557928 - Replace several functions with a single general function r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D34675

--HG--
extra : moz-landing-system : lando
2019-06-12 12:15:22 +00:00
Paul Bone 6acfc9f675 Bug 1557928 - Fix obsolete comments r=jonco
IsMarkingTracer no-longer exists, so remove one comment that refers to it
and fix another comment.

Differential Revision: https://phabricator.services.mozilla.com/D34674

--HG--
extra : moz-landing-system : lando
2019-06-12 12:14:49 +00:00
Paul Bone 109fd59d37 Bug 1557928 - Use the UnmarkGray tracekind for AssertNonGrayTracer r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D34673

--HG--
extra : moz-landing-system : lando
2019-06-12 16:23:08 +00:00
Ehsan Akhgari b3c4267b3c Bug 1557887 - Part 6: Pass a storage principal to the rest of the call sites for createAboutBlankContentViewer(); r=baku
Differential Revision: https://phabricator.services.mozilla.com/D34460

--HG--
extra : moz-landing-system : lando
2019-06-12 09:07:33 +00:00
Mike Hommey 85e29d1e3b Bug 1557583 - Add a --enable-frame-pointers option. r=chmanchester
We've been relying on frame pointers being indirectly enabled via things
like --enable-profiling for some time, but this doesn't scale because
some things may want frame pointers while wanting --disable-profiling.

So we move MOZ_FRAMEPTR_FLAGS to python configure and add a new option
to decide whether to enable frame pointers or not.

Differential Revision: https://phabricator.services.mozilla.com/D34117

--HG--
extra : moz-landing-system : lando
2019-06-12 22:30:46 +00:00
Ciure Andrei bfcbe2b9d3 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-06-13 06:53:03 +03:00
Ciure Andrei 6aeedae8c4 Merge mozilla-central to mozilla-inbound. a=merge CLOSED TREE 2019-06-13 00:46:01 +03:00
Ciure Andrei cb5d2852cb Merge inbound to mozilla-central. a=merge 2019-06-13 00:42:10 +03:00
Ciure Andrei f069db250c Merge autoland to mozilla-central. a=merge 2019-06-13 00:40:48 +03:00
Andreea Pavel 8552bec485 Backed out changeset 13c976344b69 (bug 1557254) for causing bug 1558836 and bug 1558852 a=backout
--HG--
extra : histedit_source : 62d780cd7c039cde0eb18472a3edf9c51aa20270
2019-06-12 20:27:00 +03:00
Dorel Luca 75f0f73de5 Merge mozilla-central to mozilla-inbound 2019-06-12 15:17:56 +03:00
Jon Coppeard fc3f75f7f3 Bug 1395509 - Track malloc memory used by IndirectBindingMaps associated with modules r=pbone
Use memory tracking APIs to track malloc memory associated with module IndirectBindingMap. These are attached to ModuleObjects and ModuleNamespaceObjects.

Differential Revision: https://phabricator.services.mozilla.com/D34551
2019-06-11 16:56:59 +01:00
Bogdan Tara bf22857a64 Backed out 14 changesets (bug 1552435) for BinASTTokenReaderContext.h related build bustages CLOSED TREE
Backed out changeset d4e3bdd4e494 (bug 1552435)
Backed out changeset 7fad44e18739 (bug 1552435)
Backed out changeset 8acef5541a11 (bug 1552435)
Backed out changeset 3a42d8bda7d0 (bug 1552435)
Backed out changeset 53a13d1d4f6e (bug 1552435)
Backed out changeset b79f0c113d3e (bug 1552435)
Backed out changeset 7f8c607be8f8 (bug 1552435)
Backed out changeset 5d0670db54ef (bug 1552435)
Backed out changeset 368e2dd6ec38 (bug 1552435)
Backed out changeset 0db441d1c2d8 (bug 1552435)
Backed out changeset 4897449d8397 (bug 1552435)
Backed out changeset 4cd2018dbd8b (bug 1552435)
Backed out changeset fd7f9aa70324 (bug 1552435)
Backed out changeset 36ceb8f15cb9 (bug 1552435)
2019-06-12 04:39:49 +03:00
David Teller 641d20716d Bug 1552435 - Propagating upstream changes;r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34483

--HG--
extra : moz-landing-system : lando
2019-06-11 16:12:12 +00:00
David Teller 6c8df2fc11 Bug 1552435 - Connecting the HuffmanPreludeReader;r=arai
Depends on D33951

Differential Revision: https://phabricator.services.mozilla.com/D33952

--HG--
extra : moz-landing-system : lando
2019-06-11 17:38:42 +00:00
David Teller 79c90d1ce9 Bug 1552435 - Attempting to silence spurious warnings;r=arai
Differential Revision: https://phabricator.services.mozilla.com/D33951

--HG--
extra : moz-landing-system : lando
2019-06-11 16:11:20 +00:00
David Teller dc632cc43d Bug 1552435 - Reading Huffman tables of string enums;r=arai
Depends on D33937

Differential Revision: https://phabricator.services.mozilla.com/D33940

--HG--
extra : moz-landing-system : lando
2019-06-11 16:10:49 +00:00
David Teller b4447cf54b Bug 1552435 - Reading Huffman tables of strings, optional strings;r=arai
Depends on D33634

Differential Revision: https://phabricator.services.mozilla.com/D33937

--HG--
extra : moz-landing-system : lando
2019-06-11 16:10:26 +00:00
David Teller bf4c5736b3 Bug 1552435 - Reading Huffman tables of lists;r=arai
Depends on D33633

Differential Revision: https://phabricator.services.mozilla.com/D33634

--HG--
extra : moz-landing-system : lando
2019-06-11 16:09:54 +00:00
David Teller 59a9d2beb2 Bug 1552435 - More data on lists;r=arai
Depends on D33632

Differential Revision: https://phabricator.services.mozilla.com/D33633

--HG--
extra : moz-landing-system : lando
2019-06-11 16:09:27 +00:00
David Teller fa6c071597 Bug 1552435 - Adapting to brotli reading API;r=arai
Depends on D33483

Differential Revision: https://phabricator.services.mozilla.com/D33632

--HG--
extra : moz-landing-system : lando
2019-06-11 16:08:58 +00:00
David Teller b2bde88539 Bug 1552435 - Reading Huffman tables of optional sums;r=arai
Depends on D33482

Differential Revision: https://phabricator.services.mozilla.com/D33483

--HG--
extra : moz-landing-system : lando
2019-06-11 16:08:31 +00:00
David Teller d9360baea0 Bug 1552435 - Reading Huffman tables of sums;r=arai
Depends on D33021

Differential Revision: https://phabricator.services.mozilla.com/D33482

--HG--
extra : moz-landing-system : lando
2019-06-11 16:08:03 +00:00
David Teller 90b1f665ad Bug 1552435 - Overhauling indexed symbols;r=arai
Depends on D32807

Differential Revision: https://phabricator.services.mozilla.com/D33021

--HG--
extra : moz-landing-system : lando
2019-06-11 16:07:39 +00:00
David Teller 063d63dc55 Bug 1552435 - Reading Huffman tables of interfaces, optional interfaces;r=arai
Depends on D32725

Differential Revision: https://phabricator.services.mozilla.com/D32807

--HG--
extra : moz-landing-system : lando
2019-06-11 16:07:37 +00:00
David Teller a88c4dd096 Bug 1552435 - Reading Huffman tables of booleans (the missing bits);r=arai
Depends on D31592

Differential Revision: https://phabricator.services.mozilla.com/D32725

--HG--
extra : moz-landing-system : lando
2019-06-11 16:07:35 +00:00
David Teller d8a28be649 Bug 1552435 - Reading Huffman tables of booleans (general structure);r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31592

--HG--
extra : moz-landing-system : lando
2019-06-11 16:06:19 +00:00
Andreea Pavel 9eda2afac1 Backed out 7 changesets (bug 1401624) for build bustages at MacroAssembler-inl.h on a CLOSED TREE
Backed out changeset 46030572ffde (bug 1401624)
Backed out changeset bccc5a509ebe (bug 1401624)
Backed out changeset 1a488ead5ac5 (bug 1401624)
Backed out changeset caac1da9ae80 (bug 1401624)
Backed out changeset 8f02092ab0b4 (bug 1401624)
Backed out changeset 90a104231405 (bug 1401624)
Backed out changeset d5d97222de6f (bug 1401624)
2019-06-12 20:47:42 +03:00
Masatoshi Kimura 55094bccfc Bug 1557254 - Enable char range check on Nightly/DevEdition and make warnings more dire. r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D34287

--HG--
extra : moz-landing-system : lando
2019-06-11 13:27:16 +00:00
Jon Coppeard e282bc8b5c Bug 1395509 - Track malloc memory used by shapes r=jandem
Use memory tracking APIs to track malloc memory associated with Shapes.  I had to thread FreeOp and BaseShape through in various places so there's enough context.

Differential Revision: https://phabricator.services.mozilla.com/D34377
2019-06-10 16:11:26 +01:00
Jon Coppeard 938d268746 Bug 1395509 - Track malloc memory associated with WeakMap objects r=pbone
Use memory tracking APIs to track malloc memory associated with weak maps.

Differential Revision: https://phabricator.services.mozilla.com/D34376
2019-06-10 16:11:25 +01:00
Jon Coppeard 94009e206b Bug 1395509 - Track malloc memory associated with ctypes objects r=jandem
Use memory tracking APIs to track malloc memory associated with the different ctypes objects.

I ended up creating new public APIs because ctypes currently mostly uses our public APIs, but I actaully don't know why.  I don't think it can be built standalone.  Maybe this should use the internal APIs instead.

Differential Revision: https://phabricator.services.mozilla.com/D34375
2019-06-10 16:11:25 +01:00
Jon Coppeard 85e75b202a Bug 1395509 - Track malloc memory associated with Scopes r=jandem
Use memory tracking APIs to track malloc memory associated with Scopes.

Differential Revision: https://phabricator.services.mozilla.com/D34374
2019-06-10 16:11:25 +01:00
Jon Coppeard a3bf14aee4 Bug 1395509 - Track malloc memory associated with BigInts r=pbone
Use memory tracking APIs to track malloc memory associated with BigInts.

Differential Revision: https://phabricator.services.mozilla.com/D34373
2019-06-10 16:11:25 +01:00
Jon Coppeard d38d044763 Bug 1395509 - Track malloc memory used by JS Map and Set objects r=sfink
Use memory tracking APIs to track malloc memory associated with Map and Set objects.

Differential Revision: https://phabricator.services.mozilla.com/D34371
2019-06-10 16:11:25 +01:00
Ciure Andrei 916d8a7f73 Merge mozilla-central to autoland. a=merge CLOSED TREE 2019-06-13 00:44:53 +03:00
Iain Ireland dd43b90d94 Bug 1558179: Canonicalize all NaNs on hardware that does not generate canonical NaNs natively r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D34403

--HG--
extra : moz-landing-system : lando
2019-06-11 15:16:40 +00:00
Iain Ireland fcf0aa7f56 Bug 1548908: Verify during JS_Init that the hardware NaN is sane r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D33504

--HG--
extra : moz-landing-system : lando
2019-06-11 00:23:41 +00:00
Iain Ireland 98788f0b1c Bug 1401624: Part 8: Convert C-style macros to JS::detail constexprs r=jwalden
Differential Revision: https://phabricator.services.mozilla.com/D33503

--HG--
extra : moz-landing-system : lando
2019-06-12 17:49:52 +00:00
Jason Orendorff 69d4dbd679 Bug 1556119 - Fix 64-byte memory leak in evalInWorker() shell builtin. r=fitzgen
Differential Revision: https://phabricator.services.mozilla.com/D34222

--HG--
extra : moz-landing-system : lando
2019-06-07 19:42:34 +00:00
Gurzau Raul 227f5329f7 Merge inbound to mozilla-central. a=merge 2019-06-12 00:34:32 +03:00
Jan de Mooij 7db26e7b68 Bug 1557664 - Add AutoHoldPrincipals RAII class and use it to fix a leak in the JS shell. r=jwalden
Unfortunately JS_DropPrincipals wants the cx so it's hard to use RefPtr<>.

Differential Revision: https://phabricator.services.mozilla.com/D34148

--HG--
extra : moz-landing-system : lando
2019-06-11 10:11:21 +00:00
Brindusan Cristian ad63669f20 Backed out 14 changesets (bug 1552435) for build bustages on BinASTTokenReaderContext.h. CLOSED TREE
Backed out changeset 8448b970f048 (bug 1552435)
Backed out changeset eaaa17bd90a9 (bug 1552435)
Backed out changeset daa12d2a51ee (bug 1552435)
Backed out changeset ccb6154c8a13 (bug 1552435)
Backed out changeset 3c6703c6ca2c (bug 1552435)
Backed out changeset 0e5b05913043 (bug 1552435)
Backed out changeset 41513cb59f37 (bug 1552435)
Backed out changeset cf5514fae884 (bug 1552435)
Backed out changeset b59bf910f2e9 (bug 1552435)
Backed out changeset 80fff56c7c49 (bug 1552435)
Backed out changeset 27bf02f8977e (bug 1552435)
Backed out changeset 8e09ad83b99b (bug 1552435)
Backed out changeset 8547fb9394eb (bug 1552435)
Backed out changeset 1e4c1b283ba3 (bug 1552435)
2019-06-11 17:33:06 +03:00
Jon Coppeard 13f5533af3 Bug 1539019 - Disallow simulated OOM testing of worker threads because it's not thread safe r=jandem?
Differential Revision: https://phabricator.services.mozilla.com/D34328

--HG--
extra : moz-landing-system : lando
2019-06-11 09:36:56 +00:00
David Teller 54b2fa12fd Bug 1552435 - Propagating upstream changes;r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34483

--HG--
extra : moz-landing-system : lando
2019-06-11 11:38:44 +00:00
David Teller e3f03b3725 Bug 1552435 - Connecting the HuffmanPreludeReader;r=arai
Depends on D33951

Differential Revision: https://phabricator.services.mozilla.com/D33952

--HG--
extra : moz-landing-system : lando
2019-06-11 11:38:44 +00:00
David Teller 588e46bcd0 Bug 1552435 - Attempting to silence spurious warnings;r=arai
Differential Revision: https://phabricator.services.mozilla.com/D33951

--HG--
extra : moz-landing-system : lando
2019-06-11 11:32:24 +00:00
David Teller 193bcbd6d8 Bug 1552435 - Reading Huffman tables of string enums;r=arai
Depends on D33937

Differential Revision: https://phabricator.services.mozilla.com/D33940

--HG--
extra : moz-landing-system : lando
2019-06-11 11:38:17 +00:00
David Teller 71a3d896f3 Bug 1552435 - Reading Huffman tables of strings, optional strings;r=arai
Depends on D33634

Differential Revision: https://phabricator.services.mozilla.com/D33937

--HG--
extra : moz-landing-system : lando
2019-06-11 10:18:14 +00:00
David Teller 8755fa3419 Bug 1552435 - Reading Huffman tables of lists;r=arai
Depends on D33633

Differential Revision: https://phabricator.services.mozilla.com/D33634

--HG--
extra : moz-landing-system : lando
2019-06-11 10:17:52 +00:00
David Teller 3c61f20c98 Bug 1552435 - More data on lists;r=arai
Depends on D33632

Differential Revision: https://phabricator.services.mozilla.com/D33633

--HG--
extra : moz-landing-system : lando
2019-06-11 10:17:24 +00:00
David Teller 5d6bd1f335 Bug 1552435 - Adapting to brotli reading API;r=arai
Depends on D33483

Differential Revision: https://phabricator.services.mozilla.com/D33632

--HG--
extra : moz-landing-system : lando
2019-06-11 10:17:12 +00:00
David Teller 3a075d9c93 Bug 1552435 - Reading Huffman tables of optional sums;r=arai
Depends on D33482

Differential Revision: https://phabricator.services.mozilla.com/D33483

--HG--
extra : moz-landing-system : lando
2019-06-11 10:17:10 +00:00
David Teller 4149bf704b Bug 1552435 - Reading Huffman tables of sums;r=arai
Depends on D33021

Differential Revision: https://phabricator.services.mozilla.com/D33482

--HG--
extra : moz-landing-system : lando
2019-06-11 10:16:05 +00:00
David Teller 6fedf3998c Bug 1552435 - Overhauling indexed symbols;r=arai
Depends on D32807

Differential Revision: https://phabricator.services.mozilla.com/D33021

--HG--
extra : moz-landing-system : lando
2019-06-11 10:15:37 +00:00
David Teller af2f181932 Bug 1552435 - Reading Huffman tables of interfaces, optional interfaces;r=arai
Depends on D32725

Differential Revision: https://phabricator.services.mozilla.com/D32807

--HG--
extra : moz-landing-system : lando
2019-06-11 10:15:15 +00:00
David Teller a32e0dc331 Bug 1552435 - Reading Huffman tables of booleans (the missing bits);r=arai
Depends on D31592

Differential Revision: https://phabricator.services.mozilla.com/D32725

--HG--
extra : moz-landing-system : lando
2019-06-11 10:14:47 +00:00
David Teller 775e453fec Bug 1552435 - Reading Huffman tables of booleans (general structure);r=arai
Differential Revision: https://phabricator.services.mozilla.com/D31592

--HG--
extra : moz-landing-system : lando
2019-06-11 10:14:28 +00:00
Jon Coppeard 3291e3d4b5 Bug 1395509 - Add a separate byte count for malloc allocations r=sfink
Previously I rolled the malloc byte count into a total byte count for each zone but this may adversely affect GC scheduling (e.g. by triggering more non-incremental GCs because allocation volumes appear higher with this change). So that we can land this machinery without disturbing benchmarks too much, this patch splits out the new malloc memory accounting into a separate counter and uses the maxMallocBytes setting as the threshold (default value is 128MB vs 30MB for the GC heap threshold) and a growth factor of 2. This should make the behaviour closer to the original behaviour for now. We can go back and adjust the parameters later to obtain the desired behaviour.

Differential Revision: https://phabricator.services.mozilla.com/D34181
2019-06-07 17:03:08 +01:00
Jon Coppeard 8ade7a6dab Bug 1395509 - Move HeapSize class to gc/Scheduling.h where it belongs r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D34180
2019-06-07 16:58:50 +01:00
Karl Tomlinson c606cdd6d0 Bug 1558131 permit PersistentRooted::init() with RootingContext r=sfink
https://hg.mozilla.org/mozilla-central/rev/79d18ff4fe2853abadab372bc3bc00872f52403e#l1.143
added support for PersistentRooted initialization from a RootingContext.
https://hg.mozilla.org/mozilla-central/rev/d2758f635f72f779f712bf9c6e838868ed53c9f7#l5.97
changed the init() methods to require JSContext but continued to support
RootingContext for constructors.

Differential Revision: https://phabricator.services.mozilla.com/D34318

--HG--
extra : moz-landing-system : lando
2019-06-11 00:41:32 +00:00
Cosmin Sabou 7658be0902 Backed out 6 changesets (bug 1556321, bug 1556430, bug 1167452) for causing multiple regressions.
Backed out changeset 667da63fb2b1 (bug 1556430)
Backed out changeset 5ec3133f6457 (bug 1556321)
Backed out changeset 585157ab153a (bug 1556321)
Backed out changeset 72fc109fe0f2 (bug 1167452)
Backed out changeset 11d3f2265b35 (bug 1167452)
Backed out changeset 37f9bd277c34 (bug 1167452)
2019-06-11 07:04:16 +03:00
Jon Coppeard 7df0d631fd Bug 1395509 - Fix assertions that all tracked memory is removed when a zone is collected r=sfink
The change to split out ZoneAllocator messed up the MemoryTracker code that prints out what failed to be removed by making it run after the Zone destructor which will already assert in the case (but without printing useful information first).

Differential Revision: https://phabricator.services.mozilla.com/D33974
2019-06-06 16:00:17 +01:00
Brindusan Cristian d957131916 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-06-11 12:44:12 +03:00
Yoshi Cheng-Hao Huang 7282e461be Bug 1556762 - Part 3: Use gcReason to distinguish pretenureObj|Str. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D33654
2019-06-11 11:37:01 +02:00
Yoshi Cheng-Hao Huang 44881abeb7 Bug 1556762 - Part 2 : move code to doPretenuring(). r=sfink
This simply separates pretenuring code to another function
doPretenuring(), it doesn't change any logic.

Differential Revision: https://phabricator.services.mozilla.com/D33653
2019-06-11 11:36:44 +02:00
Yoshi Cheng-Hao Huang f606c5e9fd Bug 1556762 - Part 1: move FullBufferReason to each instance, and add a new GCReason. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D33652
2019-06-11 11:36:27 +02:00
Noemi Erli 3b770b4690 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-06-11 06:22:00 +03:00
Jim Blandy 4ff64f4001 Bug 1470558: js/src/vm/Debugger.h: Move forward declarations to top. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D25096

--HG--
extra : moz-landing-system : lando
2019-06-10 20:21:33 +00:00
Jim Blandy a4fc1b9c4f Bug 1470558: Debugger::slowPathOnLeaveFrame: move 'suspending' block a little later. r=jorendorff
Our ultimate goal in this bug is to include information about yields and awaits
in the completion value passed to the `onPop` handler. This means that detecting
when a frame is being suspended becomes just another step in building a
completion value. That change becomes a little clearer if those two steps happen
next to each other.

Differential Revision: https://phabricator.services.mozilla.com/D24996

--HG--
extra : moz-landing-system : lando
2019-06-10 20:21:10 +00:00
Jim Blandy fc95c2347d Bug 1470558: js::Debugger::slowPathOnLeaveFrame should always get a pc for non-WASM frames. r=jorendorff
Add an assertion.

Differential Revision: https://phabricator.services.mozilla.com/D24995

--HG--
extra : moz-landing-system : lando
2019-06-10 20:19:34 +00:00
Jim Blandy f6fc9fdcc0 Bug 1539654: Ensure generator scripts observed by Debugger.Frames are marked as debuggees. r=jorendorff
When a Debugger.Frame refers to a generator/async call, the generator's script
must be marked as a debuggee, so that if the call is resumed, the
JSOP_AFTERYIELD bytecode is compiled to the instrumentation that re-associates
the extant Debugger.Frame with the new concrete frame.

This extends DebugScript with a new field `generatorObserverCount`, akin to
`stepperCount`, which tracks the number of Debugger.Frames referring to the
script if it is a generator script. This count is adjusted when the
`GeneratorInfo` structure is attached to a `DebuggerFrame`, cleared, and
finalized.

Differential Revision: https://phabricator.services.mozilla.com/D32394

--HG--
extra : moz-landing-system : lando
2019-06-10 20:06:34 +00:00
Jim Blandy e49025602e Bug 1539654: Add all-and-only object property patterns to SpiderMonkey's Match.js test library. r=jorendorff
The new export Pattern.OBJECT_WITH_EXACTLY is like the ordinary Pattern
constructor, but also fails to match if the actual value has any extra
properties.

The default behavior of object matching (to ignore additional properties) is
left unchanged, since there are too many extant tests that rely on this behavior
to be worth fixing.

Differential Revision: https://phabricator.services.mozilla.com/D32880

--HG--
extra : moz-landing-system : lando
2019-06-05 00:35:33 +00:00
Jim Blandy 1c4edbdc73 Bug 1539654: Improve error messages from SpiderMonkey test Match library. r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D32393

--HG--
extra : moz-landing-system : lando
2019-06-10 18:51:30 +00:00
Jim Blandy 626777ab35 Bug 1551176: Drop a generator script's stepper count when its Debugger.Frame is GC'd. r=jorendorff
A Debugger.Frame for a generator or async call continues to refer to the same
call across suspensions (awaits and yields). This means that, even as the
underlying concrete frames (InterpreterFrame, BaselineFrame) come and go, the
Debugger.Frame retains its relationship with a particular
AbstractGeneratorObject. When that generator is resumed, the Debugger.Frame
acquires the new concrete frame as its new referent.

Normally, when a stack frame is popped, if it had a Debugger.Frame with an
onStep handler, we decrement the frame's script's stepper count, since that
Debugger.Frame's onStep handler is obviously not going to fire any more; the
frame is dead. But in the case of a generator or async frame, the generator call
may be resumed at some point, so for such frames, we leave the script's stepper
count incremented until the generator call returns, throws, or otherwise exits
permanently.

This means that if a Debugger.Frame and its AbstractGeneratorObject are GC'd, we
must decrement the generator's script's stepper count. Of course, the script
itself may also be being GC'd, in which case we need not do anything.

This patch makes DebuggerFrame::clearGenerator solely responsible for dropping
the stepper count on generator frames. Since DebuggerFrame::finalize already
clears the frame's generator, this takes care of the stepper count automatically.

Differential Revision: https://phabricator.services.mozilla.com/D32273

--HG--
extra : moz-landing-system : lando
2019-06-10 20:17:00 +00:00
Jim Blandy 3518a7f809 Bug 1551176: Make DebuggerFrame::GeneratorInfo retain a pointer to the generator script. r=jorendorff
In later patches in the series, DebuggerFrame needs to be able to access a
generator's script even when the generator object itself is being finalized, so
it's simpler to just hold a reference to it directly.

Differential Revision: https://phabricator.services.mozilla.com/D32272

--HG--
extra : moz-landing-system : lando
2019-06-10 23:42:40 +00:00
Jim Blandy 6a4f411cd7 Bug 1551176: Use DebuggerFrame::generator instead of GetGeneratorObjectForFrame where possible. r=jorendorff
Since GetGeneratorObjectForFrame is a bit involved (it looks up the identifier
'.generator' on the scope chain) and not entirely reliable (it returns nullptr
between the GENERATOR and SETALIASEDVAR .generator opcodes), it's better to
simply fetch the generator from the DebuggerFrame, when one is available.

Since a DebuggerFrame has a generator exactly when there is an entry in
generatorFrames going the other direction, from generator to DebuggerFrame, this
means that Debugger::removeFromFrameMapsAndClearBreakpointsIn can actually do
its job reliably, which lets us remove certain kinky conditions in The Famous
Step Count Assertion of 1874.

In other cases, GetGeneratorObjectForFrame is the only option, and its flakiness
doesn't matter; document those a bit better.

Differential Revision: https://phabricator.services.mozilla.com/D32271

--HG--
extra : moz-landing-system : lando
2019-06-06 12:17:04 +00:00
Denis Palmeiro c32ed0ea49 Bug 1551355 - Use TimeStamp::NowUnfuzzed() instead of TimeStamp::Now() during gecko profiling r=mstange
The profiler will require non-fuzzed timers for accuracy.  Making the switch early will avoid surprises when FuzzyFox is enabled.

Differential Revision: https://phabricator.services.mozilla.com/D31010

--HG--
extra : moz-landing-system : lando
2019-06-10 17:35:42 +00:00
David Teller cf49aea86d Bug 1520001 - Porting binjs_meta to Itertools 0.8;r=arai
Depends on D34129

Differential Revision: https://phabricator.services.mozilla.com/D34130

--HG--
extra : moz-landing-system : lando
2019-06-07 22:46:03 +00:00
David Teller 5daa44745b Bug 1520001 - Propagating binjs_meta 0.5.2 changes to files generated by binast generator;r=arai
Depends on D34128

Differential Revision: https://phabricator.services.mozilla.com/D34129

--HG--
extra : moz-landing-system : lando
2019-06-07 18:55:21 +00:00
David Teller ffd7cd1a22 Bug 1520001 - Updating binast generator to binjs_meta 0.5.2;r=arai
Depends on D34127

Differential Revision: https://phabricator.services.mozilla.com/D34128

--HG--
extra : moz-landing-system : lando
2019-06-07 18:54:59 +00:00
Jeff Walden b5f50ed834 Bug 1556817 - U+FFFE should not be treated as white space. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34469

--HG--
extra : rebase_source : 827a20fa744a5ca2c7cfd3572937a8f548ca958f
extra : amend_source : 0d182034da1f15df49dc42cb720700e5f6438a8a
extra : source : f877ed444562df03ef9ee92da3099e2f0e4e7f07
2019-06-04 11:59:33 -07:00
Jeff Walden 2f764805bf Bug 1557778 - Extend unicode::IsSpaceOrBOM2 to the full 32-bit range. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34189

--HG--
extra : rebase_source : 049d7705dcdaf924bda6faa84869846ce8a5f70c
2019-06-04 10:34:05 -07:00
Jeff Walden 148e9f92dc Bug 1557791 - Move retrievability into the possible types in |ScriptSource::data| so that "retrievable" applies only when it is a sensible concept. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34206

--HG--
extra : rebase_source : 10f49c54a95a50080eba313685a1270a2c046d4b
2019-06-04 15:12:20 -07:00
Jeff Walden d703325da2 Bug 1557791 - Rename initializeWithCompressedSource so that it's clear it's only used for unretrievable source. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34205

--HG--
extra : rebase_source : 87c59b8cce7eba6de0e7894aeaf00b618931cd62
2019-06-06 18:40:41 -07:00
Jeff Walden 82d2bc58af Bug 1557791 - Rename initializeUncompressedSource so that it's clear it's only used for unretrievable source. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34204

--HG--
extra : rebase_source : b7bb7bb0fa95700f22e52627452c5c1aa97fc45b
2019-06-06 18:33:47 -07:00
Jeff Walden 8a69457f2a Bug 1557791 - Clean up how off-thread compressed source is installed in ScriptSources formerly containing uncompressed source. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34203

--HG--
extra : rebase_source : 9e106d1b35b23f422c0c25ae92ae152cd1d3de24
2019-06-06 18:08:30 -07:00
Jeff Walden c65e02cd71 Bug 1557791 - Introduce |{un,}compressedData<Unit>()| functions that expose |const CompressedData<Unit>&|. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34202

--HG--
extra : rebase_source : 35910a40df9feec55f6f0ac284428812c0e8785d
2019-06-06 14:09:42 -07:00
Jeff Walden 1207e001c8 Bug 1557791 - Use isCompressed/isUncompressed rather than direct type-testing of |data|. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34200

--HG--
extra : rebase_source : eb6fd169bd76b58253d820a365b548a8f95f7be1
2019-06-06 13:46:58 -07:00
Jeff Walden 7562778cb3 Bug 1557791 - Split |ScriptSource::{Unc,C}ompressed| into a |*Data| class identical to the current class, and fresh classes of identical name that inherit from it -- anticipating when those fresh classes will statically encode retrievability. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34199

--HG--
extra : rebase_source : 9ec3bff5e9a96f88d21c26e6a4edf1171df164dc
2019-06-06 13:06:40 -07:00
Jeff Walden e200e0d22c Bug 1557791 - Rename {,un}compressedSourceIs to just plain old is{Unc,C}ompressed. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34198

--HG--
extra : rebase_source : 18caafe33f35f45f8ab48bc1959b2920b3f93d51
2019-06-05 11:32:39 -07:00
Jeff Walden a25139eb2f Bug 1557791 - Prefix Source{En,De}coder with Unretrievable for a skosh about what their implementations should be doing. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34197

--HG--
extra : rebase_source : 8fba51bfb8c80462ecaadc7b4263616e178201c0
2019-06-04 18:36:13 -07:00
Jeff Walden cd6a1966d9 Bug 1557791 - Rename xdrUncompressedSource to xdrUnretrievableUncompressedSource for a skosh more clarity within its implementation. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D34195

--HG--
extra : rebase_source : aa23f0e0c4b4c8c944ce1e58b6ea22ee4a62f29a
2019-06-04 18:32:53 -07:00
Iain Ireland e68b24eb5b Bug 1548908: Remove IsCanonical and simplify StructuredCloneReader r=tcampbell
IsCanonical was only used in StructuredCloneReader::CheckDouble. Two of CheckDouble's three uses already canonicalized the double before checking it, and the third *should* have already done so.

Differential Revision: https://phabricator.services.mozilla.com/D29870

--HG--
extra : moz-landing-system : lando
2019-06-03 15:59:29 +00:00