Commit Graph

2394 Commits

Author SHA1 Message Date
Jon Coppeard
1965758811 Bug 1476012 - Remove dependency of Principals.h on StructuredClone.h r=sfink 2018-07-17 13:08:55 +01:00
Andrea Marchesini
ceea0172b0 Bug 1473587 - CSP Violation events should have the correct sample for inline contexts, r=jorendorff, r=ckerschb 2018-07-16 17:58:04 +02:00
Andreea Pavel
b0e30af17e Merge mozilla-inbound to mozilla-central. a=merge 2018-07-13 00:51:26 +03:00
Matt Howell
638dfe2577 Bug 1052582 Part 2 - Create and use a separate malloc arena for ArrayBuffer contents. r=sfink
MozReview-Commit-ID: 7IlFvr3hoA8

--HG--
extra : rebase_source : 862a259389e7085f4b5c6cb2b27d3f72627e36b3
2018-05-23 14:57:42 -07:00
Matt Howell
76ff0a0612 Bug 1052582 Part 1 - Support an arena parameter for js_pod_malloc and friends. r=sfink
This patch adds new functions taking the arena parameter rather than overloading
existing functions, because there are already overloads of calloc that take
two size_t parameters (which arena_id_t is an alias for), so it couldn't have
been done that way, and malloc and realloc needed to be consistent with calloc.

MozReview-Commit-ID: 1MUXoCUgJWO

--HG--
extra : rebase_source : 16261ba4e802efa0bc65878d490ae9b62aa35797
2018-06-29 13:06:14 -07:00
Kristen Wright
19310fa39a Bug 1466979 - Separate JS::ubi::EdgeVectorTracer and JS::ubi::SimpleEdgeRange into UbiNodeUtils.h r=jimb
Separated SimpleEdgeRange into the new UbiNodeUtils.h, updated build files, changed SimpleEdgeRange::init to SimpleEdgeRange::addTracerEdges, created bool addEdge to add new edges to the vector.
2018-05-31 14:13:00 -07:00
Wander Lairson Costa
a6edc697ce Bug 1473818: Fix global constructors count regression r=jonco
Bug 1465505 moved from PRJ_Now to mozilla::TimeStamp. As a side effect,
it introduced a few extra global constructors calls.

This patch fixes it.

MozReview-Commit-ID: 9VX83JZIyds

--HG--
extra : rebase_source : 01a22a8eea3ab224dbaa1a93d2a73ebb9ab6b6ea
2018-07-06 18:28:08 -03:00
Matthew Gaudet
5d0bf9c261 Bug 1469044: [Part 2] Remove remainder of MathCache r=jandem
--HG--
extra : rebase_source : 587d69130f2c6d50ca8e14bd0ccaf7a4f58285e8
2018-07-09 16:52:16 -04:00
Jan de Mooij
4da897f207 Bug 1468752 part 2 - Define Wrapper::wrapperHandler in Wrapper.h. r=bz
IsCrossCompartmentWrapper calls IsWrapper and then had an out-of-line call to Wrapper::wrapperHandler, but that's just loading the proxy handler and we already did that in IsWrapper. Having Wrapper::wrapperHandler in the header file means the compiler can compile IsCrossCompartmentWrapper much better.
2018-07-06 12:53:38 +02:00
Jan de Mooij
0e1a7bcb9f Bug 1468752 part 1 - Define js::IsCrossCompartmentWrapper in Wrapper.h. r=bz
js::UninlinedIsCrossCompartmentWrapper is used for some DEBUG asserts to avoid #include cycles.
2018-07-06 12:52:03 +02:00
Jeff Walden
90507ffb7a Bug 1426909 - Introduce a new mfbt/Utf8.h header for UTF-8-related functionality, including a UTF-8 code unit type that is compatible with, but doesn't directly interconvert with, |char|. r=froydnj
--HG--
extra : rebase_source : 00760186060d7e72fac783af3fc5595a6057feca
2018-01-11 11:29:53 -07:00
Wander Lairson Costa
4c52aa4d3f Bug 1465505: Replace PRMJ_Now() by mozilla::TimeStamp r=jonco
Notice as TimeStamp is not an integral type, it can't be wrapped by
mozilla::Atomic. However, we wrap it in MainThreadData to assure it only
is accessed from the main thread.

Another issue is that TimeStamp class does allow some operations on a
Null value, with assertions on debug builds.

MozReview-Commit-ID: 9GPNDUooQmI

--HG--
extra : rebase_source : e2b5fe81a4c5c696425583a04395f2ae79aeaccc
2018-07-04 16:55:11 -03:00
Jan de Mooij
a94a5f8023 Bug 1472132 - Don't inline non-scripted functions in Ion when constructing and new.target != the callee. r=anba 2018-07-02 18:34:02 +02:00
Jeff Walden
83a1c5a302 Fully privatize the contents of the JS::Value union now that it cannot be POD because it has a non-trivial default constructor. No bug, r=me as trivial
--HG--
extra : rebase_source : 222290ba211e2fbe1693498a42d43a2064af45b8
2018-06-26 16:18:55 -07:00
André Bargull
4db79fda8c Bug 1471931 - Part 5: Use MakeUnique in more places and replace manual js_delete with UniquePtr. r=sfink
--HG--
extra : rebase_source : cb6018da067352c1c1a04c3ff0385fa0cf70e020
2018-06-29 02:33:51 -07:00
Ted Campbell
ab67c3fb81 Bug 1471272 - Add [SMDOC] tags for in-source documentation. r=jandem,nbp
MozReview-Commit-ID: I038aYgvwe4
2018-06-28 15:23:25 -04:00
André Bargull
1eba073f7e Bug 1467438 - Part 4: Remove ScopedJSFreePtr, ScopedJSDeletePtr, and ScopedReleasePtr. r=sfink 2018-06-07 12:33:40 -07:00
Jon Coppeard
5aa3632b14 Bug 1468867 - Rename heap state checking functions r=sfink 2018-06-15 15:05:06 -07:00
Jan de Mooij
d4eded1ef6 Bug 1468252 part 4 - Add JSObject::nonCCWGlobal() and use it in a few places. r=luke
--HG--
extra : rebase_source : 095b86326a1911cf68956e4a4133bec4a8b1bdb9
2018-06-14 09:07:31 -07:00
Tom Schuster
9aeac2c930 Bug 1329321 - Add a soft-fail mechanism for JS ObjectOpResult. r=jorendorff
--HG--
extra : rebase_source : 168a0a678d62879dce0075ecedb8fb0703ceb8c1
2018-05-16 22:11:25 +02:00
Jan de Mooij
2b3ff5c90a Bug 1468219 - Rename JS_InitStandardClasses to JS::InitRealmStandardClasses, remove obj argument. r=anba
--HG--
extra : rebase_source : 5c092c37298e89096b85524e92d143ff2447f31f
2018-06-13 12:47:47 -07:00
Jan de Mooij
de211d96a6 Bug 1468137 - Remove JS_Get*Prototype APIs; use JS::GetRealm*Prototype instead. r=evilpie
--HG--
extra : rebase_source : 9d5e815b83b3a71ab3e74fc2c0e2feb1009f2af9
2018-06-13 12:47:40 -07:00
Steve Fink
bc2be79d2a Bug 1405374 - Register JS threads with the profiler, r=jonco
--HG--
extra : rebase_source : c29dffb341bff5e3f020ad0be6d48c045e178a5c
2018-06-07 15:37:08 -07:00
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
Ciure Andrei
a7fbf22348 Backed out 11 changesets (bug 1457560, bug 1366287) for causing Linux build bustages CLOSED TREE
Backed out changeset e71da1f3c048
Backed out changeset 971159738904 (bug 1366287)
Backed out changeset 68fae6784ebe (bug 1366287)
Backed out changeset a18120245eb7 (bug 1366287)
Backed out changeset 3bbd03d726e5 (bug 1366287)
Backed out changeset f80aac2c702a (bug 1366287)
Backed out changeset c834c0c12a7f (bug 1366287)
Backed out changeset dd19d38a2b1c (bug 1366287)
Backed out changeset 76fdbe405fbd (bug 1366287)
Backed out changeset b424782cd5d1 (bug 1366287)
Backed out changeset e4fd5393d398 (bug 1457560)
2018-05-12 08:00:13 +03:00
Robin Templeton
5483d5185c bug 1366287 - Part 3: Define the BigIntObject class for BigInt wrapper objects. r=jwalden 2018-05-11 19:43:45 -07:00
Robin Templeton
9b286536e0 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.
2018-05-11 19:42:49 -07:00
Robin Templeton
711a42ccd1 Bug 1366287 - Part 1.0: Define a new BigInt primitive type. (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 2018-05-11 19:09:28 -07:00
Jan de Mooij
d660ad143b Bug 1460341 - Give jsid a constructor that initializes it to a void id. r=jonco,bz 2018-05-11 12:01:32 +02:00
Jan de Mooij
441f19d63f Bug 1458567 part 1 - Don't invoke interrupt callback and Debugger onStep hook for internal JS engine interrupts. r=luke 2018-05-03 16:01:01 +02:00
Paul Bone
5931e98c71 Bug 1458154 - Add a tunable for idle nursery collection r=jonco
--HG--
extra : source : c5b1eae8a19756f85b8b059bff4bb1b4b8ab7c90
extra : amend_source : e1b38bbadd6d62efd22e754e752b064d175193ec
2018-02-12 17:17:33 +11:00
Steve Fink
bc4f45a9ba Bug 1456604 - Add DifferentProcessForIndexedDB scope to handle backwards compatibility with SameProcessSameThread clones, r=jorendorff
--HG--
extra : topic : clone.refactor
extra : rebase_source : 7920e35fb4b2370ce6a06cd27579824faabe7bd9
2018-04-24 15:21:47 -07:00
Steve Fink
c9d4e5e153 Bug 1456858 - structured clone comment fixups, r=jorendorff
--HG--
extra : topic : clone.refactor
extra : rebase_source : f56d3789d0f8fa3f7a903f6d5ea079ac75492cd6
2018-04-25 12:15:51 -07:00
Jeff Walden
04d21ccac0 Bug 1451248. r=jorendorff, r=bz
--HG--
extra : rebase_source : e26439a5954162bdaf332fbd63d623a3810e19e0
2018-04-25 19:40:09 -07:00
Steve Fink
2cdf0a6db9 Bug 1433642 - Do not free transferables in synthetic clone buffers, r=jorendorff
--HG--
extra : rebase_source : b9b92559fc1b3b226636d24f316fd56da4445233
extra : source : 6b7d7b8605ea2240498f01eab16c0940f6e0cc30
2018-04-19 22:46:53 -07:00
Steve Fink
dca82594a8 Backed out changeset 6b7d7b8605ea (bug 1433642)
--HG--
extra : rebase_source : 960fe894f8f095f58d640c9821627cdbc544c5a6
extra : histedit_source : 7141bd5860f17d4717bb0b87272b40a4a7eacaa2
2018-04-24 16:01:56 -07:00
Steve Fink
1e4199c9d6 Bug 1433642 - Do not free transferables in synthetic clone buffers, r=jorendorff
--HG--
extra : rebase_source : 6d550298aa19bb19645fd02004eaaeb3e132afaf
2018-04-19 22:46:53 -07:00
Csoregi Natalia
2f779be8d9 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-06-02 01:03:45 +03:00
Markus Stange
c545b8d1ba Bug 1462784 - Add an IDLE category. r=njn
MozReview-Commit-ID: JJ30AhXofBr

--HG--
extra : rebase_source : 0e94fb43e57411281fd57eea54815aef4558b6df
2018-05-18 18:15:46 -04:00
Markus Stange
bf590995b7 Bug 1462784 - Remove the STORAGE category. r=njn
This was used to label IndexedDB work and work in storage/mozStorage*.
I don't think this deserves its own category; categories are most useful for
the main thread, and most of the time-consuming database-related work happens
on helper threads. The main thread pieces are mostly for asynchronicity-
coordination and don't usually take up time.

This patch labels IndexedDB work as DOM instead (which is maybe debatable) and
the rest as OTHER.

MozReview-Commit-ID: 3UYhFFbi3Ry

--HG--
extra : rebase_source : 5c88dfd67274103de01fe44191f49776017738f9
2018-05-18 17:55:18 -04:00
Markus Stange
f49c17a909 Bug 1462784 - Add a DOM category and use it for the WebIDL binding stack labels. r=njn
MozReview-Commit-ID: AevGMqeBvXO

--HG--
extra : rebase_source : 001056270d8b2df8a7e88e523d1a9612913e27a8
2018-05-18 17:49:55 -04:00
Markus Stange
878b529707 Bug 1462784 - Rename the CSS category to LAYOUT. r=njn
The next changeset is going to move over more annotations that Gecko developers
would count as "layout" into the LAYOUT category, and which is currently marked
as GRAPHICS.
We can add a subcategory for style resolution once we have subcategories, but
for now I think it makes more sense to put style resolution into the same bucket
as reflow and display list building.

MozReview-Commit-ID: 7r9eICVBA1Z

--HG--
extra : rebase_source : ce2df7a07522e99b0ccb59e40a8eae590ebfe834
2018-05-18 17:40:52 -04:00
Markus Stange
abf5056ead Bug 1462784 - Remove EVENTS category. r=njn
Categories are useful to indicate: This much % of time was spent in this category.

The EVENTS category isn't a very good match for this. This category is currently
only set on labels of functions that handle the processing of an event. But
those functions are usually closer to the base of the stack, and the actual CPU
work during the processing of an event is usually in another category closer to
the top of the stack, e.g. in JS if we're running an event handler, or in LAYOUT
if we're hit testing the position of the event.

This changeset removes the EVENTS category and replaces all uses of it with the
OTHER category.

MozReview-Commit-ID: JPm5hQiBkvp

--HG--
extra : rebase_source : 66f8ee003d2f70111f4cff16d6e2d906ef4bf10b
2018-05-18 17:36:30 -04:00
Markus Stange
973f0de3fa Bug 1462784 - Merge GC and CC categories into one category. r=njn
They're very similar as far as most users of the profiler are concerned, I'd
say, and I don't believe it's worth giving them two different colors in the
activity graphs.

MozReview-Commit-ID: HTqjp56naL3

--HG--
extra : rebase_source : cf8d64bc3e76ed9bb07100081aebfc404845b8bc
2018-05-18 17:23:33 -04:00
Markus Stange
b085be8aeb Bug 1462784 - Change the enum ProfilingStackFrame::Category from a bitfield to a regular enum. r=njn
MozReview-Commit-ID: HmDu8Rri5AF

--HG--
extra : rebase_source : 91437b2d4fb6b81b1971d3966c4e1a4bbe2cf036
2018-05-18 17:06:13 -04:00
Csoregi Natalia
fc2ed6e92a Backed out 18 changesets (bug 1462784) for ESlint failure on FlameGraph.js:1297. CLOSED TREE
Backed out changeset 79556798ff9f (bug 1462784)
Backed out changeset 88321efb673b (bug 1462784)
Backed out changeset 7880f9dc7023 (bug 1462784)
Backed out changeset 71fe35fd1f7e (bug 1462784)
Backed out changeset a543b94b049a (bug 1462784)
Backed out changeset d1ca8b0f2221 (bug 1462784)
Backed out changeset 68eabfbf3c16 (bug 1462784)
Backed out changeset 34e71c789903 (bug 1462784)
Backed out changeset 6fe79d1ca1bd (bug 1462784)
Backed out changeset e5ad2e525ea9 (bug 1462784)
Backed out changeset 329645ff1e23 (bug 1462784)
Backed out changeset e09c38853172 (bug 1462784)
Backed out changeset 0663d1a6d2da (bug 1462784)
Backed out changeset 106967fc29d2 (bug 1462784)
Backed out changeset 99b4a433a8e5 (bug 1462784)
Backed out changeset 1d38a4cf5a4a (bug 1462784)
Backed out changeset 692017229de6 (bug 1462784)
Backed out changeset c2911a626671 (bug 1462784)
2018-06-01 23:42:00 +03:00
Markus Stange
4e14f33065 Bug 1462784 - Add an IDLE category. r=njn
MozReview-Commit-ID: JJ30AhXofBr

--HG--
extra : rebase_source : 17892aee7f637d2e4854173bef26c591c62ad21e
2018-05-18 18:15:46 -04:00
Markus Stange
b229cac853 Bug 1462784 - Remove the STORAGE category. r=njn
This was used to label IndexedDB work and work in storage/mozStorage*.
I don't think this deserves its own category; categories are most useful for
the main thread, and most of the time-consuming database-related work happens
on helper threads. The main thread pieces are mostly for asynchronicity-
coordination and don't usually take up time.

This patch labels IndexedDB work as DOM instead (which is maybe debatable) and
the rest as OTHER.

MozReview-Commit-ID: 3UYhFFbi3Ry

--HG--
extra : rebase_source : f83946138d8311ea5aa91f537a1d8e420e784068
2018-05-18 17:55:18 -04:00
Markus Stange
1da5dfa148 Bug 1462784 - Add a DOM category and use it for the WebIDL binding stack labels. r=njn
MozReview-Commit-ID: AevGMqeBvXO

--HG--
extra : rebase_source : 463fd96712fb5b389fd67ce97a3de19f86d37558
2018-05-18 17:49:55 -04:00
Markus Stange
d911ceb72c Bug 1462784 - Rename the CSS category to LAYOUT. r=njn
The next changeset is going to move over more annotations that Gecko developers
would count as "layout" into the LAYOUT category, and which is currently marked
as GRAPHICS.
We can add a subcategory for style resolution once we have subcategories, but
for now I think it makes more sense to put style resolution into the same bucket
as reflow and display list building.

MozReview-Commit-ID: 7r9eICVBA1Z

--HG--
extra : rebase_source : f447dcbb9d81be81a418c7464ef814ce4778073b
2018-05-18 17:40:52 -04:00
Markus Stange
be4332c903 Bug 1462784 - Remove EVENTS category. r=njn
Categories are useful to indicate: This much % of time was spent in this category.

The EVENTS category isn't a very good match for this. This category is currently
only set on labels of functions that handle the processing of an event. But
those functions are usually closer to the base of the stack, and the actual CPU
work during the processing of an event is usually in another category closer to
the top of the stack, e.g. in JS if we're running an event handler, or in LAYOUT
if we're hit testing the position of the event.

This changeset removes the EVENTS category and replaces all uses of it with the
OTHER category.

MozReview-Commit-ID: JPm5hQiBkvp

--HG--
extra : rebase_source : fb1ff20aeebb7ac494227e62ba2101039578808c
2018-05-18 17:36:30 -04:00
Markus Stange
f6174e54cf Bug 1462784 - Merge GC and CC categories into one category. r=njn
They're very similar as far as most users of the profiler are concerned, I'd
say, and I don't believe it's worth giving them two different colors in the
activity graphs.

MozReview-Commit-ID: HTqjp56naL3

--HG--
extra : rebase_source : ed1dc54efd143ad64bc21cfc39853ae90477cc9d
2018-05-18 17:23:33 -04:00
Markus Stange
af98aa91cf Bug 1462784 - Change the enum ProfilingStackFrame::Category from a bitfield to a regular enum. r=njn
MozReview-Commit-ID: HmDu8Rri5AF

--HG--
extra : rebase_source : c4e48ead83351697c6cc417e546ad862342c6e8e
2018-05-18 17:06:13 -04:00
Noemi Erli
1fd69fa2bc Backed out 18 changesets (bug 1462784) for failures in devtools/client/performance/test/unit/test_tree-model-08.js on a CLOSED TREE
Backed out changeset a74d36598442 (bug 1462784)
Backed out changeset c8192175f360 (bug 1462784)
Backed out changeset cde492240e99 (bug 1462784)
Backed out changeset 8c8d30fa406c (bug 1462784)
Backed out changeset ad3802ffb780 (bug 1462784)
Backed out changeset 2fe10732076c (bug 1462784)
Backed out changeset 268a72b7c3c4 (bug 1462784)
Backed out changeset 4055eb6c3bc6 (bug 1462784)
Backed out changeset 3901070e2e60 (bug 1462784)
Backed out changeset 2faf787fbbdf (bug 1462784)
Backed out changeset 8f06963c7c6f (bug 1462784)
Backed out changeset 036e6f64e224 (bug 1462784)
Backed out changeset e670f156a603 (bug 1462784)
Backed out changeset cd39588aece4 (bug 1462784)
Backed out changeset 2ac65d100fa2 (bug 1462784)
Backed out changeset ea05ff70a51d (bug 1462784)
Backed out changeset 8a06c0ba42f7 (bug 1462784)
Backed out changeset 52ed9a039ad2 (bug 1462784)
2018-06-01 01:06:29 +03:00
Noemi Erli
614b78ae36 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-06-01 00:58:09 +03:00
Markus Stange
d521b4678d Bug 1462784 - Add an IDLE category. r=njn
MozReview-Commit-ID: JJ30AhXofBr

--HG--
extra : rebase_source : d79d4da6d51a5dd7259cf015ee1f3678d59ac3bd
2018-05-18 18:15:46 -04:00
Markus Stange
b17c2b3e5b Bug 1462784 - Remove the STORAGE category. r=njn
This was used to label IndexedDB work and work in storage/mozStorage*.
I don't think this deserves its own category; categories are most useful for
the main thread, and most of the time-consuming database-related work happens
on helper threads. The main thread pieces are mostly for asynchronicity-
coordination and don't usually take up time.

This patch labels IndexedDB work as DOM instead (which is maybe debatable) and
the rest as OTHER.

MozReview-Commit-ID: 3UYhFFbi3Ry

--HG--
extra : rebase_source : 16abc3c4bd8ed9ac55b5c188bd10ee26b0566330
2018-05-18 17:55:18 -04:00
Markus Stange
916fd5a90a Bug 1462784 - Add a DOM category and use it for the WebIDL binding stack labels. r=njn
MozReview-Commit-ID: AevGMqeBvXO

--HG--
extra : rebase_source : 4a1bd948e65cbbd890ba53c363248c1ce69774a3
2018-05-18 17:49:55 -04:00
Markus Stange
565cf9bfdf Bug 1462784 - Rename the CSS category to LAYOUT. r=njn
The next changeset is going to move over more annotations that Gecko developers
would count as "layout" into the LAYOUT category, and which is currently marked
as GRAPHICS.
We can add a subcategory for style resolution once we have subcategories, but
for now I think it makes more sense to put style resolution into the same bucket
as reflow and display list building.

MozReview-Commit-ID: 7r9eICVBA1Z

--HG--
extra : rebase_source : 53ce9912d3219ce8ce5dc411e03bb5ef5e2c7b64
2018-05-18 17:40:52 -04:00
Markus Stange
2d4663fe41 Bug 1462784 - Remove EVENTS category. r=njn
Categories are useful to indicate: This much % of time was spent in this category.

The EVENTS category isn't a very good match for this. This category is currently
only set on labels of functions that handle the processing of an event. But
those functions are usually closer to the base of the stack, and the actual CPU
work during the processing of an event is usually in another category closer to
the top of the stack, e.g. in JS if we're running an event handler, or in LAYOUT
if we're hit testing the position of the event.

This changeset removes the EVENTS category and replaces all uses of it with the
OTHER category.

MozReview-Commit-ID: JPm5hQiBkvp

--HG--
extra : rebase_source : 34fb2ca94151403a6d7ffd5a8b840f00a8bb4afb
2018-05-18 17:36:30 -04:00
Markus Stange
11931d38d5 Bug 1462784 - Merge GC and CC categories into one category. r=njn
They're very similar as far as most users of the profiler are concerned, I'd
say, and I don't believe it's worth giving them two different colors in the
activity graphs.

MozReview-Commit-ID: HTqjp56naL3

--HG--
extra : rebase_source : f172424042fab18a514201ba4b6c67c03c209cdb
2018-05-18 17:23:33 -04:00
Markus Stange
edf842858d Bug 1462784 - Change the enum ProfilingStackFrame::Category from a bitfield to a regular enum. r=njn
MozReview-Commit-ID: HmDu8Rri5AF

--HG--
extra : rebase_source : a3037f25e8f3e6248fcb508cc58107659d0189e7
2018-05-18 17:06:13 -04:00
Ted Campbell
a1a65038fe Bug 1448563 - Part 6: Add memory reporting for off-thread WASM. r=luke
MozReview-Commit-ID: 1lXRj1JUJk2

--HG--
extra : source : 97dbd15798f96a95021bc0a66c9b1dfc22414025
2018-04-11 15:49:36 -04:00
Bogdan Tara
b644004031 Backed out changeset 97dbd15798f9 (bug 1448563) for bad-malloc_usable_size /builds/worker/workspace/moz-toolchain/src/llvm/projects/compiler-rt/lib/asan/asan_malloc_linux.cc a=backout CLOSED TREE 2018-04-23 22:23:01 +03:00
Ted Campbell
7baaa3f753 Bug 1448563 - Part 6: Add memory reporting for off-thread WASM. r=luke
MozReview-Commit-ID: 1lXRj1JUJk2
2018-04-23 13:57:50 -04:00
Ted Campbell
ce0c6eb300 Bug 1448563 - Part 5: Add memory reporting for Ion offthread. r=jandem
MozReview-Commit-ID: KnuaP5HwNnm
2018-04-23 13:56:54 -04:00
Ted Campbell
3f8ed0a1db Bug 1448563 - Part 4: Add memory reporting for off-thread parse. r=jandem
MozReview-Commit-ID: 2qH6cwFRrfG
2018-04-23 13:55:59 -04:00
Ted Campbell
d1cc6f3d5b Bug 1448563 - Part 3b: Add memory reporting for JS helper threads. r=jandem
MozReview-Commit-ID: JbOY0QRn0Wl
2018-04-23 13:55:01 -04:00
Ted Campbell
9f41272463 Bug 1448563 - Part 2: Add memory reporting for Ion lazy linking. r=jandem
MozReview-Commit-ID: 4tHDJXzJKY5
2018-04-23 13:53:01 -04:00
Ted Campbell
bdaa0bde42 Bug 1448563 - Part 1: Use JS::CollectGlobalReports for non-runtime memory. r=jorendorff
MozReview-Commit-ID: G4j6YKP0vEV
2018-04-23 13:52:04 -04:00
Jan de Mooij
f57cb4a925 Bug 1454592 part 2 - Get rid of a static constructor for protoTable array. r=jonco 2018-04-20 13:07:14 +02:00
Gurzau Raul
f4056b78d5 Backed out 2 changesets (bug 1454592) for Windows build bustage on a CLOSED TREE
Backed out changeset 82821ff143e3 (bug 1454592)
Backed out changeset 89504aa6f1b3 (bug 1454592)
2018-04-20 15:27:12 +03:00
Jan de Mooij
ff6fca9c9e Bug 1454592 part 2 - Use constexpr for protoTable static array. r=jonco 2018-04-20 13:07:14 +02:00
Jon Coppeard
8c8071aed3 Bug 1443468 - Suppress gray marking assertion during maniupulation of internal GC state r=sfink 2018-04-20 10:09:52 +02:00
Tom Schuster
b5af919e04 Bug 1453932 - Optimize loads from CallSiteObjects for tagged template literals. r=jandem
--HG--
extra : rebase_source : 80dc353fc7bca35946d10d0a497e46cf273eab1b
2018-04-13 13:56:55 +02:00
Jan de Mooij
4f87b13b19 Bug 1452982 part 15 - Rename some constants. r=jonco 2018-04-19 13:06:12 +02:00
Steve Fink
c92957a424 Bug 1455071 - Use delegation rather than inheritance for the BufferList in JSStructuredCloneData, r=jorendorff,r=baku
--HG--
extra : rebase_source : 1620d0a2d99d9aeddd7d06b4f29251907311ef86
extra : histedit_source : 59145661383b920085164eff3586a78da41c420b
2018-03-15 16:56:09 -07:00
Steve Fink
185250e668 Bug 1455071 - Remove unused JSAutoStructuredCloneBuffer::copy, r=jorendorff
--HG--
extra : rebase_source : 59dd8139542fa3761fc2b343cfc88d2a3036059e
2018-03-15 20:09:09 -07:00
Steve Fink
bbfc47ea95 Bug 1455071 - Comment the purpose of JSAutoStructuredCloneBuffer, r=jorendorff
--HG--
extra : rebase_source : ce0d972b8b67bde5932606e5ae1bba8eade7b005
2018-03-15 20:08:58 -07:00
Steve Fink
b30ce6e292 Bug 1455071 - Remove unused alternate callback option to JSAutoStructuredCloneBuffer::clear, r=jorendorff
--HG--
extra : rebase_source : 274cdaca9fc7f59c16a3e2ef1f979695eea30a3b
2018-03-15 17:11:31 -07:00
Steve Fink
d1d9f3cca9 Bug 1455071 - Bulk up SCOutput by changing it from storing a bare BufferList to a full JSStructuredCloneData, r=jorendorff
Then move JSStructuredCloneWriter's callbacks, callback data, and refsHeld into its SCOutput's JSStructuredCloneData. This removes the loose fields from JSStructuredCloneWriter and allows using move construction to remove a bunch of code.

--HG--
extra : rebase_source : 37cb0d4a15ffd0155bb7a55cd0fbefc358e649a8
2018-03-15 14:04:24 -07:00
Jan de Mooij
869fec072d Bug 1452982 part 10 - Rename *ActiveCooperatingThread to *MainThread. r=jonco 2018-04-15 13:18:46 +02:00
Jeff Walden
4e99ef3517 Bug 1447668. r=jorendorff
--HG--
rename : js/src/jsapi-tests/testToIntWidth.cpp => js/src/jsapi-tests/testToSignedOrUnsignedInteger.cpp
extra : rebase_source : 446b26c64f057a38853e9b4458b8f35b26b08a2c
2018-03-27 14:01:43 -07:00
Jeff Walden
2142dd16c8 |this->|-qualify some templated member functions to help some buggy compilers along. No bug, r=me
--HG--
extra : rebase_source : 657ffe6afa1a5a6afe70a2090602b661a22890d4
2018-04-13 14:30:23 -07:00
André Bargull
42c6425a82 Bug 1447442 - Part 11: Use MOZ_IS_GCC to test for GCC. r=Waldo
--HG--
extra : rebase_source : 4073e81a1357660de86af54c2786c0187f1c8ae7
2018-04-13 02:26:01 -07:00
André Bargull
afefc69f03 Bug 1447442 - Part 10: Remove ifdefs for unsupported compiler versions. r=jorendorff
--HG--
extra : rebase_source : dcafe84ca4b492ab3e91289d5d0a78a816feb343
2018-04-13 02:26:01 -07:00
André Bargull
942f79e6e4 Bug 1447442 - Part 9: Remove unused JSWhyMagic constants. r=jorendorff
--HG--
extra : rebase_source : 6686176dbf004249a44f357d3c33cc17545dcb2d
2018-04-13 02:26:01 -07:00
André Bargull
c58317ae7c Bug 1447442 - Part 6: Pass Handle<GlobalObject*> in ClassInitializerOp. r=jorendorff
--HG--
extra : rebase_source : 14883f96b9df11ae22cf427e104a8a2689b1e4bb
2018-04-13 02:26:00 -07:00
Andreea Pavel
64cb3f9968 Backed out 4 changesets (bug 1453456) for build bustages at js/src/jit-test/tests/ctypes/conversion-primitive.js on a CLOSED TREE
Backed out changeset 50cd4a60a402
Backed out changeset e0f8f325c2ce (bug 1453456)
Backed out changeset 6a84718ddfe1 (bug 1453456)
Backed out changeset fde6a66eb317 (bug 1453456)
2018-04-14 00:52:06 +03:00
Jeff Walden
17998bd2a9 |this->|-qualify some templated member functions to help some buggy compilers along. No bug, r=bustage in a CLOSED TREE 2018-04-13 14:30:23 -07:00
Andreea Pavel
eb84122ef9 Backed out changeset a30cf37ddcab (bug 1447668) for build bustages at /builds/worker/workspace/build/src/js/src/ctypes/CTypes.cpp:2607 on a CLOSED TREE
--HG--
rename : js/src/jsapi-tests/testToSignedOrUnsignedInteger.cpp => js/src/jsapi-tests/testToIntWidth.cpp
2018-04-14 00:06:12 +03:00
Jeff Walden
8788d6c791 Bug 1447668. r=jorendorff
--HG--
rename : js/src/jsapi-tests/testToIntWidth.cpp => js/src/jsapi-tests/testToSignedOrUnsignedInteger.cpp
extra : rebase_source : 7a6fbc39383cb5d4d6b3292a4ce18099fd515b01
2018-03-27 14:01:43 -07:00
Emilio Cobos Álvarez
b79062c130 Bug 1436179: Lazily grow the ProfileEntryStorage. r=mstange,jandem
MozReview-Commit-ID: BEGP1ykl4S
2018-04-13 14:59:59 +02:00
Emilio Cobos Álvarez
94ff0cdd36 Back out changeset cc008b8e4c3c (Bug 1436179) for landing without JS peer review. r=me
This reverts commit 60a7cbed8cbef17125911617230fdeb56eca977c.
2018-04-13 09:55:52 +02:00
Emilio Cobos Álvarez
d338749d0a Bug 1436179: Lazily grow the ProfileEntryStorage. r=mstange
MozReview-Commit-ID: BEGP1ykl4S
2018-04-13 09:20:12 +02:00
Sebastian Hengst
0eb9d87997 merge mozilla-inbound to mozilla-central. a=merge 2018-04-12 22:20:13 +03:00
Sebastian Hengst
ec371d68d4 Bug 525063 - Backing out js/public/ for violation of committing guidelines. a=backout 2018-04-12 22:15:26 +03:00
Tristan Bourvon
a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Jeff Walden
a675e51266 Remove unused JS::Value::get{Int32,Double}Ref member functions. No bug, r=me as trivial
--HG--
extra : rebase_source : 3c32ceef0657739f07994929d3cdd3c32df7cf55
2018-04-05 20:45:57 -07:00
Nicholas Nethercote
fe6068a327 Bug 1451658 - Remove JS_STATIC_CLASS in favour of MOZ_STATIC_CLASS. r=mystor
MozReview-Commit-ID: B2fynvjOSG7

--HG--
extra : rebase_source : 8f2ca40231561e5c7a140bad4f7fe79c89aeef04
2018-04-10 17:31:55 +10:00
Jan de Mooij
040949a5a7 Bug 1452982 part 1 - Use rt->mainContextFromOwnThread() instead of TlsContext.get() in some places. r=jonco 2018-04-12 13:04:13 +02:00
Manish Kumar
11d85fb4e4 Bug 1428468 - JS::GetValueZone(const Value& value) declared but never defined. r=sfink
--HG--
extra : rebase_source : 4b5c7cb639dcfe046f91571b5c8f60f608ac9e44
2018-04-02 19:47:42 +02:00
Tom Schuster
72acf485fb Bug 1255800 - Make computeThis return a boolean for easier error handling. r=jorendorff
--HG--
extra : rebase_source : 1b4d227aba2fd0e1a458849addb634df9d72111c
extra : histedit_source : 29e8c520ae4d3644131b05794a447a0e7a32796f
2018-03-23 13:09:04 +01:00
Jeff Walden
ca78e29895 Bug 1449051 - Move JS::Value::layout's members into JS::Value, make JS::Value a union, and apply correct code style to the union fields. r=sfink
--HG--
extra : rebase_source : 6a13e636b90c06419b89942b2848be92b21c4020
2018-03-27 20:20:43 -07:00
Jeff Walden
e5512cfdf4 Bug 1449051 - Further minifications to JS::Value's internal structure. r=jandem
--HG--
extra : rebase_source : c6bdffdf5ac4dabd19d44092fdc40887495aa0ba
2018-03-27 17:13:08 -07:00
Jeff Walden
31d839ee30 Bug 1437533 - Properly declare JSTracer respecting JS_PUBLIC_API to avoid compile errors about visibility mismatch in non-unified builds. r=jorendorff
--HG--
extra : rebase_source : 3279dcead6c1c254661939c4fee9f1c8532333ad
2018-03-12 12:56:39 -07:00
Jan de Mooij
4e48c153e6 Bug 1448329 - Remove 32-bit-x86-only static typed array access optimization. r=tcampbell 2018-03-28 10:42:12 +02:00
Andrea Marchesini
cb4b451b23 Bug 1441141 - Update the StructuredCloneAlgorithm to follow the latest version of the spec, r=smaug, r=sfink 2018-03-28 09:23:17 +02:00
Jeff Walden
7434b2e835 Bug 1449051 - Consolidate the definition of JS::Value::layout to be more readable/understandable and to common up the parts that are common across endianness/word size. r=jandem
--HG--
extra : rebase_source : d0f10087ed1c8e98403966ea3070da720adc6300
2018-03-27 12:26:10 -07:00
shindli
1e7274100e Backed out 2 changesets (bug 1449051, bug 1447475) for MnH and en-US failures on a CLOSED TREE
Backed out changeset d9a446d356da (bug 1449051)
Backed out changeset 851ed02cdac1 (bug 1447475)
2018-03-28 02:05:38 +03:00
Jeff Walden
6ed5e3b56d Bug 1449051 - Consolidate the definition of JS::Value::layout to be more readable/understandable and to common up the parts that are common across endianness/word size. r=jandem 2018-03-27 12:26:10 -07:00
Andreea Pavel
2e9ae472f6 Backed out changeset d1e979715ac1 (bug 1439342) for build bustages at builds/worker/workspace/build/src/obj-spider/dist/include/js/ProfilingStack.h:18 on a CLOSED TREE
--HG--
extra : rebase_source : 62447b0e6065c284531baaca1b4981cdde96762b
2018-03-27 19:44:32 +03:00
Jason Orendorff
10ae4a8271 Bug 1439342 - Fix build bustage on ARM+ASan (Clang) due to inconsistent JSTracer declarations. r=sfink
--HG--
extra : rebase_source : 2c63cb90528b6bef479a485a86c505e566a3c4e8
2018-02-26 17:38:18 -06:00
Jan de Mooij
68eeb821cb Bug 1449135 part 3 - Remove cooperative scheduling; bake in JSContext* in JIT code. r=luke 2018-03-27 18:00:27 +02:00
Tom Schuster
6eddb18596 Bug 1255800 - Remove JS_THIS_OBJECT from js. r=jorendorff
--HG--
extra : rebase_source : ec366038f9619c8c4e8465b9c8ac5b9bc9971086
2018-03-22 16:38:30 +01:00
Jan de Mooij
e8dc00e48a Bug 1447578 part 3 - Remove MacroAssembler rooting/tracing code. r=jonco
--HG--
extra : rebase_source : 848f220d63897a53c662b164eb7d5e98222f50bb
2018-03-21 16:58:04 +01:00
Boris Zbarsky
f406b29197 Bug 888600 - Move ContentFrameMessageManager to WebIDL. Part 1a: Make PinnedStringId constructor constexpr. r=Waldo/froydnj.
--HG--
extra : rebase_source : 0ed87197f6740b74648fc5107bd6fb4e7409cdfa
2018-03-07 21:50:24 +01:00
Ryan VanderMeulen
38359cd40f Bug 1445105 - Remove various MSVC de-optimizations used to work around compiler bugs which are no longer needed. r=dmajor
This reverts the following bugs: 703135, 977538, 1274450, 1403220

--HG--
extra : rebase_source : c63585a915c5b9ea987fd035dbb5ecb21cb6246e
2018-03-19 12:42:01 -04:00
André Bargull
b4ea895cd5 Bug 1442599 - Part 4: Replace JS_ALWAYS_TRUE/FALSE with MOZ_ALWAYS_TRUE/FALSE. r=jorendorff
--HG--
extra : rebase_source : 6fc1e4f5f4cef17bfed0f51938c73ef828eac70e
2018-03-15 03:42:56 -07:00
Jan de Mooij
3a631decc0 Bug 1445610 - Clean up some enums in Value.h. r=jwalden 2018-03-15 10:38:59 +01:00
Kris Maglione
4f1d6d3f42 Bug 1445551: Part 6 - Remove JSAddonId type and addonId compartment flag. r=mccr8
This compartment flag was only ever needed in order to track system-privileged
add-on code running under the compartment-per-addon system. That system, and
the legacy add-ons it supported, are gone.

WebExtension compartments have their add-on ID stored on their principal, and
are tracked in less obtrusive ways, so this code is no longer useful.

MozReview-Commit-ID: NVEd3Oawak

--HG--
extra : rebase_source : 31908a4daa5e7897ce165a5383110fb722391662
2018-03-13 21:02:34 -07:00
Andreea Pavel
363ad2007d Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2018-03-15 00:11:42 +02:00
Andi-Bogdan Postelnicu
ad0f5aaafb Bug 1437532 - prevent doing memset on a non-trivial type. r=jorendorff
MozReview-Commit-ID: C8BfwJSHkWM

--HG--
extra : rebase_source : 3bd28ff459b76be79da6a518fb1da49b23aef9fe
2018-03-13 11:57:49 +02:00
Luke Wagner
8a5136ff57 Bug 1435360 - Baldr: implement wasm interrupt in terms of TlsData branch and stack overflow check (r=bbouvier)
--HG--
extra : rebase_source : 77543186df0d37d7267101c0c1a6b672405be461
2018-03-12 15:10:06 -05:00
Brindusan Cristian
575a3a3976 Backed out 3 changesets (bug 1435360) for web-platform reftests failures on marionette/content/reftest.js CLOSED TREE
Backed out changeset c4bc47b31311 (bug 1435360)
Backed out changeset eb7a4a96c333 (bug 1435360)
Backed out changeset 7d6183aa40da (bug 1435360)
2018-03-12 23:53:41 +02:00
Luke Wagner
d389a89796 Bug 1435360 - Baldr: implement wasm interrupt in terms of TlsData branch and stack overflow check (r=bbouvier)
--HG--
extra : rebase_source : c65945e89c19c0f4bd4208b0e67348ef6b410797
2018-03-12 15:10:06 -05:00
Kannan Vijayan
627eb6ae9a Bug 1411415 - r=bz r=fitzgen 2018-03-05 19:27:02 -05:00
Tom Ritter
4b715680d2 Bug 1425462 Normalize the JavaScript Engine behavior by adding a callback r=luke
Time Precision Reduction in the JS Engine was handled by a small bit of
duplicated logic. With Time Jittering, and general improvements to the
logic due to float fuzziness, we want to unify the logic for the JS Engine
and the browser into one location. This patch does that.

Note that this will leave the JS Shell without a time jittering implementation.
It currently has a time clamping implementation - but I'm not actually sure if
the shell is doing anything with it, because it's probably not calling
SetTimeResolutionUsec to set it up.  In Bug 1440539 we will add a jitter
implementation for the shell. (And probably turn time rounding and jittering on
for it too.)

MozReview-Commit-ID: 2BTIMzE8MjW

--HG--
extra : rebase_source : db5cd6a219e1b89988f142fc22994bf816507889
2018-02-22 16:05:50 -06:00
Tom Ritter
845ef57dd6 Bug 1425462 When reducing the precision of timestamps, also apply fuzzytime to them r=bkelly
Fuzzytime deterministically generates a random midpoint between two clamped values,
and if the unreduced timestamp is above the midpoint, the time is rounded upwards.
This allows safe time jittering to occur, as time will never go backwards on a given
timeline.

It _is_ possible for time to go backwards when comparing different (but related)
timelines, such as a relative timeline in one page (with its own
performance.timeOrigin) and a relative timeline in an iframe or Worker (which
also has its own performance.timeOrigin). This is the same behavior as the 2ms timer
reduction we previously landed; jitter doesn't make this any better or worse.

MozReview-Commit-ID: IdRLxcWDQBZ

--HG--
extra : rebase_source : 40b29d34e5cc99f9b8e6d5e711a03b9fe9bfa595
2018-03-01 00:07:03 -06:00
Dorel Luca
cafaae9ee7 Backed out 6 changesets (bug 1425462) for XPCShell failure on multiple files
Backed out changeset 9ace3811f525 (bug 1425462)
Backed out changeset 7d440e52e3a4 (bug 1425462)
Backed out changeset 85896ea96faf (bug 1425462)
Backed out changeset 127b5d2e6779 (bug 1425462)
Backed out changeset 95ce64d3a29a (bug 1425462)
Backed out changeset ddd2c4da4ba4 (bug 1425462)
2018-03-02 03:33:17 +02:00
Tom Ritter
ec702ca7c3 Bug 1425462 Normalize the JavaScript Engine behavior by adding a callback r=luke
Time Precision Reduction in the JS Engine was handled by a small bit of
duplicated logic. With Time Jittering, and general improvements to the
logic due to float fuzziness, we want to unify the logic for the JS Engine
and the browser into one location. This patch does that.

Note that this will leave the JS Shell without a time jittering implementation.
It currently has a time clamping implementation - but I'm not actually sure if
the shell is doing anything with it, because it's probably not calling
SetTimeResolutionUsec to set it up.  In Bug 1440539 we will add a jitter
implementation for the shell. (And probably turn time rounding and jittering on
for it too.)

MozReview-Commit-ID: 2BTIMzE8MjW

--HG--
extra : rebase_source : 035f84a88413e2ea34b239ae0228e9c1ec9a39d7
2018-02-22 16:05:50 -06:00
Tom Ritter
06ecc9a63d Bug 1425462 When reducing the precision of timestamps, also apply fuzzytime to them r=bkelly
Fuzzytime deterministically generates a random midpoint between two clamped values,
and if the unreduced timestamp is above the midpoint, the time is rounded upwards.
This allows safe time jittering to occur, as time will never go backwards on a given
timeline.

It _is_ possible for time to go backwards when comparing different (but related)
timelines, such as a relative timeline in one page (with its own
performance.timeOrigin) and a relative timeline in an iframe or Worker (which
also has its own performance.timeOrigin). This is the same behavior as the 2ms timer
reduction we previously landed; jitter doesn't make this any better or worse.

MozReview-Commit-ID: IdRLxcWDQBZ

--HG--
extra : rebase_source : e455f934e6e6d65d54c122a6cec9f6cabbd5ac78
2018-03-01 00:07:03 -06:00
Jeff Walden
25a7df6306 Bug 1441657 - Implement mozilla::WrappingMultiply. r=froydnj
--HG--
extra : rebase_source : 57d1796976a25597ee4dda90561d40debc6a9fc9
2018-02-15 17:36:55 -08:00
Jeff Walden
b0074d3a7d Bug 1441657 - Create a new mozilla/WrappingOperations.h header to contain implementations of common math operations with well-defined wraparound semantics. r=froydnj
--HG--
rename : mfbt/MathAlgorithms.h => mfbt/WrappingOperations.h
rename : mfbt/tests/TestMathAlgorithms.cpp => mfbt/tests/TestWrappingOperations.cpp
extra : rebase_source : 552a0f17d7ba2ad6229d45fd2945592aceabb354
2018-02-15 17:36:50 -08:00
Jon Coppeard
a9547048d9 Bug 1441988 - Simplify AutoVector definitions by making this a template r=sfink 2018-03-01 14:47:29 +00:00
Jon Coppeard
8b9f1c68b9 Bug 1441783 - Remove unused AutoVectorRooter class and refactor r=sfink 2018-03-01 14:47:29 +00:00
Sebastian Hengst
769222fadf merge mozilla-inbound to mozilla-central. a=merge
--HG--
rename : browser/base/content/tabbrowser.xml => browser/base/content/tabbrowser.js
2018-02-28 12:54:12 +02:00
Markus Stange
fa1eca48cc Bug 1437428 - Make PseudoStack a member of RacyInfo instead of inheriting from it. r=njn
MozReview-Commit-ID: 3fumT1Livf6

--HG--
extra : rebase_source : fa201a7023ba9ffa5d0d23e2886ad151f4a7930a
2018-01-31 17:42:49 -05:00
Jeff Walden
1e733f31c4 Bug 1440954 - Properly #ifdef a local variable only used in an assertion to avoid an unused-variable warning. r=sfink
--HG--
extra : rebase_source : aa18f74def6af9e303ed2e04daa7f57d6feca789
2018-02-27 11:29:47 -08:00
Jon Coppeard
9abec85212 Bug 1440739 - Improve gray marking assertions to cover more types of pointer r=sfink 2018-02-27 13:01:49 +00:00
Jason Orendorff
63e9540554 Bug 1440372 - StructuredClone comments. r=sfink.
--HG--
extra : rebase_source : c712672413c3e001667d3fc30c88f2aeae891563
extra : histedit_source : 137a842d21598a72f6aa4027041ffc99f0b27e8b
2018-02-20 21:40:49 -06:00
Steve Fink
97f8e4d9ab Bug 1366083 - Diagnostic assert for ObjectValue(nullptr), r=jonco
--HG--
extra : rebase_source : 796da9b227da9aecf84c9cc5680aa448e2c1319b
2017-11-21 17:04:22 -08:00
Jason Orendorff
e7c94fff59 Bug 1439063 - Part 1: Move several public headers from js/src to js/public. r=jandem.
js/src/jsalloc.h -> js/public/AllocPolicy.h
jsalloc.cpp -> js/src/util/AllocPolicy.cpp
jsbytecode.h -> merge into js/public/TypeDecls.h
jsprf.h -> js/public/Printf.h
jsprf.cpp -> js/src/util/Printf.cpp
jsprototypes.h -> public/ProtoKey.h
jswrapper.h -> js/Wrapper.h

--HG--
rename : js/src/jsalloc.h => js/public/AllocPolicy.h
rename : js/src/jsprf.h => js/public/Printf.h
rename : js/src/jsprototypes.h => js/public/ProtoKey.h
rename : js/src/jswrapper.h => js/public/Wrapper.h
rename : js/src/jsalloc.cpp => js/src/util/AllocPolicy.cpp
rename : js/src/jsprf.cpp => js/src/util/Printf.cpp
extra : rebase_source : 98b16d94c469202eab0303a8da844f1d0b6aa809
extra : amend_source : e0b16c1077226d6fe240f4d7096537f93b43f2b8
extra : histedit_source : d94e0ba7904a7d66742c7fac43f638aaec4fa4e5
2018-02-21 10:30:19 -06:00
Jason Orendorff
a48654929c Bug 1439665 - Part 1: #include some headers directly in files that use them. r=sfink.
"Include what you use."

--HG--
extra : rebase_source : 2239a380029e0efbc9dd3042459222a67c38d70f
extra : amend_source : 4453c32cc469caa592049167205666997f1a1e7b
extra : histedit_source : a533edd4a4d3d0642b08989e93674661d27baa6a%2C37d27eeef9580381ccc0de8507f60166dabf1730
2018-02-20 11:28:12 -06:00
Jason Orendorff
d07bbcafa1 Bug 1439626 - Remove js/public/LegacyIntTypes.h. r=Waldo.
--HG--
extra : rebase_source : 6b63992919109ab8940ae5e4df840b23fd8501e3
2018-02-20 09:39:39 -06:00
André Bargull
04c864d3c5 Bug 1437530: Cache template literal objects per call site again. r=arai 2018-02-19 05:07:29 -08:00
Cosmin Sabou
768831260e Backed out 2 changesets (bug 1437428) for frequent xpcfailures on marAppApplyUpdateStageOldVersionFailure.js a=backout
Backed out changeset b915e160a690 (bug 1437428)
Backed out changeset 0fcad4eaabb6 (bug 1437428)

--HG--
rename : tools/profiler/core/RegisteredThread.cpp => tools/profiler/core/ThreadInfo.cpp
2018-02-18 23:57:55 +02:00
Chris Peterson
d09123f248 Bug 1436263 - Part 1: Replace final override virtual function specifiers with just final. r=froydnj
MozReview-Commit-ID: DE5HkIhsZ6D

--HG--
extra : rebase_source : 94831c1e13a840dd2ea0600f64bcf70c2bf938d9
extra : source : cf9283bf1b0bca3a6311c98e227329d451f80ecb
2018-02-05 22:46:57 -08:00
Dorel Luca
e6b2438e24 Merge mozilla-central to autoland 2018-02-17 11:59:56 +02:00
Jason Orendorff
50d9e51a7d Bug 1438278 - Part 3: Rename some files into js/src/gc. r=jonco.
jsgc.* -> gc/GC.*
jshashutil.h -> gc/HashUtil.h
jsweakmap.* -> gc/WeakMap.*
vm/WeakMapPtr.cpp -> gc/WeakMapPtr.cpp

--HG--
rename : js/src/jsgcinlines.h => js/src/gc/GC-inl.h
rename : js/src/jsgc.cpp => js/src/gc/GC.cpp
rename : js/src/jsgc.h => js/src/gc/GC.h
rename : js/src/jshashutil.h => js/src/gc/HashUtil.h
rename : js/src/jsweakmap.cpp => js/src/gc/WeakMap.cpp
rename : js/src/jsweakmap.h => js/src/gc/WeakMap.h
rename : js/src/vm/WeakMapPtr.cpp => js/src/gc/WeakMapPtr.cpp
extra : rebase_source : 8435ece63e11545a633ae0cdf6ed4a46cb017457
extra : amend_source : cfb63d098bf2fb27d63221a24457d8aaf8884137
extra : intermediate-source : 2d498c561ba67baf3ad09b6c29f4a8985997928c
extra : source : c1df7b31137da2bbea5ae1169cc07dd0f4974376
2018-02-14 16:00:46 -06:00
Markus Stange
8bb2083b22 Bug 1437428 - Make PseudoStack a member of RacyInfo instead of inheriting from it. r=njn
MozReview-Commit-ID: 3fumT1Livf6

--HG--
extra : rebase_source : fa201a7023ba9ffa5d0d23e2886ad151f4a7930a
2018-01-31 17:42:49 -05:00
Jon Coppeard
b188b2d674 Bug 1399866 - Add gray marking asserts to proxy write functions r=sfink 2018-02-16 11:40:04 +00:00
Markus Stange
e50b258807 Bug 1385998 - Fix a typo in a comment.
MozReview-Commit-ID: AiHDDUKGHhi
2018-02-15 22:29:32 -05:00
Andreea Pavel
74b7ffee40 Merge mozilla-inbound to mozilla-central a=merge
--HG--
rename : js/src/jscompartment.cpp => js/src/vm/JSCompartment.cpp
rename : js/src/jscompartment.h => js/src/vm/JSCompartment.h
rename : js/src/jsscript.cpp => js/src/vm/JSScript.cpp
rename : js/src/jsscript.h => js/src/vm/JSScript.h
extra : amend_source : 9c233cb959c45e401189d089a094f9d141d2b912
2018-02-15 12:24:21 +02:00
Andrew McCreight
df1f7c00c3 Bug 1437978 - Add memory reporting for scriptCountsMap. r=nbp
MozReview-Commit-ID: 1AJHhJDJerr

--HG--
extra : rebase_source : f867bd00f1c41052fc6eadc23cd2dd1e41a2c354
2018-02-13 10:00:14 -08:00
Markus Stange
8fb2503b8a Bug 1434965 - Replace callback-based API ForEachProfiledFrame with an iterator-based API called GetProfiledFrames. r=njn
This also renames ForEachProfiledFrameOp::FrameHandle to ProfiledFrameHandle.

MozReview-Commit-ID: 7Jh1x2QWjXe

--HG--
extra : rebase_source : 8bb0fa15fa20215f03148cfd30ae0e41f82330fd
2018-02-10 20:38:41 -05:00
Markus Stange
49735a3768 Bug 785440 - Add js::GetContextProfilingStack in such a way that it can be inlined into non-JS code. r=sfink
This requires moving some things around. RootingContext is an existing
superclass of JSContext whose members are exposed in a header file, so we can
use it to expose the location of the geckoProfiler_ member to non-JS code.

MozReview-Commit-ID: 3oClAEVMsDr

--HG--
extra : rebase_source : f5943a710cddaa65cfdcb13370f95387caaf6892
extra : source : 2f5b804cef7b0888ac6121f5645bbb910750ed72
2018-01-05 14:35:00 +01:00
Steve Fink
0742a54280 Bug 903519 - Strings in the nursery: JIT, r=jandem
--HG--
extra : rebase_source : 3e2c013d3085fa87f930bbf620c1cb5b46f8952e
extra : histedit_source : a07cbe1740f88d26a9a696cdcb5007181cc92ee8
2018-02-05 16:22:22 -08:00
Steve Fink
2cf574b314 Bug 903519 - Default nursery strings to off, add ability to enable, r=jonco
--HG--
extra : rebase_source : bdc3a320de7f1e6d3ac620113852af63bdfd592f
extra : source : 71831e232df2957c9ea178986218e3d6eeef6c0b
extra : histedit_source : 2e77c0ce51da517d8d391fde25c947004475d8e4
2017-11-03 14:00:14 -07:00
Steve Fink
34decd09c6 Bug 903519 - Change Relocated marker to not confuse string vs object bit, r=jonco
--HG--
extra : rebase_source : 58f6ed8ba0692ad60b99c9d6a637231693e2316c
extra : source : 6f3666e9540e849056347f7b9d8a40e41396115e
extra : histedit_source : 315716a40a4ffba00fce14c8d58380128804e53d%2Cd69faed961ccbfc63d378ccf34c600d8698483f4
2017-11-03 12:27:52 -07:00
Nicolas B. Pierron
f37e8775a7 Bug 1433111 - Zero the payload if the Value tag does not match the expected tag. r=jandem 2018-02-09 16:49:30 +00:00
Markus Stange
46a81f0069 Bug 1385998 - Use ReleaseAcquire memory ordering when modifying the PseudoStack. r=froydnj
Before this patch, the writes to stackPointer were done using sequentially-
consistent stores. On x86 these compile to 'xchg' instructions, which showed up
as the most expensive part of the PseudoStack overhead.

MozReview-Commit-ID: IP9w9ievEXZ

--HG--
extra : rebase_source : 6b08b1ce98b59812e9da6da055a9a8daa18a1200
2018-02-05 16:41:29 -05:00
Markus Stange
3c3d175106 Bug 1385998 - Don't use atomic increments / decrements on stackPointer. r=froydnj
Only one thread ever modifies a PseudoStack, so we don't need to enforce
synchronization of writes from different threads. We can just read the old
value, add one to it, and then do an atomic store with the new value, because
we know that the current value of stackPointer can't have changed in the
meantime.

On its own, this patch actually seems to make things slower. But combined with
the next patch (which changes the memory ordering to ReleaseAcquire) it doesn't.
(I haven't checked whether the next patch on its own would give just as much
improvements with and without this patch.)

MozReview-Commit-ID: 3WIdyJC9kcj

--HG--
extra : rebase_source : c4e88746a0239cab3d0f9cf6f7b7fb10732a62ab
2017-08-02 14:36:43 -04:00
Markus Stange
49d6d03730 Bug 1348959 - Remove wraparound indexing in ProfileBuffer. r=djvj,mystor,njn
MozReview-Commit-ID: LeBFSRE6GXR

--HG--
extra : rebase_source : c46c0cd0dd543a367f72000e3cae65260a25b365
extra : source : 0f2e9dd7d45551d40944e4219e5a9eb92d54b2c4
2018-02-06 00:25:30 -05:00
Jon Coppeard
779ba02591 Bug 1432794 - Skip prototype and constructor intialization for off-thread parsing r=jandem 2018-01-30 17:57:40 +00:00
Jeff Walden
8314131139 Bug 1432646 - Implement mozilla::WrapToSigned. r=froydnj
--HG--
extra : rebase_source : 2c1a216830767da789eea59d00b55a45845f4d60
2018-01-25 14:48:01 -08:00
Jeff Walden
1cf916f6d8 Bug 1432646 - Don't overflow performing signed integer arithmetic when performing |JS::ToInt32(0xFFFFFFFF)|. r=froydnj
--HG--
extra : rebase_source : bf64d6eceb631fbd4fe018a34530defd59e20d71
2018-01-25 14:47:55 -08:00
Lars T Hansen
1ccda3f5bc Bug 1427130 - Add guard to SAB structured clone. r=jorendorff
This demotes a MOZ_RELEASE_ASSERT in the SAB case for SC write to a
run-time check.  The reason is that the clone policy must conform to
the clone scope, specifically, if the scope is DifferentProcess then
the policy must deny SAB.

The check was an assert previously because we mistakenly thought that
we controlled all the callers, but we do not - the TestingFunction
serialize() has a permissive API and instead of adding a lot of
complexity there we should change the assert to a run-time check.  The
code is more resilient as a result anyway.

Also document this quirk in the SC header file.

--HG--
extra : rebase_source : 4b632fe57bc9ebf3f38210b1ffad11fde57befa6
2018-01-15 11:31:35 +01:00
Steve Fink
f8eb88c8a6 Bug 903519 - Strings in the nursery: allow any thread to access zone of permanent atoms, r=jonco
--HG--
extra : rebase_source : 2d970b2ea4b2520f8f9ca1941e1fa21966119af5
extra : source : 7854bfe5d68346a38b25d93ea8870f47bce4f901
2017-07-30 13:21:53 -07:00
Steve Fink
1c184b5229 Bug 903519 - Strings in the nursery: barriers, r=jonco
--HG--
extra : rebase_source : 64f8aa23157acad4f56c0fedfe7055976ecdccaa
extra : source : 7d56db66836900bc7758c6829b9235a3dd26947e
2017-07-28 16:46:38 -07:00
Jan de Mooij
93e1e4e3d9 Bug 1432479 - Use XOR for Value unboxing on 64-bit to mitigate certain Spectre attacks. r=luke
--HG--
extra : rebase_source : e0825f48994b4556db2f71d04d3c0971de5275ac
2018-01-24 12:33:53 +01:00
Jason Orendorff
f5bc70ac9c Bug 1429206 - Part 1: Use js/TypeDecls.h instead of redeclaring certain types. r=jandem.
This adds JS::Zone to TypeDecls.h. Arguably that is pretty borderline, but
even though the Zone type is only used in a dozen or so places in Gecko,
it's a central concept.

--HG--
extra : rebase_source : 2267ad26c8888f3db9213acdb64ce7a56b1c16e5
extra : source : 7f7eb82a83f47c8e1a4b67527c42f88e35f9ff4a
2017-12-18 14:45:06 -06:00
Paul Bone
debeadacaa Bug 1430703 - Fix some too-loose static assertions r=cduan
--HG--
extra : rebase_source : 9a5b7de473290dc8d8578406513a9f002434b274
extra : histedit_source : cd563024fa007e3f40f108cd7d2339946bb40ec6
2017-12-13 11:31:39 +11:00
Chris Peterson
37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Jan de Mooij
03f5b1346f Bug 1113014 - Don't emit a branch in LoadDOMPrivate if we know the object kind (native or proxy) statically. r=bz
--HG--
extra : rebase_source : 6648791a98335471d84afbcff73d4801d80e602d
2018-01-12 12:47:19 +01:00
Noemi Erli
cea0d65a57 Backed out 20 changesets (bug 903519) for detected memory leaks on a CLOSED TREE
Backed out changeset 3f72f8747e29 (bug 903519)
Backed out changeset bb2cc298a155 (bug 903519)
Backed out changeset cc56f32ddae8 (bug 903519)
Backed out changeset ec5b307a28aa (bug 903519)
Backed out changeset 38f4e0426bdd (bug 903519)
Backed out changeset 71831e232df2 (bug 903519)
Backed out changeset 6f3666e9540e (bug 903519)
Backed out changeset c62e5867d763 (bug 903519)
Backed out changeset 7854bfe5d683 (bug 903519)
Backed out changeset f5f72c93adf9 (bug 903519)
Backed out changeset 7d56db668369 (bug 903519)
Backed out changeset 7c96258a6459 (bug 903519)
Backed out changeset 11b3f0fda4ad (bug 903519)
Backed out changeset 2bc9d427f427 (bug 903519)
Backed out changeset fdb6431ea4ff (bug 903519)
Backed out changeset 6d7d15b25489 (bug 903519)
Backed out changeset 457008b194a8 (bug 903519)
Backed out changeset 80b9d97bf1fe (bug 903519)
Backed out changeset 1fc5ee0d0116 (bug 903519)
Backed out changeset 9316d8f7b92a (bug 903519)
2018-01-11 22:18:23 +02:00
Steve Fink
cf8e0f399f Bug 903519 - Strings in the nursery: JIT, r=jandem
--HG--
extra : rebase_source : 5a63d6424a2d4a593e2d45beb8dd287278d3a6b0
2018-01-04 15:49:14 -08:00
Steve Fink
294ff2a8f0 Bug 903519 - Default nursery strings to off, add ability to enable, r=jonco
--HG--
extra : rebase_source : 17eb8dcee3ec3b1245e88fb672c8d9ef0180205c
2017-11-03 14:00:14 -07:00
Steve Fink
1510c0fff7 Bug 903519 - Change Relocated marker to not confuse string vs object bit, r=jonco
--HG--
extra : rebase_source : 20e3e3d984b4a523abb6f3e2e0383a110d50ab53
2017-11-03 12:27:52 -07:00
Steve Fink
ada1935fff Bug 903519 - Strings in the nursery: allow any thread to access zone of permanent atoms, r=jonco
--HG--
extra : rebase_source : b2ad4f1518f4dfb56dca2efbf22aaf173f09a2a3
2017-07-30 13:21:53 -07:00
Steve Fink
0c8e914a3b Bug 903519 - Strings in the nursery: barriers, r=jonco
--HG--
extra : rebase_source : e28ddcc4b57d7498f27f4d6c3cfa5fdacf3c56f4
2017-07-28 16:46:38 -07:00
Adrian Wielgosik
0e43a76787 Bug 1421358 - Remove GCRuntime::notifyDidPaint and refresh_frame_slices.enabled pref. r=jonco
MozReview-Commit-ID: HBh0qyPckKv
2018-01-06 22:25:25 +01:00
David Teller
4382d682b7 Bug 1377007 - GC for binjs-ref parser;r=sfink
MozReview-Commit-ID: EjZZ1ofm52t

--HG--
extra : rebase_source : 72f5f294fd11360260c6958520c980cd6dcb3427
2017-09-05 14:51:30 +02:00
Narcis Beleuzu
996e222d3a Backed out 7 changesets (bug 1377007) for web platform reftests failures on CSS2/borders. r=backout
Backed out changeset c30bc5d5adbc (bug 1377007)
Backed out changeset 33fdf9e531e2 (bug 1377007)
Backed out changeset 267abdb38036 (bug 1377007)
Backed out changeset 4a452c3ac115 (bug 1377007)
Backed out changeset e9310960c9e6 (bug 1377007)
Backed out changeset 8e5e61dfbbaf (bug 1377007)
Backed out changeset 9ac83e79e656 (bug 1377007)
2017-12-15 02:16:50 +02:00
David Teller
e6ed8aa3c2 Bug 1377007 - GC for binjs-ref parser;r=sfink
MozReview-Commit-ID: EjZZ1ofm52t

--HG--
extra : rebase_source : 9bad473b5b8b90c8fcc6f6b114d004ce97bb0cff
2017-09-05 14:51:30 +02:00
Jon Coppeard
ff4f5d0483 Backed out changesets 115d70e6c818 and 1938afc34193 for memory and performance regressions (bug 1422575) 2017-12-12 16:29:19 -06:00
Jon Coppeard
0228e51379 Bug 1422575 - Give hash tables a minimum capacity based on the parameter passed to init() r=sfink 2017-12-07 18:28:42 +00:00
Dorel Luca
20ddc8dfae Backed out 7 changesets (bug 1377007) for failing build bustage on Linux pgo and faling Cpp's jsapi-tests r=backout on a CLOSED TREE
Backed out changeset 9428a4ed7dec (bug 1377007)
Backed out changeset 4407b43a8aff (bug 1377007)
Backed out changeset 65a37a7f78a5 (bug 1377007)
Backed out changeset 276fe6d9b716 (bug 1377007)
Backed out changeset 1de46e60ffba (bug 1377007)
Backed out changeset 893e303e17ec (bug 1377007)
Backed out changeset 081a241e25d4 (bug 1377007)
2017-12-04 18:01:09 +02:00
David Teller
6cbd331d9e Bug 1377007 - GC for binjs-ref parser;r=sfink
MozReview-Commit-ID: EjZZ1ofm52t

--HG--
extra : rebase_source : f45fc9709f0c2d18baccdc27cba3476b7a610b61
2017-09-05 14:51:30 +02:00
Andrew McCreight
6d088f4ffe Bug 1421355, part 6 - Remove JS::NotifyDidPaint. r=jonco
MozReview-Commit-ID: 6rdvr6QfAD1

--HG--
extra : rebase_source : e3e1fb7de9cc30d10cd17d00f4290e27a46b4c0e
2017-11-28 10:04:23 -08:00
Lars T Hansen
3f9a90d355 Bug 1412852 - Structured clone WebAssembly.Memory objects. r=sfink
--HG--
extra : rebase_source : 0f96caf022c5d0ec51e5c9710468ed8015acf4aa
2017-10-31 13:38:28 +01:00
Jan de Mooij
07aeac9fbf Bug 1419497 part 2 - Optimize pre-barriers in jit code by handling more cases without calling into C++. r=jonco 2017-11-22 09:40:00 +01:00
Ted Campbell
78a8f17527 Bug 1418842 - Support JS_OOM_BREAKPOINT on MSVC. r=sfink
MozReview-Commit-ID: CHLvYjKkP7n
2017-11-19 14:35:00 +02:00
Jon Coppeard
d263df0462 Bug 1417123 - Move rooting-related classes from jspubtd.h to public/RootingAPI.h r=sfink 2017-11-16 12:21:07 +00:00
Jon Coppeard
7a796ccffb Bug 1417123 - Move high level GC APIs to public/GCAPI.h r=sfink 2017-11-16 12:21:07 +00:00
Jon Coppeard
0cfc710f84 Bug 1417123 - Move barrier function declarations to public/HeapAPI.h r=sfink 2017-11-16 12:21:07 +00:00
Jan de Mooij
793d5faa99 Bug 1417844 part 4 - Remove more JSVersion code. r=evilpie 2017-11-17 12:13:42 +01:00
Csoregi Natalia
635fe8c86f Backed out 4 changesets (bug 1417123) for failing Spidermonkey builds js/src/jspubtd.h:100 r=backout
Backed out changeset 5af31f9f6bb5 (bug 1417123)
Backed out changeset f287a77b84c2 (bug 1417123)
Backed out changeset 57be86412a37 (bug 1417123)
Backed out changeset 14a6856d7361 (bug 1417123)
2017-11-16 15:05:54 +02:00
Jon Coppeard
28fca947a5 Bug 1417123 - Move rooting-related classes from jspubtd.h to public/RootingAPI.h r=sfink 2017-11-16 12:21:07 +00:00
Jon Coppeard
65b7a83d09 Bug 1417123 - Move high level GC APIs to public/GCAPI.h r=sfink 2017-11-16 12:21:07 +00:00
Jon Coppeard
08052a293d Bug 1417123 - Move barrier function declarations to public/HeapAPI.h r=sfink 2017-11-16 12:21:07 +00:00