Jon Coppeard
c772fc6cda
Bug 1573844 - Remove external references to js::Class r=mccr8
...
Depends on D41985
Differential Revision: https://phabricator.services.mozilla.com/D41986
--HG--
extra : moz-landing-system : lando
2019-08-14 17:15:15 +00:00
Jon Coppeard
66fc30ba53
Bug 1573844 - Remove js::Class definition and alias JSClass to it r=tcampbell,mccr8
...
JSClass contained void* members corresponding to the internal pointer members of js::Class. This stores the internal members in JSClass and removes js::Class.
This leaves js::Class aliased to JSClass while we remove references to it. I also aliased Jsvalify and Valueify into global scope temporarily to make this compile. These get removed in the following patches.
I had to remove a few functions which now don't compile with js::Class being the same type as JSClass.
Differential Revision: https://phabricator.services.mozilla.com/D41983
--HG--
extra : moz-landing-system : lando
2019-08-15 08:32:22 +00:00
Jon Coppeard
a96229ddb3
Bug 1512749 - Convert JS::gcreason::Reason to enum class JS:GCReason r=jonco r=mccr8
2019-01-21 13:09:12 +00:00
Sylvestre Ledru
265e672179
Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
...
# ignore-this-changeset
--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Yoshi Huang
f2e1d9efb3
Bug 1478533 - Add a static_assert for WeakMap. r=jonco, mccr8
...
If an object is used as a WeakMap key, its TraceKind should be added
into CC graph, so adding a static_assert to make sure this.
2018-11-16 10:58:34 +01:00
André Bargull
25471aeefb
Bug 1464475: Use HandleValue for the ErrorInterceptor API. r=sfink
...
--HG--
extra : rebase_source : 80419328a515a921498383b126904c17287ea85c
2018-10-26 10:38:30 -07:00
Luke Wagner
109280bf02
Bug 1330661 - Baldr: make the BuildIdOp a process global (r=lth,mccr8)
...
--HG--
extra : rebase_source : 0388505583fb0b445f989e3a8b97ec861ed62499
2018-09-04 14:25:57 -05:00
Gabriele Svelto
15adf94f4d
Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
...
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.
All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.
--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 15:42:11 +02:00
Tooru Fujisawa
1b2c111e0a
Bug 1434305 - Part 3: Support LazyScript in WeakMap. r=jimb,sfink
2018-07-26 12:36:16 +09:00
Jan de Mooij
c542e6498e
Bug 1474522
- Change PrepareScriptEnvironmentAndInvoke to always take a global object instead of an arbitrary scope. r=bholley
...
js-ctypse now passes the context's current global instead of the closure function it's calling.
2018-07-11 11:44:52 +02: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
David Teller
e5c2a5003e
Bug 1409852 - Expose an API in ChromeUtils to detect chrome JS dev errors;r=bz
...
MozReview-Commit-ID: GluMLeQOHTZ
--HG--
extra : rebase_source : 37516c3b76a9eb7821ba66ee46ba3c5c0f659e2e
2017-11-16 10:48:45 +01:00
Csoregi Natalia
9743e10556
Backed out 3 changesets (bug 1409852) for build bustage and failing test_js_dev_error_interceptor.js. r=backout on a CLOSED TREE
...
Backed out changeset 06368bf1a32c (bug 1409852)
Backed out changeset 46fce9a2622d (bug 1409852)
Backed out changeset 649d7bdf80ad (bug 1409852)
2017-12-21 15:31:27 +02:00
David Teller
9e97d5406a
Bug 1409852 - Expose an API in ChromeUtils to detect chrome JS dev errors;r=bz
...
MozReview-Commit-ID: GluMLeQOHTZ
--HG--
extra : rebase_source : e1551690496cde70d72c4d35c8a57927ed54a68b
2017-11-16 10:48:45 +01:00
Andrea Marchesini
b1b879f86e
Bug 1422316 - WorkerJSRuntime::Shutdown must call the base class ::Shutdown method, f=yoric, r=bkelly
2017-12-18 17:59:30 +01:00
Chia-Hung Duan
360fc92c15
Bug 1376891 - Support idle runnable for nursery collection. r=jonco, r=smaug
2017-10-30 18:07:42 +08:00
Csoregi Natalia
b0832d7215
Backed out changeset fbf84e79c44c (bug 1376891) for bustage CycleCollectedJSRuntime.h:254 r=backout on a CLOSED TREE
2017-11-01 15:32:09 +02:00
Chia-Hung Duan
778619638a
Bug 1376891 - Support idle runnable for nursery collection. r=jonco, r=smaug
2017-10-30 18:07:42 +08:00
Jon Coppeard
3460a3c5dd
Bug 1378717 - Store JS holders in a vector for faster iteration r=smaug
2017-07-11 16:52:01 +01:00
Boris Zbarsky
239e1057ca
Bug 1376954 part 1. Ensure that we don't try to nursery-allocate non-wrappercached DOM objects. r=smaug
2017-06-30 10:15:51 -07:00
Nicholas Nethercote
4b364cf3f3
Bug 1375299 (part 1) - Reduce usage of MOZ_GECKO_PROFILER. r=mstange.
...
This patch reduces the differences between builds where the profiler is enabled
and those where the profiler is disabled. It does this by removing numerous
MOZ_GECKO_PROFILER checks.
These changes have the following consequences.
- Various functions and classes are now defined in all builds, and so can be
used unconditionally: profiler_add_marker(), profiler_set_js_context(),
profiler_clear_js_context(), profiler_get_pseudo_stack(), AutoProfilerLabel.
(They are effectively no-ops in non-profiler builds, of course.)
- The no-op versions of PROFILER_* are now gone. The remaining versions are
almost no-ops when the profiler isn't built.
--HG--
extra : rebase_source : 8fb5e8757600210c2f77865694d25162f0b7698a
2017-06-22 06:26:16 +10:00
Andrew McCreight
bc3190039b
Bug 1364528 - Don't synchronously finalize native objects if an exception is pending. r=smaug
...
MozReview-Commit-ID: 6OY3ftH1aWu
--HG--
extra : rebase_source : 54da36f422af673762aa31e5a1225783e5f776e4
2017-05-12 11:16:16 -07:00
Steve Fink
7ef280069e
Bug 1322560 - Record minor GC timings in profiles, r=jonco, mccr8, mstange
...
--HG--
extra : rebase_source : 073eceb4216b0505f8cbce0947e3e5091626ead1
2017-04-25 13:24:34 -07:00
Bill McCloskey
34a4f034bb
Bug 1359245 - Remove references to context from the cycle collector (r=mccr8)
...
MozReview-Commit-ID: 1QoNEiZMvBf
2017-04-27 15:34:46 -07:00
Bill McCloskey
1d5c5ef48b
Bug 1359245 - Keep a linked list of CycleCollectedJSContexts in the runtime (r=mccr8)
...
This patch keeps a list of all the cooperatively scheduled contexts that are
linked to a runtime. In places where we need to iterate over all contexts (for
GC, specifically), it iterates over the list.
MozReview-Commit-ID: 3pKJX78f2l0
2017-04-27 15:34:46 -07:00
Bill McCloskey
ee9f642133
Bug 1359245 - Remove CycleCollectedJSRuntime::mJSContext (r=mccr8,sfink)
...
This patch eliminates a field where we assume that there is one
CycleCollectedJSContext per runtime.
MozReview-Commit-ID: 5cEL5Ml6Y9v
2017-04-27 15:34:46 -07:00
Bill McCloskey
11b1f07146
Bug 1359245 - Get rid of CycleCollectedJSRuntime::MainContext (r=mccr8)
...
This is another method that assumes one context per runtime. This patch
eliminates the method.
MozReview-Commit-ID: JHcQ1nyiHSP
2017-04-27 15:34:46 -07:00
Bill McCloskey
207af130a2
Bug 1343396 - Split CycledCollectedJSContext and XPCJSContext into separate context and runtime classes (r=mccr8)
...
To run JS in separate cooperative threads, we need to split up per-thread state
from per-runtime state. This patch does that for XPConnect.
MozReview-Commit-ID: 407SlJ7nR6v
2017-04-18 17:01:04 -07:00
Jan de Mooij
a53986bf29
Bug 1302448 part 1 - Rename CycleCollectedJSRuntime to CycleCollectedJSContext. r=mccr8
...
--HG--
rename : xpcom/base/CycleCollectedJSRuntime.cpp => xpcom/base/CycleCollectedJSContext.cpp
rename : xpcom/base/CycleCollectedJSRuntime.h => xpcom/base/CycleCollectedJSContext.h
extra : rebase_source : 075214b5057f151520926715b6154e99ae80a0b3
2016-09-14 15:47:32 +02:00
Olli Pettay
8744d0ccf8
Bug 1298661, let meta-stable state runnables run during sync loops, r=baku
2016-09-05 18:54:04 +03:00
Jan de Mooij
5a6befce76
Bug 1292892 part 2 - Some RootingContext cleanup. r=bz,terrence
2016-08-11 14:39:22 +02:00
Jan de Mooij
0ad12515f4
Bug 1292892 part 1 - Stop using JSRuntime outside SpiderMonkey. r=bz,terrence,fitzgen,kanru
2016-08-11 14:39:22 +02:00
Jan de Mooij
c7e88a5ad8
Bug 1286795 part 6 - Replace JS_NewRuntime/JS_DestroyRuntime with JS_NewContext/JS_DestroyContext. r=luke,bz
2016-07-23 19:54:19 +02:00
Jan de Mooij
fd0edec3bf
Bug 1286795 part 4 - Change some callbacks to take JSContext instead of JSRuntime. r=terrence
2016-07-23 19:52:47 +02:00
Chris Peterson
43c2748f66
Bug 1277775 - Replace MOZ_CONSTEXPR{_VAR,_TMPL} with constexpr. r=froydnj
2016-07-08 14:39:53 -07:00
Nathan Froyd
2c2b9296bc
Bug 1283616 - part 2 - micro-optimize inserting microtask runnables into the queue; r=khuey
...
We can save an AddRef/Release pair by passing in the reference to the queue.
2016-07-05 18:49:06 -04:00
Till Schneidereit
14a62c9039
Bug 911216 - Part 27: Properly set up incumbent and current globals for Promise reaction jobs. r=efaust,bz
2016-07-02 02:00:47 +02:00
Boris Zbarsky
759bad9a0b
Bug 767938 part 11. Move the "safe JS context" to where it belongs: the CycleCollectedJSRuntime. r=bholley
2016-06-24 14:19:51 -04:00
Till Schneidereit
b0d2250794
Bug 911216 - Part 24: Use promise rejection tracking to report unhandled rejections to the console. r=bz,Paolo
2016-03-22 16:22:24 +01:00
Jan de Mooij
8c1aaa3154
Bug 1278947 part 1 - Stop using JSContext callback in XPConnect. r=bz
...
--HG--
extra : rebase_source : 1e971a2a2a2a2b9068bd59d98156fa84b8f4b105
2016-06-10 09:27:14 +02:00
Boris Zbarsky
89b93668b8
Bug 1276112. Stop using GetScriptContextFromJSContext in CycleCollectedJSRuntime::UsefulToMergeZones. r=mccr8
2016-05-27 13:28:26 -04:00
Carsten "Tomcat" Book
81eb193787
Backed out changeset e8af287d0d10 (bug 1276112) for causing windows gl crashes
2016-05-30 10:29:44 +02:00
Boris Zbarsky
74ebb7940f
Bug 1276112. Stop using GetScriptContextFromJSContext in CycleCollectedJSRuntime::UsefulToMergeZones. r=mccr8
2016-05-27 13:28:26 -04:00
Till Schneidereit
5e6b8217c4
Bug 911216 - Part 13: Set Promise allocation stack as async stack for Promise callback jobs. r=efaust,bz
2016-03-22 16:22:23 +01:00
Andrew McCreight
1dc278fe13
Bug 1271848, part 1 - Add ClassName() method to the CC participant. r=smaug
...
This will let us report better information about participants at runtime.
2016-05-12 10:54:33 -07:00
Nicholas Nethercote
d84e6264da
Bug 1265035 - Make ~WorkerJSRuntime() handle Initialize() failure better. r=khuey.
...
--HG--
extra : rebase_source : 4b2cb2ef8192f314a28556826044f010a52b90b4
2016-04-19 14:04:32 +10:00
Eddy Bruel
3e2cb55980
Bug 1229769 - We should be able to use DOM promises in the worker debugger;r=khuey
2016-03-24 16:12:00 +01:00
Tooru Fujisawa
e2a8d2a6b4
Bug 1153978 - Part 1: Separate buildIdOp from AsmJSCacheOps. r=jandem,bz
2016-01-01 14:19:20 +09:00
Boris Zbarsky
94e65058c3
Bug 1252565 part 1. Push the script environment preparer bits up from XPCJSRuntime to CycleCollectedJSRuntime, because we need them on workers to do ctypes on workers properly. r=bholley
2016-03-02 12:38:24 -05:00
Wes Kocher
cba1a7bd55
Backed out 2 changesets (bug 1252565) for windows build bustage CLOSED TREE
...
Backed out changeset 9de2c10a1cc3 (bug 1252565)
Backed out changeset fc5c4cb02d24 (bug 1252565)
MozReview-Commit-ID: GCQedQwqslg
--HG--
extra : amend_source : 5fb6bd99e2ac56c01c06e1004262dfeb2ea56410
2016-03-02 10:44:11 -08:00