Commit Graph

2668 Commits

Author SHA1 Message Date
Iain Ireland
28a1aa14d3 Bug 1505902: Clean up private Value representation r=djvj
Our previous representation of private values assumed that the private pointer was aligned, and did some bit twiddling to try to disguise it as a double. Since bug 1293313, it has been unnecessary to set the top bit for a double, so that bit twiddling is unnecessary. There are actual use cases where private values are unaligned, so we should fix this.

While cleaning this up, I also removed unboxPrivateValue, because its only use could be better written using loadPrivateValue directly.

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

--HG--
extra : moz-landing-system : lando
2019-07-16 19:10:30 +00:00
Ted Campbell
8df08d5f7d Bug 1564927 - Move off-thread API for BinAST to the right header. r=jwalden
Also reorder functions in OffThreadScriptCompilation to group by
data source type.

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

--HG--
extra : moz-landing-system : lando
2019-07-15 22:43:28 +00:00
Jan de Mooij
5ea23033d2 Bug 1565175 - Fix HeapSnapshotHandler to not add nodes to |visited| until they're written to the core dump. r=fitzgen
Because ShouldIncludeEdge considers the |origin| node as well, it was possible for
the old code to 'miss' nodes and never write them to the core dump even though we
also wrote some edges with the node as referent.

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

--HG--
extra : moz-landing-system : lando
2019-07-11 18:41:43 +00:00
Jeff Walden
3b5e9c949f Bug 1564589 - Implement an infallible JS::NumberToString that stores null-terminated ToString(Number value) into a static-length buffer. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D37487

--HG--
extra : moz-landing-system : lando
2019-07-10 23:55:09 +00:00
Jan de Mooij
93d6f816f0 Bug 1564349 part 1 - Convert Baseline/Ion/NativeRegExp prefs from ContextOptions to JitOptions. r=nbp,smaug
Using process-wide prefs is consistent with the other JIT options and is simpler
to work with (one place to initialize for all runtimes).

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

--HG--
extra : moz-landing-system : lando
2019-07-10 09:43:39 +00:00
Boris Zbarsky
0809eb5853 Bug 1561887 part 1. Add an overload of JS::ObjectIsMarkedGray that works on TenuredHeap. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D36868

--HG--
extra : moz-landing-system : lando
2019-07-08 22:52:51 +00:00
Greg Tatum
bb7857b872 Bug 1559486 - Remove scriptFilename from RecordAllocationInfo; r=jimb
Differential Revision: https://phabricator.services.mozilla.com/D36651

--HG--
extra : moz-landing-system : lando
2019-07-04 05:19:58 +00:00
Sylvestre Ledru
131d0c6a02 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-07-06 08:18:28 +00:00
Greg Tatum
e84b12e2ee 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-07-01 21:52:58 +00:00
Andrea Marchesini
fc60290383 Bug 1557781 - Better life-time management for BodyStream/FetchStream - part 3 - JS::ReadableStreamReleaseCCObject, r=jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D36466

--HG--
extra : moz-landing-system : lando
2019-07-01 20:01:17 +00:00
Andrea Marchesini
69ac3c7729 Bug 1557781 - Better life-time management for BodyStream/FetchStream - part 1 - JSCLASS_PRIVATE_IS_NSISUPPORTS, r=jonco,jorendorff
Differential Revision: https://phabricator.services.mozilla.com/D35528

--HG--
extra : moz-landing-system : lando
2019-07-01 19:59:33 +00:00
Karan Sapolia
638fd4ee57 Bug 1557112 - Remove THREAD_TYPE_GCHELPER from the js::ThreadType enum. r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D34975

--HG--
extra : moz-landing-system : lando
2019-06-14 20:42:12 +00:00
Csoregi Natalia
29f8e6aebd Merge inbound to mozilla-central. a=merge 2019-06-29 12:59:53 +03:00
Kagami Sascha Rosylight
8e0f5ebfdd Bug 1560658: Add SameValueZero to mfbt/FloatingPoint.h r=jwalden
Add ES-defined SameValueZero and replace existing code.

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

--HG--
extra : moz-landing-system : lando
2019-06-28 23:57:13 +00:00
shindli
67c134b492 Merge mozilla-central to inbound. a=merge CLOSED TREE 2019-06-29 02:23:28 +03:00
Christian Holler
fa2fa5573f Bug 1435532 - Prevent/crash on large allocations in fuzzing JS shell. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D28973

--HG--
extra : moz-landing-system : lando
2019-06-28 18:59:55 +00:00
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
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
Gurzau Raul
24d0e8e2ba Merge inbound to mozilla-central. a=merge 2019-06-27 00:54:09 +03: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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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