69391950f9a2bc047c1371fad4fb94899c88baa3: Bug 1724234 - Remove APIs to pin unicode strings r=tcampbell
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 06 Aug 2021 08:44:14 +0000 - rev 3869298
Push 717197 by wptsync@mozilla.com at Fri, 06 Aug 2021 10:01:09 +0000
Bug 1724234 - Remove APIs to pin unicode strings r=tcampbell Depends on D121885 Differential Revision: https://phabricator.services.mozilla.com/D121886
24284cf9d4dad894b80de7011b97fac4af1e4fe0: Bug 1723998 - Refactor jshacks detection and adapt for use in system principal telemetry r=tjr
Frederik Braun <fbraun@mozilla.com> - Fri, 06 Aug 2021 08:12:47 +0000 - rev 3869297
Push 717197 by wptsync@mozilla.com at Fri, 06 Aug 2021 10:01:09 +0000
Bug 1723998 - Refactor jshacks detection and adapt for use in system principal telemetry r=tjr Differential Revision: https://phabricator.services.mozilla.com/D121838
0d463dd5a5cc22df5f155dcec190952f415dc2d7: Bug 1226042 - Enable system-ui font-family. r=jfkthame
Emilio Cobos Álvarez <emilio@crisal.io> - Fri, 06 Aug 2021 07:53:20 +0000 - rev 3869296
Push 717197 by wptsync@mozilla.com at Fri, 06 Aug 2021 10:01:09 +0000
Bug 1226042 - Enable system-ui font-family. r=jfkthame Making the macOS font selection language-dependent is a nice improvement (which we should probably make to all system fonts in general), but I don't think it should block this. system-ui behaves like -apple-system right now, which a bunch of pages use instead. So I think this is a strict improvement even on macOS. Differential Revision: https://phabricator.services.mozilla.com/D121509
baa2e3ee94bcae936d7d3acd5bb251ac6477b078: Bug 1587757 - Avoid signal handling for unaligned accesses. r=jseward
Lars T Hansen <lhansen@mozilla.com> - Fri, 06 Aug 2021 07:41:17 +0000 - rev 3869295
Push 717197 by wptsync@mozilla.com at Fri, 06 Aug 2021 10:01:09 +0000
Bug 1587757 - Avoid signal handling for unaligned accesses. r=jseward On ARM, the VLDR and VSTR instructions can't handle unaligned accesses, instead they will generally trap with a SIGBUS. Some time ago I added code to handle the trap and emulate the instructions in the trap handler. This emulation is brittle in the sense that it depends on information about kernel data structures, and that information is not always available. So we need to handle this differently, as follows. This patch removes the SIGBUS handling and the load/store emulation, and instead uses other instructions than VLDR/VSTR to handle FP loads and stores. On NEON-equipped systems (on almost all ARMv7 systems and on all ARMv8 systems), use the NEON VLD1 and VST1 instructions - they can deal with unaligned data just fine. On non-NEON-equipped systems, use a fallback path via integer load and store, moving integer data to and from the FP register file. Both paths depend on us seeing no unaligned traps, ie, either SCTRL.A=0, or the kernel handling alignment traps when SCTRL.A=1. But we've long since assumed that unaligned integer loads and stores will Just Work under exactly those conditions, so this is going to have to count as good enough. (And it's what V8 did, last I looked.) As our assembler, simulator, and disassembler don't currently support NEON much at all, I've had to add various support for VLD1/VST1, both new variants and a drive-by fix to an existing VLD1 variant that didn't handle wasm traps. For code that does not use unaligned FP accesses, the performance of the new NEON code should be the same as the old code, while the new non-NEON code might be a hair slower (this is OK since almost all systems have NEON). For code that does use unaligned FP accesses, performance should be much better, as we avoid the signal handler. Differential Revision: https://phabricator.services.mozilla.com/D121833
48adeca98451cdb2e6810faf0ab0c3e741ff2a24: Bug 1723930 - Do not special-case declared-unaligned accesses on ARM. r=jseward
Lars T Hansen <lhansen@mozilla.com> - Fri, 06 Aug 2021 07:41:17 +0000 - rev 3869294
Push 717197 by wptsync@mozilla.com at Fri, 06 Aug 2021 10:01:09 +0000
Bug 1723930 - Do not special-case declared-unaligned accesses on ARM. r=jseward Since early on, code generation on ARM has emulated accesses that are declared as unaligned (the align= attribute has a value that is less than the natural alignment for the datum) by emitting individual byte accesses. There's almost no good reason to continue to do this, as we are completely dependent on other mechanisms for handling accesses that are actually unaligned (the effective address does not have natural alignment) though declared to be aligned: - For integer accesses we are dependent on the hardware/OS to support actually-unaligned accesses transparently. - For FP accesses we handle signals originating from actually-unaligned accesses that are not handled by hardware/OS, but that code is being rewritten over in bug 1587757 to avoid the trap handling altogether by using unaligned-friendly instructions. (Some of the code ripped out in this patch comes back in the patch for bug 1587757, though in a different form.) The only reason to continue using individual byte accesses would be performance: if the CPU does not support unaligned accesses and the OS has to emulate them in a trap handler, programs could be faster by avoiding the traps. Yet such hardware is increasingly nonexistent. Also, this solution would depend on the tools to declare accesses as potentially-unaligned in all appropriate cases, and that is almost certainly not going to happen. Differential Revision: https://phabricator.services.mozilla.com/D121832
ff4b90400ed336df7fde8a6180880abb31bad752: Bug 1723869 - Setup X11-only Linux builds. r=sylvestre
Mike Hommey <mh+mozilla@glandium.org> - Fri, 06 Aug 2021 07:12:03 +0000 - rev 3869293
Push 717197 by wptsync@mozilla.com at Fri, 06 Aug 2021 10:01:09 +0000
Bug 1723869 - Setup X11-only Linux builds. r=sylvestre A lot of work happens on the wayland backend, and it regularly breaks tier-3 systems where wayland is not supported. Setting up X11-only builds will help catch those breakages earlier. Differential Revision: https://phabricator.services.mozilla.com/D121691
4f9e96e5068e8a8cf5d53008625b9066e9c3437f: Version increase simulation try: -b do -p all -u all -t none draft
Sebastian Hengst <archaeopteryx@coole-files.de> - Mon, 26 Jul 2021 13:21:37 +0200 - rev 3869292
Push 717196 by archaeopteryx@coole-files.de at Fri, 06 Aug 2021 09:59:27 +0000
Version increase simulation try: -b do -p all -u all -t none
b19fdf435550af00321e5e43ad7787843c590d88: Bug 1724166 - Add pref for large keepalive factor r=necko-reviewers,dragana
Valentin Gosu <valentin.gosu@gmail.com> - Fri, 06 Aug 2021 07:09:36 +0000 - rev 3869291
Push 717196 by archaeopteryx@coole-files.de at Fri, 06 Aug 2021 09:59:27 +0000
Bug 1724166 - Add pref for large keepalive factor r=necko-reviewers,dragana Differential Revision: https://phabricator.services.mozilla.com/D121839
22ab22ba43e38be85c1d531000b345e4b6df323a: try_task_config for https://phabricator.services.mozilla.com/D121955 draft
libmozevent <release-mgmt-analysis@mozilla.com> - Fri, 06 Aug 2021 09:51:34 +0000 - rev 3869290
try_task_config for https://phabricator.services.mozilla.com/D121955 Differential Diff: PHID-DIFF-27o2rmitnj5qsud3c5ud
96876af75908ead82877ddd1252b7127f73f098f: WIP: Bug 1562816 - Pretenure string concatenation (WIP) draft
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 06 Aug 2021 09:51:30 +0000 - rev 3869289
WIP: Bug 1562816 - Pretenure string concatenation (WIP) Summary: Differential Revision: https://phabricator.services.mozilla.com/D121955 Test Plan: Reviewers: Subscribers: Bug #: 1562816 Differential Diff: PHID-DIFF-27o2rmitnj5qsud3c5ud
76089b0861b1c3acc35cf1697127620fe03f2567: WIP: Bug 1562816 - Make MaybeCreateAllocSite be a method on IRGenerator draft
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 06 Aug 2021 09:51:27 +0000 - rev 3869288
WIP: Bug 1562816 - Make MaybeCreateAllocSite be a method on IRGenerator Summary: Depends on D121952 Test Plan: Reviewers: Subscribers: Bug #: 1562816 Differential Diff: PHID-DIFF-7kprrebrhbetscnaeo6l
965f254d01951777499929a98cd86584ab7ef6a2: WIP: Bug 1562816 - Add allocation stie parameter to macroassembler string allocation APIs draft
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 06 Aug 2021 09:51:25 +0000 - rev 3869287
WIP: Bug 1562816 - Add allocation stie parameter to macroassembler string allocation APIs Summary: Depends on D121951 Test Plan: Reviewers: Subscribers: Bug #: 1562816 Differential Diff: PHID-DIFF-wcvyjfylwlceungmzt6l
9f882b8ad405a03aa66035a818811b6e32e52253: WIP: Bug 1562816 - Add allocation site parameter to string concatenation APIs draft
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 06 Aug 2021 09:51:22 +0000 - rev 3869286
WIP: Bug 1562816 - Add allocation site parameter to string concatenation APIs Summary: Depends on D121950 Test Plan: Reviewers: Subscribers: Bug #: 1562816 Differential Diff: PHID-DIFF-gi45dvr5td3h2i47cden
df469eb7dfe9e5ba3767f252c4a68da354b33410: WIP: Bug 1562816 - Add allocation site parameter to GC string allocation APIs draft
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 06 Aug 2021 09:51:19 +0000 - rev 3869285
WIP: Bug 1562816 - Add allocation site parameter to GC string allocation APIs Summary: Depends on D121949 Test Plan: Reviewers: Subscribers: Bug #: 1562816 Differential Diff: PHID-DIFF-ieltajtjovvc7dkjmipv
cc75844679154b1f382859b27e8ab0b2b8d2fd3c: WIP: Bug 1562816 - Add a test for the different kinds of pretenuring draft
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 06 Aug 2021 09:51:17 +0000 - rev 3869284
WIP: Bug 1562816 - Add a test for the different kinds of pretenuring Summary: This tests whether certain kinds of allocation produce tenured or nursery allocations (whereas existing tests check the number of major/minor GCs). Test Plan: Reviewers: Subscribers: Bug #: 1562816 Differential Diff: PHID-DIFF-6qv7wve4n4k3pnhq7kbl
0e179c5dbfc04fd0bd6dbb9f9fbae352a1a12738: try_task_config for https://phabricator.services.mozilla.com/D121848 draft
libmozevent <release-mgmt-analysis@mozilla.com> - Fri, 06 Aug 2021 09:51:12 +0000 - rev 3869283
try_task_config for https://phabricator.services.mozilla.com/D121848 Differential Diff: PHID-DIFF-wn2jrlvfbb6ggwmop4lt
8f6fde77d724b45b08000b162b6d54e3a94940bd: Bug 1722261 - Move profiler_thread_is_being_profiled to ProfilerThreadState.h and use ThreadRegistration - r?canaltinova draft
Gerald Squelart <gsquelart@mozilla.com> - Fri, 06 Aug 2021 09:51:09 +0000 - rev 3869282
Bug 1722261 - Move profiler_thread_is_being_profiled to ProfilerThreadState.h and use ThreadRegistration - r?canaltinova Summary: Differential Revision: https://phabricator.services.mozilla.com/D121848 Depends on D121847 Test Plan: Reviewers: canaltinova Subscribers: Bug #: 1722261 Differential Diff: PHID-DIFF-wn2jrlvfbb6ggwmop4lt
7eb38aa73f3c1864f70e02ae5194f71877c89ca5: Bug 1722261 - Remove data from RegisteredThread, only keep pass-through methods to the ThreadRegistrationData - r?canaltinova draft
Gerald Squelart <gsquelart@mozilla.com> - Fri, 06 Aug 2021 09:51:06 +0000 - rev 3869281
Bug 1722261 - Remove data from RegisteredThread, only keep pass-through methods to the ThreadRegistrationData - r?canaltinova Summary: Now {,Racy}RegisteredThread don't contain any data, but provide the same API that goes through ThreadRegistration. Until they are removed, {,Racy}RegisteredThread are given private access to ThreadRegistration{,Data} for easier access. This means that we can now change uses of RegisteredThread to use ThreadRegistration directly instead, and the data will be the same through either APIs. Also, RacyRegisteredThread::ThreadId() was unused so it can be removed. Differential Revision: https://phabricator.services.mozilla.com/D121847 Depends on D121846 Test Plan: Reviewers: canaltinova Subscribers: Bug #: 1722261 Differential Diff: PHID-DIFF-hbmsb3qq2hhh4z5jlmt4
63a16c486bc62866f793be8bcf5532edaf683f7c: Bug 1722261 - Use ProfilingStack inside ThreadRegistrationData - r?canaltinova draft
Gerald Squelart <gsquelart@mozilla.com> - Fri, 06 Aug 2021 09:51:04 +0000 - rev 3869280
Bug 1722261 - Use ProfilingStack inside ThreadRegistrationData - r?canaltinova Summary: The ProfilingStack object inside ThreadRegistrationData is guaranteed to live while the thread is registered (and alive), and all accesses are guaranteed to be done either: - On-thread, so during that time ThreadRegistrationData and its ProfilingStack cannot be destroyed. - From another thread, but with the Profiler lock and/or per-thread lock, which also guarantees that ThreadRegistrationData and its ProfilingStack cannot be destroyed. RacyRegisteredThread brought some doubts about end-of-thread accesses, that why there's was an intermediate ref-counted ProfilingStackOwner to keep ProfilingStack alive where needed. Now we can remove it. Also the separate TLS (Thread Local Storage) for ProfilingStackOwner can be removed, since we can reach the ProfilingStack through the ThreadRegistration TLS for the same cost. Differential Revision: https://phabricator.services.mozilla.com/D121846 Depends on D121845 Test Plan: Reviewers: canaltinova Subscribers: Bug #: 1722261 Differential Diff: PHID-DIFF-hrnxlsuntmhw2ismazzq
54790a268a03d4bce9bb8a1ff760ba1f7b7516e5: Bug 1722261 - Move profiler_is_active_and_thread_is_registered to ProfilerThreadState.h and use ThreadRegistration - r?canaltinova draft
Gerald Squelart <gsquelart@mozilla.com> - Fri, 06 Aug 2021 09:51:01 +0000 - rev 3869279
Bug 1722261 - Move profiler_is_active_and_thread_is_registered to ProfilerThreadState.h and use ThreadRegistration - r?canaltinova Summary: ThreadRegistration already knows if it's registered, so profiler_is_active_and_thread_is_registered can use that now. Differential Revision: https://phabricator.services.mozilla.com/D121845 Depends on D121844 Test Plan: Reviewers: canaltinova Subscribers: Bug #: 1722261 Differential Diff: PHID-DIFF-a62hfgvldwarqtadviep
(0) -3000000 -1000000 -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip