Commit Graph

797 Commits

Author SHA1 Message Date
Tooru Fujisawa
9cb07d0c86 Bug 1743623 - Part 4: Stop registering callback for worker override. r=jandem
Depends on D133977

Differential Revision: https://phabricator.services.mozilla.com/D133978
2022-01-11 12:03:55 +00:00
Tooru Fujisawa
251c27680a Bug 1743623 - Part 3: Remove worker-specific override from JS GC zeal options. r=dom-worker-reviewers,smaug
Also fixed the case of the preference name (gcZeal => gczeal).

Differential Revision: https://phabricator.services.mozilla.com/D133977
2022-01-11 12:03:54 +00:00
Tooru Fujisawa
1948e06abc Bug 1743623 - Part 2: Remove worker-specific override from JS GC memory options. r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D133976
2022-01-11 12:03:54 +00:00
Tooru Fujisawa
fef0e6dc74 Bug 1743623 - Part 1: Remove worker-specific override from JS context options. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D133975
2022-01-11 12:03:54 +00:00
Norisz Fay
20994191cc Backed out 9 changesets (bug 1744025) for causing wpt failures on CheckedUnsafePtr.h CLOSED TREE
Backed out changeset 89dca4fc5940 (bug 1744025)
Backed out changeset 7aa395dcdbe4 (bug 1744025)
Backed out changeset 1580a4ea1a85 (bug 1744025)
Backed out changeset af171636a87f (bug 1744025)
Backed out changeset a5edfa1c9cd6 (bug 1744025)
Backed out changeset 8abd6ba69815 (bug 1744025)
Backed out changeset cfb822df5b3f (bug 1744025)
Backed out changeset 5598943a94fd (bug 1744025)
Backed out changeset 43186fbbf8b4 (bug 1744025)
2021-12-15 18:46:01 +02:00
Eden Chuang
08515f6937 Bug 1744025 - Replace include "mozilla/dom/WorkerPrivate.h" with include "mozilla/dom/WorkerScope.h" where WorkerPrivate->GlobalScope() is called. r=dom-worker-reviewers,smaug,jstutte
#include "mozilla/dom/WorkerScope.h" is removed from WorkerPrivate.h, where calling WorkerPrivate::GlobalScope() without include "WorkerScope.h" makes WorkerScope as an incomplete type.


Depends on 132800

Depends on D132800

Differential Revision: https://phabricator.services.mozilla.com/D133483
2021-12-15 13:48:19 +00:00
Jens Stutte
107ce29742 Bug 1744025: Use CheckedUnsafePtr<WorkerPrivate> in WorkerPrivate where possible. r=dom-worker-reviewers,asuth
Depends on D132709

Differential Revision: https://phabricator.services.mozilla.com/D132710
2021-12-15 13:48:17 +00:00
Emilio Cobos Álvarez
78c6b0dbee Bug 1745428 - Make dom.maxHardwareConcurrency not require a restart. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D133484
2021-12-10 18:42:06 +00:00
Sandor Molnar
f526e5603d Backed out 8 changesets (bug 1744025) for causing bp-hybrid bustages in dom/clients/api/Clients.cpp. CLOSED TREE
Backed out changeset b6452430763d (bug 1744025)
Backed out changeset 46e9f06636da (bug 1744025)
Backed out changeset 913cdee4824f (bug 1744025)
Backed out changeset e1bc4e2066c7 (bug 1744025)
Backed out changeset e6b99af4b7ca (bug 1744025)
Backed out changeset e9b749f80ec2 (bug 1744025)
Backed out changeset 26d3176a00ef (bug 1744025)
Backed out changeset 2c8941fdcee5 (bug 1744025)
2021-12-08 01:30:06 +02:00
Jens Stutte
65cb9a3cdb Bug 1744025: Use CheckedUnsafePtr<WorkerPrivate> in WorkerPrivate where possible. r=dom-worker-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D132710
2021-12-07 16:47:15 +00:00
Tooru Fujisawa
a9cc13648e Bug 1743223 - Add xpc::SetPrefableContextOptions to share JS::Contextoptions handling between main thread and workers. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D132331
2021-11-29 08:46:29 +00:00
Lars T Hansen
027d1ba7ee Bug 1742790 - Make WasmFeatures more flexible. r=rhunt
Introduce a TENTATIVE state for a feature that allows the shell flags
to be used more flexibly: the feature is enabled bug --wasm-whatever
can be used as a no-op.  This helps reduce breakage while we're in the
process of enabling a feature by default.

Finesse the EXPERIMENTAL state so that --no-wasm-whatever is accepted
as a no-op.

Differential Revision: https://phabricator.services.mozilla.com/D132017
2021-11-24 19:31:55 +00:00
Steve Fink
5fa1cff317 Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-14 18:15:40 +00:00
criss
018a582464 Backed out 6 changesets (bug 1732161) for causing linux base toolchains bustages. CLOSED TREE
Backed out changeset 766a1bc74001 (bug 1732161)
Backed out changeset aed63de28354 (bug 1732161)
Backed out changeset 98eaff0d5124 (bug 1732161)
Backed out changeset 76c21ec8ffb6 (bug 1732161)
Backed out changeset 49dcac272f05 (bug 1732161)
Backed out changeset 67d81f8f413e (bug 1732161)
2021-10-14 05:38:08 +03:00
Steve Fink
f3bfff8a49 Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-13 22:32:59 +00:00
Narcis Beleuzu
65f3ea6e63 Backed out 6 changesets (bug 1732161) for build bustages on nsCycleCollectionParticipant.h CLOSED TREE
Backed out changeset 7271b938e71a (bug 1732161)
Backed out changeset d24b8450b7ed (bug 1732161)
Backed out changeset fb1838a152f2 (bug 1732161)
Backed out changeset 84787a58a428 (bug 1732161)
Backed out changeset 6acb82c0ac3c (bug 1732161)
Backed out changeset 50d17b172185 (bug 1732161)
2021-10-12 07:13:13 +03:00
Steve Fink
f0c09d1a30 Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-11 21:39:08 +00:00
Butkovits Atila
ec4d11eaf6 Backed out 6 changesets (bug 1732161) for causing assertion failures in CCGCScheduler.h. CLOSED TREE
Backed out changeset 88dbe1a7478c (bug 1732161)
Backed out changeset a5a2c9c53340 (bug 1732161)
Backed out changeset d83b36b92051 (bug 1732161)
Backed out changeset b339e54078d7 (bug 1732161)
Backed out changeset 0cbf901cab8b (bug 1732161)
Backed out changeset b3e894d590d9 (bug 1732161)
2021-10-05 03:47:08 +03:00
Steve Fink
eb884e4260 Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-04 23:06:08 +00:00
Olli Pettay
62030def18 Bug 1714228, clear worker refs even if the Worker never runs, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D125614
2021-09-16 14:11:34 +00:00
Matthew Gaudet
56ac045fd3 Bug 1728802 - Remove overly paranoid guarding of class static block preference to allow riding the trains r=arai
Differential Revision: https://phabricator.services.mozilla.com/D124465
2021-09-03 16:54:12 +00:00
Andi-Bogdan Postelnicu
ac52a11dcd Bug 1519636 - Reformat recent changes to the Google coding style. r=emilio
Updated with clang-format version 12.0.1 (taskcluster-dNZqCRqWRTqa6cZxPKxh7Q)

Differential Revision: https://phabricator.services.mozilla.com/D122814
2021-08-23 09:30:23 +00:00
Yulia Startsev
7ea1512946 Bug 1725621 - Remove Top Level Await preference and associated code; r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D122586
2021-08-17 13:08:00 +00:00
Jon Coppeard
0b091d0be8 Bug 1725584 - Add browser prefs for more GC parameters r=smaug
Depends on D122600

Differential Revision: https://phabricator.services.mozilla.com/D122601
2021-08-13 13:58:25 +00:00
Olli Pettay
7ac6295b85 Bug 1724777, optimize suppressed MicroTask handling, r=mccr8
The test is in theory racy, but trying to limit the cases when it might behave badly
by running it on opt desktop builds only. Without the patch the 'period' check takes over 400ms locally and with the
patch 1-3ms.

The changes are just trying to optimize execution, not change the behavior.
Use of SuppressedMicroTasks is perhaps a bit odd, but it helps keeping
SavedMicroTaskQueue and similar code simple.

Differential Revision: https://phabricator.services.mozilla.com/D122290
2021-08-12 16:01:08 +00:00
Kagami Sascha Rosylight
0ac98622fa Bug 1723050 - Part 33: Replace typedef by using in dom/workers/ r=dom-worker-reviewers,edenchuang
Differential Revision: https://phabricator.services.mozilla.com/D121331
2021-08-11 14:41:34 +00:00
Marian-Vasile Laza
e81abe7dc3 Backed out 2 changesets (bug 1723050) for causing build bustages on WorkerNavigator.h. CLOSED TREE
Backed out changeset 0df5cdd9fe17 (bug 1723050)
Backed out changeset db4915198404 (bug 1723050)
2021-08-11 14:14:20 +03:00
Kagami Sascha Rosylight
4f0d448d0a Bug 1723050 - Part 33: Replace typedef by using in dom/workers/ r=dom-worker-reviewers,edenchuang
Differential Revision: https://phabricator.services.mozilla.com/D121331
2021-08-11 09:10:25 +00:00
Matthew Gaudet
47d0ad6618 Bug 1712174 - Add browser preference for class static blocks r=yulia
Differential Revision: https://phabricator.services.mozilla.com/D116875
2021-06-07 14:57:42 +00:00
Matthew Gaudet
5e57c4f2ef Bug 1714105 - Enable ergonomic brand checks in workers r=yulia
Differential Revision: https://phabricator.services.mozilla.com/D116745
2021-06-07 14:56:56 +00:00
Nicolas B. Pierron
41c756a1f0 Bug 1458339 part 2 - Use shared memory to initialize the JS engine. r=smaug,tcampbell,necko-reviewers
This modification relies on the shared memory implemented in Bug 1698045 and on
the ability to encode and decode self-hosted content from Bug 1668361 to
optimize the JS engine initialization by making the parent process encode the
self-hosted stencil, such that all other runtime initialization would only have
to decode it, including content processes.

Differential Revision: https://phabricator.services.mozilla.com/D110578
2021-05-12 13:57:56 +00:00
Ryan Hunt
a8903b136c Bug 1677204 - wasm: Factor out feature gating to declarative macro. r=lth
This commit adds a declarative `JS_FOR_WASM_FEATURES` macro which
expands for every WebAssembly proposal we are gating. Most feature
gating code is refactored to use this macro so that we have one place
we need to change to get the majority of this code working. The only
place that needs to be updated for new features is the browser pref
declaration code, as that cannot use this macro. This is documented
in the new WasmFeatures.h header.

The feature gating logic should work almost identically as before.
The changes are:
 * All browser prefs are moved to StaticPrefList.yaml
 * The code to enable a feature was conditionally compiled to not
   enable the feature at variously stages of the "flag-flow". Now
   the only place that is conditionally compiled to not work is
   in the WasmXFlag functions. This is to make the macro simpler
   and might be able to be reverted if need be.
 * The flag for gc is shortened from gcTypes to gc so that the
   existing usages of the wasmGcEnabled shell function don't have
   to change.

This commit also has the effect of giving function-references/gc/
exception-handling a proper browser pref for enabling the features.

Differential Revision: https://phabricator.services.mozilla.com/D110820
2021-04-09 20:03:51 +00:00
Ryan Hunt
4c325f212f Bug 1677204 - wasm: Remove multi-value flag. r=lth
Multi-value has shipped and can remove its feature flag.

Differential Revision: https://phabricator.services.mozilla.com/D110819
2021-04-09 20:03:51 +00:00
Simon Giesecke
9e995a79e8 Bug 1184468 - Use nsBaseHashtable::Values. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D108587
2021-03-24 17:56:49 +00:00
Ted Campbell
d8bcf7db42 Bug 1698473 - Ensure WASM prefs are read in workers. r=lth
The `dom::workerinternals::LoadContextOptions` must match the
`ReloadPrefsCallback` handler in order for workers to get the pref updates.

This patch add missing wasm_simd_wormhole and wasm_baselinejit options to
workers. This does change web behaviour but we always intended for the
workers to have same behaviour as main-thread for these two features.

Differential Revision: https://phabricator.services.mozilla.com/D108491
2021-03-15 19:23:52 +00:00
Simon Giesecke
7c2f4b7743 Bug 1693306 - Simplify some uses of LookupOrInsertWith by GetOrInsertNew. r=xpcom-reviewers,necko-reviewers,dragana,nika
Differential Revision: https://phabricator.services.mozilla.com/D105479
2021-02-26 09:22:54 +00:00
Simon Giesecke
7c075f27d9 Bug 1691913 - Rename nsBaseHashtable::GetOrInsert(With) to LookupOrInsert(With). r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika
The functions should be called "Lookup" rather than "Get" because they return
a DataType& (rather than UserDataType).

Differential Revision: https://phabricator.services.mozilla.com/D105472
2021-02-26 09:11:45 +00:00
Simon Giesecke
9d60f9c227 Bug 1691894 - Simplify uses of WithEntryHandle that only use OrInsert(With) by using GetOrInsertWith. r=xpcom-reviewers,necko-reviewers,jgilbert,nika
Differential Revision: https://phabricator.services.mozilla.com/D104676
2021-02-22 12:07:46 +00:00
Simon Giesecke
d87a4a852a Bug 1691894 - Fix EntryHandle to only work with DataType rather than wrapping UserDataType. r=xpcom-reviewers,necko-reviewers,nika,jonco,valentin
Differential Revision: https://phabricator.services.mozilla.com/D104810
2021-02-12 15:25:40 +00:00
Simon Giesecke
8012be425d Bug 1688833 - Migrate LookupForAdd to WithEntryHandle in dom/workers. r=janv
Differential Revision: https://phabricator.services.mozilla.com/D104191
2021-02-09 18:19:36 +00:00
Simon Giesecke
6d58b6d875 Bug 1687597 - Ensure worker thread is reset before scheduling for deletion. r=dom-workers-and-storage-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D102439
2021-01-26 09:47:08 +00:00
Tom Schuster
f1ab2d1da6 Bug 1687063 - Improve error messages when trying to consume a Reponse for WebAssembly. r=lth
Differential Revision: https://phabricator.services.mozilla.com/D102055
2021-01-18 12:16:33 +00:00
Simon Giesecke
fbb9c742c8 Bug 1679272 - Include ScopeExit.h exactly where used. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D98888
2020-12-07 14:25:59 +00:00
yulia
fddc2da36c Bug 1519100 - Add flag for experimental Top Level Await feature; r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D97180
2020-12-04 08:52:29 +00:00
Razvan Maries
eca81a73f1 Backed out 15 changesets (bug 1519100) as per Yulia's request. CLOSED TREE
Backed out changeset 16dc37dadf05 (bug 1519100)
Backed out changeset 019b00c63941 (bug 1519100)
Backed out changeset 1155eecec034 (bug 1519100)
Backed out changeset 53a792431e11 (bug 1519100)
Backed out changeset 55918f941155 (bug 1519100)
Backed out changeset 683743bd0395 (bug 1519100)
Backed out changeset 63d506024693 (bug 1519100)
Backed out changeset 8b5244786634 (bug 1519100)
Backed out changeset 3a0a021acc08 (bug 1519100)
Backed out changeset d5bff6c95feb (bug 1519100)
Backed out changeset bab7e81a6c2c (bug 1519100)
Backed out changeset b521ccd694f8 (bug 1519100)
Backed out changeset 9f559a616909 (bug 1519100)
Backed out changeset 98146209da6f (bug 1519100)
Backed out changeset a3ea6c49dbf7 (bug 1519100)
2020-12-03 20:37:45 +02:00
yulia
0c626f5b9c Bug 1519100 - Add flag for experimental Top Level Await feature; r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D97180
2020-12-03 15:24:22 +00:00
Bogdan Tara
6a555cd304 Backed out 15 changesets (bug 1519100) for wpt leaks CLOSED TREE
Backed out changeset 7302ebdbaa35 (bug 1519100)
Backed out changeset 5b89081f0f08 (bug 1519100)
Backed out changeset ee02050e3c97 (bug 1519100)
Backed out changeset 47cf4bde107e (bug 1519100)
Backed out changeset bfd96f55a3bd (bug 1519100)
Backed out changeset c9afefd66eb7 (bug 1519100)
Backed out changeset 90b61247d071 (bug 1519100)
Backed out changeset e0250e4cba61 (bug 1519100)
Backed out changeset 5f90543431cb (bug 1519100)
Backed out changeset d7f3440addc7 (bug 1519100)
Backed out changeset 10194540aff0 (bug 1519100)
Backed out changeset 880873b815a4 (bug 1519100)
Backed out changeset d99f0109da7a (bug 1519100)
Backed out changeset c723f6b16b67 (bug 1519100)
Backed out changeset da24af409d92 (bug 1519100)
2020-12-02 21:14:35 +02:00
yulia
234952425e Bug 1519100 - Add flag for experimental Top Level Await feature; r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D97180
2020-12-02 12:38:17 +00:00
Lars T Hansen
07fa45a391 Bug 1674722 - Fix prefs, switches, and selection for cranelift. r=rhunt
This patch makes cranelift and ion exclusive of each other: enabling
cranelift on a platform will effectively disable Ion on that platform.

Specifically there's a change at the pref/switch level that does not
go terribly deep:

- the new about:config option is javascript.options.wasm_optimizingjit,
  the old wasm_cranelift and wasm_ionjit are no more
- new values of X in --wasm-compiler=X in the js shell are 'optimizing'
  and 'baseline+optimizing', the old values 'cranelift', 'ion',
  'baseline+ion' and 'baseline+optimizing' are still accepted but only
  when ion or cranelift is available
- we keep the separate prefs internally in the code for ion and cranelift
  but if ENABLE_WASM_CRANELIFT is defined then we never set the ion
  pref to true, and if it is not defined then we never set the cranelift
  pref to true

The trickiest changes are in testWasm.cpp and in the JIT compiler option
processing in jsapi.cpp.

People who will suffer as a result of this are those who are working
on ports of cranelift to new platforms in Firefox.  As of now we have
no such work going on.

In the longer term the exclusive-or situation can be alleviated by a
switch that lets cranelift override ion when cranelift is present and
the switch is on.  Patches welcome.

Differential Revision: https://phabricator.services.mozilla.com/D96059
2020-11-11 09:20:13 +00:00
Jeff Walden
bcf52e789b Bug 1663365 - Move ctypes APIs out of jsfriendapi.h into a new js/public/experimental/CTypes.h header. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D95671
2020-11-07 00:04:26 +00:00