Jan de Mooij
6d0be5a5cf
Bug 1466121 part 2 - Make Compartment and Zone classes instead of structs. r=luke
...
--HG--
extra : rebase_source : 1394dc86b035340f99c241f3ee1af5dd407bdb67
2018-06-07 16:45:04 +02:00
Jan de Mooij
f7fb3be6ec
Bug 1466121 part 1 - Rename JSCompartment to JS::Compartment. r=luke
...
--HG--
extra : rebase_source : cd7140ecda54f0caa02a96f562167b3c9a107450
2018-06-07 16:44:40 +02:00
Jan de Mooij
156284156a
Bug 1363214 - Remove JS::Realm/JSCompartment inheritance. r=jonco
...
--HG--
extra : rebase_source : ad63de7c6676532640659d1fccced7f83798e06d
2018-06-06 14:30:52 +02:00
Jon Coppeard
4d20a29316
Bug 1466792 - Update out-of-date memory allocation comments r=sfink
2018-06-06 10:54:59 +01:00
André Bargull
272b9eeecd
Bug 1464845 - Remove js_strdup and JS_strdup. r=Waldo
2018-06-04 13:34:06 -07:00
Andreea Pavel
4ced6e8b2d
Merge mozilla-central to autoland. a=merge
2018-06-03 07:27:01 +03:00
Emilio Cobos Álvarez
1e9c395548
Bug 1466168: Remove mozilla::Forward in favor of std::forward. r=froydnj
...
Same approach as the other bug, mostly replacing automatically by removing
'using mozilla::Forward;' and then:
s/mozilla::Forward/std::forward/
s/Forward</std::forward</
The only file that required manual fixup was TestTreeTraversal.cpp, which had
a class called TestNodeForward with template parameters :)
MozReview-Commit-ID: A88qFG5AccP
2018-06-02 09:33:26 +02:00
Jan de Mooij
112114fba6
Bug 1465163 - Some UbiNode changes for same-compartment realms. r=fitzgen
2018-06-01 19:23:06 +02:00
Emilio Cobos Álvarez
fffb25b74f
Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
...
This was done automatically replacing:
s/mozilla::Move/std::move/
s/ Move(/ std::move(/
s/(Move(/(std::move(/
Removing the 'using mozilla::Move;' lines.
And then with a few manual fixups, see the bug for the split series..
MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Jan de Mooij
f3fe2d13d4
Bug 1465472 - Remove the atoms realm/compartment. r=jonco
...
Some of the less trivial changes:
* When we allocated a symbol, we used the atom realm's RNG to create a hash code [0]. Instead of this I added a RNG for this to the runtime.
* IsCompilingWasm returned true if the JitContext's realm is nullptr, but that's now also true when we initialize the trampolines stored in the atoms zone. To fix that I added a CompileZone* to JitContext, in addition to the CompileRuntime and CompileRealm, and we now check the zone instead of the realm in IsCompilingWasm.
* JSContext::hasEnteredRealm is only called in DEBUG builds so I made hasEnteredRealm and enterRealmDepth_ #ifdef DEBUG.
2018-05-31 12:53:26 +02:00
Jan de Mooij
ce3eb7d5c0
Bug 1464374 part 2 - Pass JS::Realm* instead of JSCompartment* to CallSetup. r=bz,luke
...
The principals are on the realm so we need a realm instead of a compartment. Also adds js::GetNonCCWObjectRealm to get the realm of a non-CCW object.
2018-05-31 11:28:48 +02:00
Jan de Mooij
09c4068fa0
Bug 1464134 part 1 - Fix various places to use Realm instead of JSCompartment. r=luke
2018-05-31 11:28:48 +02:00
Steve Fink
0680fed494
Bug 1464266 - Rename GCForReason to NonIncrementalGC, r=jonco
...
--HG--
extra : topic : GCForReason
extra : rebase_source : e81bf7bb8ca0824f8b63f25a46ccbe26c4002325
2018-05-24 16:19:18 -07:00
Jan de Mooij
45e968b1dd
Bug 1464134 part 8 - Make IterateHeapUnbarriered and related code use realms instead of compartments. r=jonco
2018-05-30 20:14:19 +02:00
Jan de Mooij
31c08cb474
Bug 1464036 part 2 - Give JSID_EMPTY its own jsid tag and clean up jsid code a bit. r=jonco
2018-05-30 13:51:58 +02:00
Philip Chimento
fb2e0702aa
Bug 1464912 - Add exposeToActiveJS specialization for JSString. r=sfink
2018-05-28 14:47:33 -07:00
Jan de Mooij
7148cd7d35
Bug 1464036 - Remove PropertyInfo constructor to keep MSVC from generating static initializers. r=bz
...
--HG--
extra : rebase_source : c59d1878615029c7c8b075f4ec288daef77414c6
2018-05-26 14:14:10 +02:00
Jon Coppeard
f00009e1f9
Bug 1459577 - Check expected types with static assertions in GCPolicy implementations r=jandem
2018-05-25 16:07:56 +01:00
Jon Coppeard
d3bd086af9
Bug 1460341 - Replace GCPolicy<T>::initial() with SafelyInitialized<T>() r=Waldo
2018-05-25 10:01:25 +01:00
Robin Templeton
d94dd48d6f
bug 1366287 - Part 3: Define the BigIntObject class for BigInt wrapper objects. r=jwalden
...
--HG--
extra : rebase_source : 13c0fad1858df84252c4a796fcf3c2d2e08009a6
2018-05-11 19:43:45 -07:00
Robin Templeton
82800930df
bug 1366287 - Part 2.1: Track GMP memory allocation from XPCOM. r=njn
...
Based on similar functionality for ICU. Define a GMPReporter class and
use its methods for libgmp allocation.
--HG--
extra : rebase_source : 4b536f8a331146109f1cbecf7246f5d4063ec457
2018-05-11 19:42:49 -07:00
Robin Templeton
de41c625dd
Bug 1366287 - Part 1.0: Define a new BigInt primitive type, with a GDB prettyprinter, Rust binding support, and a new out-of-line TraceKind. (Disabled by default, implemented only incompletely, currently passing --enable-bigint will disable JITs, will be flipped on Eventually once every sub-aspect is in place, Don't Have A Cow, Man.) r=jwalden, r=Ms2ger, r=sfink
...
--HG--
extra : rebase_source : aa13bd94bc6157ff8134894e3ba2e7a2b53e28d9
2018-05-24 11:26:09 -07:00
Jon Coppeard
02d634159d
Bug 1463723 - Remove ubi::Census' pointer to the atoms zone r=fitzgen
2018-05-24 09:40:46 +01:00
Steve Fink
e1fedf5974
Bug 1442722 - Move scope into JSStructuredData, r=baku,jorendorff
...
--HG--
extra : topic : clone.refactor
extra : rebase_source : 657bfd1a4c87de0a27c99e685adbf739c907ed6c
2018-04-03 11:17:33 -07:00
Steve Fink
8b2be29d0a
Bug 1456512 - Move JS::operator==(GCCellPtr,GCCellPtr) to the global scope to avoid shadowing, r=jonco
...
--HG--
extra : topic : gray.crash
extra : rebase_source : 0d6f29c45607b980072286cdc77b8b57c9336aa1
2018-05-18 13:43:14 -07:00
Jeff Walden
0128813edd
Bug 1462261 - Abandon the idea of HashTableEntry being "POD", make its constructor explicitly initialize HashTableEntry::keyHash, give it a destructor that destroys the stored T if the entry is live, and call both constructor and destructor in the necessary places. r=jandem
...
--HG--
extra : rebase_source : 99c72ac86fa32d683397c8060d58872617153976
2018-05-16 14:18:11 -07:00
Jeff Walden
5bd2e61e1d
Bug 1462261 - Don't use AlignedStorage2 to implement HashTableEntry. r=jandem
...
--HG--
extra : rebase_source : 79e9c2287f8e443ff5da1c96f3707b8d066099fc
2018-05-16 13:29:52 -07:00
Jan de Mooij
f820ec7afa
Bug 1461938 part 5 - Some atoms compartment/realm related changes. r=jonco
2018-05-18 15:18:23 +02:00
Jan de Mooij
969bbf2190
Bug 1461938 part 1 - Store JS::Realm* instead of JSCompartment* in JSContext. r=luke
...
--HG--
extra : rebase_source : 7af7e5854bdbe0d750a13e0e8c70a71c2c5f88c3
2018-05-17 18:02:40 +02:00
Jan de Mooij
575aec161b
Bug 1461677 - Rename compartment to realm in the memory reporting code. r=njn
2018-05-17 16:15:18 +02:00
Jeff Walden
7e7300c162
Bug 1461556 - Call memset on a void*, not a T*, in js_delete_poison to avoid memset-on-nontrivial warnings with gcc that don't matter for an object whose lifetime is about to end. r=jandem
2018-05-16 10:44:54 -07:00
Jeff Walden
0e6638e74f
Bug 1461556 - Don't use mozilla::PodZero in a bunch of places to initialize values of non-trivial type. r=jandem
2018-05-15 09:31:24 -07:00
André Bargull
4782ef15d6
Bug 1461928 - Part 2: Add length member to AutoArrayRooter and change AutoGCRooter's tag to an enum class. r=jonco
...
--HG--
extra : histedit_source : 5e1137c64bc3878264ed621852a1d952e4e8c1d7
2018-05-16 05:23:44 -07:00
Jon Coppeard
65b2944794
Bug 1461751 - Simplify module resolve hook to be a function pointer r=luke r=baku
2018-05-16 11:59:09 +01:00
Andi-Bogdan Postelnicu
4644e05661
Bug 1461600 - avoid doing memset on ServoSizes since it's not POD. r=njn
...
MozReview-Commit-ID: 4jjLGVDgXWV
--HG--
extra : rebase_source : ae37df32311382f56381f8b826850b8784bd4038
2018-05-15 14:02:11 +03:00
Markus Stange
68470bc3c0
Bug 1461555 - Rename PseudoStack to ProfilingStack. r=njn
...
This also changes many references to the 'pseudo stack' to refer to the 'label
stack' instead. The label stack is one of the two stacks that are managed by
the profiling stack, the other stack being the JS interpreter stack.
MozReview-Commit-ID: Ed0YMMeCBY8
--HG--
extra : rebase_source : 5675d670f424c7d7dda04bafc2b3431fa2485e3c
2018-05-15 01:03:11 -04:00
Markus Stange
633ac66e7f
Bug 1461555 - Rename ProfileEntry to ProfilingStackFrame. r=njn
...
The term "entry" is already used for elements in the profile buffer.
MozReview-Commit-ID: 1aB22V6veQh
--HG--
extra : rebase_source : c664eb4d6bed6cb74ba8a1b67ea99bd8ca57bcf7
extra : source : 3264c0cc0027b240b55bd3aebf27263b1e1d1cc0
2018-05-15 01:14:03 -04:00
Csoregi Natalia
00dd116638
Merge inbound to mozilla-central. a=merge
2018-05-15 12:53:24 +03:00
Steve Fink
d41b1026dc
Bug 1460957 - Make shadow::Symbol to remove mayBeOwnedByOtherRuntimeSlow, r=jonco
...
--HG--
extra : topic : isperm
extra : rebase_source : 5b8dc0d2aa2ea29860d9a126a9624bca68f00041
2018-05-10 22:02:59 -07:00
Steve Fink
bb18c240a9
Bug 1460957 - Make inlineable isPermanentAtom, r=jonco
...
--HG--
extra : topic : isperm
extra : rebase_source : 246bc26a0f3d55c752e4f368680a490c9dcb0e16
2018-05-07 16:42:54 -07:00
Markus Stange
73800e02dd
Bug 1461053 - Treat SP marker frames as their own kind, instead of lumping them together with label frames. r=njn
...
MozReview-Commit-ID: 5nQEIgBY4SP
--HG--
extra : rebase_source : 9b59e41fdf62e86941104248d9c0cf08b73736f2
2018-05-14 23:30:32 -04:00
Markus Stange
818ad4ea69
Bug 1461053 - Rename Cpp frames to label frames in the ProfilingStack. r=njn
...
The name Cpp was confusing, because C++ functions are in the native stack, not
in the pseudo stack. The pseudo stack only contains frames for manually
instrumented code that uses AutoProfilerLabel, and JS frames.
MozReview-Commit-ID: 9ptfhREo0qy
--HG--
extra : rebase_source : 76a1a32acb4c946aeb2ad45e904e419c1c9e2ad1
2018-05-14 23:21:29 -04:00
Narcis Beleuzu
25e3477b34
Merge mozilla-central to autoland. a=merge CLOSED TREE
2018-05-15 00:39:41 +03:00
Greg Tatum
596f2f4219
Bug 1426124 - Discard JIT frames from native stacks in the profiler; r=jandem,mstange
...
MozReview-Commit-ID: 9O92eRm5adW
--HG--
extra : rebase_source : ec4e2a5180f191b9c0946143f6e01eaf25028ce7
2018-04-25 10:08:38 -05:00
Brindusan Cristian
1df25b391a
Merge inbound to mozilla-central. a=merge
2018-05-12 12:47:14 +03:00
Andrew McCreight
6c4a1d23f2
Bug 1460636 - Don't trace jsids on ObjectGroup in the cycle collector. r=jonco,sfink
...
For some reason, the CC spends a lot of time tracing jsids on
ObjectGroups when an addon is installed. This patch avoids that by
adding a canSkipJsids flag to JSTracer, and using it in
ObjectGroup::traceChildren. If this is true, then the tracer is free
to not report every jsid. This flag is set to true for the two CC
tracers.
MozReview-Commit-ID: CWFqQEr0SxV
--HG--
extra : rebase_source : cc31c22717f8990166454db191e0d40c145e09f0
2018-05-11 11:38:58 -07:00
Jeff Walden
c079a4b0d4
Use more-normal formatting of HashTableEntry member functions, now that the prior consistent pattern is no longer consistent. No bug, r=me as trivial
...
--HG--
extra : rebase_source : 3b31ce414354ff457b1abe23d43da6655419824a
2018-05-08 14:48:11 -07:00
Andi-Bogdan Postelnicu
c4f2c57166
Bug 1416666 - Avoid doing a memset on a non-POD structure. r=jwalden
...
--HG--
extra : rebase_source : c1e3c4fb42693e552e037a35a489d4bbff6d5f98
2018-05-08 15:35:29 +03:00
Luke Wagner
922e46b318
Bug 1459761 - Baldr: relax WebAssembly.Memory GC heuristic (r=lth,jonco)
2018-05-14 09:21:46 -05:00
Jan de Mooij
be1d10ec53
Bug 1459258 - Improve InlineMap OOM testing and fix some issues. r=jonco
2018-05-08 15:05:41 +02:00