The original code doesn't work for "writing-mode:vertical-rl" because
its block flow direction is the opposite of "writing-mode:vertical-lr."
Differential Revision: https://phabricator.services.mozilla.com/D96786
The navigator.mozGetUserMedia() fully active test is merged into the existing single-level
active test with a synchronous exception. The async error dispatch for empty constraints,
which aligns with the spec, is retained.
Differential Revision: https://phabricator.services.mozilla.com/D96519
Currently, in LTO builds, we use the new pass manager during the initial translation to bitcode but not for the final optimization during linking.
On Linux, we can enable the new pass manager during LTO with a plugin option. I've landed a patch upstream to allow it on Windows as well, which is included here.
Switching the pass manager brings speed improvements on its own, but it also reduces code size by ~6%, which we can use a portion of as budget to increase the import limit (via the hot multiplier) for even more speed improvements.
Differential Revision: https://phabricator.services.mozilla.com/D96108
A new `BrowsingContext` field has been added to track the active
browser window for the `:-moz-window-inactive` pseudoclass. This
field takes the place of `nsPIDOMWindowOuter::mIsActive`.
With this change `:-moz-window-inactive` is now fission compatible.
Differential Revision: https://phabricator.services.mozilla.com/D86422
This change adds a code path to avoid instancing, enabled (if supported) on non-Intel GPUs.
Side note: we still need a plan on what to do on devices that support neither of base-instance or SSBO.
Differential Revision: https://phabricator.services.mozilla.com/D87826
By using a string instead of list for the command, we leave it to
the run-task transform to wrap with bash, which we don't need to do
ourselves anymore.
Differential Revision: https://phabricator.services.mozilla.com/D96963
Currently, if a task defines its own expiry with a very large value,
that will be respected even on try, where we actually don't want that to
happen.
This also helps simplify the setup for docker images.
We also take on the occasion to remove the discrepancy between the
default expiry for tasks in general and tests in particular. Bug 1258497
set the original expiry to 14 days, bug 1281004 added another place
where the expiry was set to 14 days for tests specifically, and then bug
1304180 changed the expiry to 28 days, but it just seems the location
for tests was overlooked rather than deliberately left to 14 days.
Differential Revision: https://phabricator.services.mozilla.com/D96962
This code was originally moved because ParserAtom -> JSAtom conversion was
fallible. Now that we instantiate JSAtoms in bulk, we can move the name
update code to the same place as other inner-function updates.
Differential Revision: https://phabricator.services.mozilla.com/D97057
Now that we don't need to update ObjectGroup while instantiating stencil, we
don't need to worry about the standalone function case. A standalone function
also has the name set already so we do not need to worry about that either.
Differential Revision: https://phabricator.services.mozilla.com/D97056
This mechanism does nothing without TypeInference, so we can remove it now.
This is particularly valuable as this was the remaining case where the
ImmutableScriptFlags of a BaseScript could be mutated during delazification.
Differential Revision: https://phabricator.services.mozilla.com/D97030
This is not needed now that TypeInference is permanently disabled. Release
asserts are used until the last vestiges of TI are removed.
Differential Revision: https://phabricator.services.mozilla.com/D97029
Also fix the gecko path on extra-config-path flags on mac tasks
(currently not causing problems because unused).
And while here, we switch to python3.
Differential Revision: https://phabricator.services.mozilla.com/D96961
Since it's already possible to use the type if its declaration is auto, this
change just allows us to return it from functions.
Differential Revision: https://phabricator.services.mozilla.com/D96936
Like Chromium, use the undocumented rosetta_translate_binaries function from
libRosetta.dylib to pre-translate XUL and the plugin file at browser startup
to reduce translation delays incurred when starting an x64 plugin process.
All changes #ifdef'd to Mac ARM64.
Differential Revision: https://phabricator.services.mozilla.com/D97105
This change adds a code path to avoid instancing, enabled (if supported) on non-Intel GPUs.
Side note: we still need a plan on what to do on devices that support neither of base-instance or SSBO.
Differential Revision: https://phabricator.services.mozilla.com/D87826
This needs to count encrypted data, therefore it is implemented as a NSPR layer right above the PR_NSPR_IO_LAYER layer.
Differential Revision: https://phabricator.services.mozilla.com/D96083