Граф коммитов

932210 Коммитов

Автор SHA1 Сообщение Дата
Nico Burns 1ef2bef1f1 Bug 1918093: Inline derive_common crate into style_derive (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D221816
2024-09-19 13:06:54 +00:00
Nico Burns 40a655a763 Bug 1918093: Remove to_shmem_derive dependency on derive_common (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D221815
2024-09-19 13:06:53 +00:00
Nico Burns 1a3a2a63a5 Bug 1918093: Migrate to_shmem_derive to edition 2021 (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D221814
2024-09-19 13:06:52 +00:00
Nico Burns c18f80e7da Bug 1918093: Migrate derive_common to edition 2021 (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D221812
2024-09-19 13:06:52 +00:00
Nico Burns 748ba6bf20 Bug 1918093: Add per-dependency feature flags to to_shmem dependencies (r=emilio)
Signed-off-by: Nico Burns <nico@nicoburns.com>

Differential Revision: https://phabricator.services.mozilla.com/D221809
2024-09-19 13:06:51 +00:00
Valentin Gosu bc35de7b09 Bug 1919750 - Don't send SETTINGS_TYPE_MAX_CONCURRENT when push is disabled r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D222778
2024-09-19 12:44:31 +00:00
Sylvestre Ledru e4e0538fb4 no bug - Remove some header block r=julienw,perftest-reviewers,devtools-reviewers,places-reviewers,sparky,Standard8 DONTBUILD
We don't use the blocks elsewhere in the code.

Differential Revision: https://phabricator.services.mozilla.com/D222777
2024-09-19 12:35:38 +00:00
serge-sans-paille e227a45167 Bug 1918689 - Remove global constructors from js/src/jsnum.cpp r=spidermonkey-reviewers,mgaudet
This actually works thanks to 1918688, which makes PositiveInfinity,
NegativeInfinity and the like constexpr.

Differential Revision: https://phabricator.services.mozilla.com/D222120
2024-09-19 12:22:43 +00:00
serge-sans-paille f759d0da74 Bug 1918688 - Use standard headers for infinity, and float's max/min r=nbp,media-playback-reviewers,glandium,karlt
Still rely on mozilla aliases though, for readability and to avoid
confusion in the case of NegativeInfinity.

As a bonus, provide MaxNumberValue that mirrors MinNumberValue.

Differential Revision: https://phabricator.services.mozilla.com/D222119
2024-09-19 12:22:43 +00:00
Updatebot 54a7d92d25 Bug 1919699 - Update android nightly application-services version bump to 7625a2cecc94542990b5be8a8fe0f79566e03a19 r=release-managers,RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D222737
2024-09-19 12:18:26 +00:00
Julian Descottes c6d6d1e944 Bug 1918672 - [bidi] Retry all commands if the browsing context is loading or is initial r=webdriver-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D222602
2024-09-19 12:05:46 +00:00
Kershaw Chang c6ab15826c Bug 1918928 - Only allow to wait for HTTPS RR when TRR is confirmed, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D222309
2024-09-19 11:52:02 +00:00
Iulian Moraru 1150f8cfed Backed out 2 changesets (bug 1900561) for causing windows build bustages. CLOSED TREE
Backed out changeset 474e1a3ab5f0 (bug 1900561)
Backed out changeset 7a0bb5fa195e (bug 1900561)
2024-09-19 14:52:47 +03:00
Iulian Moraru af2a822a0f Backed out changeset ced734cf7907 (bug 1916517) for breaking esr releases. 2024-09-19 14:51:58 +03:00
Ryan VanderMeulen 1cec5fd2c2 Bug 1919635 - Update lint baselines. r=android-reviewers,frontend-codestyle-reviewers,mcarare
Differential Revision: https://phabricator.services.mozilla.com/D222714
2024-09-19 11:27:57 +00:00
Ryan VanderMeulen 2141f4758c Bug 1919635 - Update AGP to version 8.6.1. r=android-reviewers,avirvara
Differential Revision: https://phabricator.services.mozilla.com/D222713
2024-09-19 11:27:56 +00:00
Ryan VanderMeulen 48436baeae Bug 1917291 - Update AndroidX Navigation to version 2.8.1. r=android-reviewers,avirvara
Differential Revision: https://phabricator.services.mozilla.com/D222722
2024-09-19 11:22:28 +00:00
Ryan VanderMeulen fcd9c5a171 Bug 1919673 - Update AndroidX Lifecycle to version 2.8.6. r=android-reviewers,avirvara
Differential Revision: https://phabricator.services.mozilla.com/D222721
2024-09-19 11:22:28 +00:00
Ryan VanderMeulen e8a4ad31df Bug 1919672 - Update AndroidX Collection to version 1.4.4. r=android-reviewers,avirvara
Differential Revision: https://phabricator.services.mozilla.com/D222720
2024-09-19 11:22:27 +00:00
Ryan VanderMeulen 874d5245a5 Bug 1919671 - Update AndroidX Compose BOM to 2024.09.02. r=android-reviewers,avirvara
Differential Revision: https://phabricator.services.mozilla.com/D222719
2024-09-19 11:22:27 +00:00
ffxbld 654c15479b No Bug, mozilla-central repo-update HSTS HPKP remote-settings tld-suffixes ct-logs - r=release-managers,RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D222774
2024-09-19 11:21:49 +00:00
Nicolas Silva 8d4669bdc3 Bug 1915146 - Temporarily increase jemalloc's dirty page threshold when WebRender is doing Work. r=pbone,gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D219273
2024-09-19 11:08:47 +00:00
Nicolas Silva 90db643e31 Bug 1915144 - Add an API to purge excess dirty pages. r=pbone
The intent is to use this after having temporarily increased the max dirty page threshold.
This API will be used off the main thread.

Differential Revision: https://phabricator.services.mozilla.com/D220256
2024-09-19 11:08:47 +00:00
Julian Seward 7983d246fc Bug 1911071 - part 2: collect and print statistics on lazy-tiering and inlining. r=yury.
This patch adds machinery for collecting statistics on lazy tiering and
inlining.  These are stored in the CodeMeta for a module and are printed, using
the MOZ_LOG facility, when the CodeMeta is destructed (at the end of the
module's lifetime).  The collected data is minimal but is important for tuning
the LT and inlining heuristics.

* WasmMetadata.{h,cpp}, class CodeMetadata
  - new struct ProtectedStats and lock-protected field `stats`
  - new method CodeMetadata::dumpStats

* vm/Logging.h: new logging tag 'wasmCodeMetaStats'

* vm/MutexIDs.h: new mutex 'WasmCodeMetaStats' for serializing access to the
  stats

* WasmCode.cpp: copy code-allocation info into CodeMeta::stats

* WasmGenerator.cpp, ModuleGenerator::finishModule: copy complete-tier info
  into CodeMeta::stats

* WasmIonCompile.cpp, class FunctionCompiler:
  - add comment explaining how the FunctionCompiler stack is organized
  - new field `toplevelCompiler_`, to access the stack base quickly
  - new fields `stats_*`, temporarily holding stats during compilation of one
    function
  - FunctionCompiler::~FunctionCompiler: copy stats into CodeMeta::stats

Differential Revision: https://phabricator.services.mozilla.com/D221936
2024-09-19 11:05:58 +00:00
Julian Seward 3b3a5b5d60 Bug 1911071 - part 1: reorganize lazy-tiering and inlining heuristics. r=yury.
This patch changes the lazy-tiering and inlining heuristics to be more suitable
for production use, and moves them into their own file, WasmHeuristics.h.

* StaticPrefList.yaml
  - remove prefs
    javascript.options.wasm_experimental_inline_depth_limit,
    javascript.options.wasm_experimental_inline_size_limit

  - add more abstract prefs
    javascript.options.wasm_experimental_tiering_level,
    javascript.options.wasm_experimental_inlining_level,
    javascript.options.wasm_experimental_direct_inlining,
    javascript.options.wasm_experimental_callRef_inlining.

* new file WasmHeuristics.h

* new class LazyTieringHeuristics.  This reads
  JS::Prefs::wasm_experimental_tiering_level when created and uses that
  information in ::estimateIonCompilationCost to provide some estimate of the
  Ion compilation cost for a function, which is used as the initial hotness
  counter.  The basic logic is unchanged from before.

* new class InliningHeuristics.  This reads
  JS::Prefs::wasm_experimental_inlining_level and two others at startup.  These
  are then used by ::isSmallEnoughToInline to answer inline/no-inline
  questions.  The logic is new -- it allows only smaller and smaller functions
  to be inlined as the inlining depth insreases.

* Instance::computeInitialHotnessCounter: use
  LazyTieringHeuristics::estimateIonCompilationCost.

* WasmIonCompile.cpp: shouldInlineCallDirect: rename to shouldInlineCall, and
  use InliningHeuristics::isSmallEnoughToInline to make inlining decisions.

Differential Revision: https://phabricator.services.mozilla.com/D221935
2024-09-19 11:05:57 +00:00
Valentin Gosu dc02c664c6 Bug 1900561 - Set nsIClassOfService::fetchPriority where callers use nsISupportsPriority.adjustPriority r=acreskey
Differential Revision: https://phabricator.services.mozilla.com/D221958
2024-09-19 10:24:22 +00:00
Valentin Gosu 177d12064c Bug 1900561 - Add fetchPriority to classOfService r=acreskey,necko-reviewers,kershaw
Knowing the actual fetchPriority of the initial request is useful information
when computing the urgency. This allows us to not worry about the priority
being clobbered by another caller of nsISupportsPriority.

Differential Revision: https://phabricator.services.mozilla.com/D221957
2024-09-19 10:24:21 +00:00
Iulian Moraru 006a93fbb4 Backed out changeset 68a97b80a5b7 (bug 1918928) for causing dt failures on browser_styleeditor_bug_740541_iframes.js. CLOSED TREE 2024-09-19 13:27:09 +03:00
Emilio Cobos Álvarez 910bd6e0ed Bug 1918838 - Make CSS zoom apply to themed widgets properly. r=dshin
Differential Revision: https://phabricator.services.mozilla.com/D222320
2024-09-19 09:56:50 +00:00
Kershaw Chang 81a6068886 Bug 1918928 - Only allow to wait for HTTPS RR when TRR is confirmed, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D222309
2024-09-19 09:23:28 +00:00
Julien Cristau cea097aa62 Bug 1916517 - add /usr/bin/firefox to the firefox-esr deb package r=glandium
Debian's firefox-esr package adds its own /usr/bin/firefox and diverts
it away, so we either need to do the same or clean up the diversion in
our postinst, otherwise /usr/bin/firefox goes permanently missing when
upgrading from Debian to Mozilla's firefox-esr package.

Differential Revision: https://phabricator.services.mozilla.com/D222752
2024-09-19 09:19:27 +00:00
Jamie Nicol b75928b9c3 Bug 1893956 - Ensure consistent rounding for draw compositor tile and clip rects. r=gfx-reviewers,nical
In bug 1894106 we ensured that draw compositor tiles' tile rects and
clip rects were both calculated on the CPU, to avoid visible seams
whilst low-quality pinch zooming. However, the clip_rect's calculation
uses CompositeState::get_device_rect(), which rounds the rect, whereas
the newly added tile rect calculation used a raw call to
ScaleOffset::map_rect(), which does not. This means that seams still
sometimes flicker whilst zooming. This patch fixes this by using
CompositeState::get_device_rect() for the tile rect calculation as
well, ensuring consistent rounding.

Differential Revision: https://phabricator.services.mozilla.com/D222641
2024-09-19 09:03:40 +00:00
Jamie Nicol d6e2a4f7c6 Bug 1893956 - Disallow underlay compositor surfaces during low-quality pinch zoom. r=gfx-reviewers,nical
Underlay compositor surfaces require a cutout to be rendered to the
picture cache tiles above the underlay. During low-quality pinch zoom
the screen position of the cutout after the picture cache tiles have
been composited may not align exactly with the position of the
underlay surface which is composited directly. This can result in
visible seams along the edges of video.

Additionally, in underlay mode picture tiles still get invalidated
during a low quality zoom, which results in worse performance.

This patch therefore disallows Underlay compositor surfaces whilst a
low-quality pinch zoom is active.

Differential Revision: https://phabricator.services.mozilla.com/D222638
2024-09-19 09:03:40 +00:00
Andreas Farre c9273c1acb Bug 1919704 - Only test for url hash when checking text directive. r=dom-core,jjaschke
Differential Revision: https://phabricator.services.mozilla.com/D222745
2024-09-19 08:52:24 +00:00
Mugurell 5165ecdb36 Bug 1919706 - Update FullScreenFeature to more eagerly update it's `isFullscreen` property r=android-reviewers,Roger
Previously if evaluating `isFullscreen` inside FullScreenFeature's `fullScreenChanged` callback
we would get the old value and not the current status of the tab.
This change fixes that.

Differential Revision: https://phabricator.services.mozilla.com/D222587
2024-09-19 08:49:07 +00:00
Sylvestre Ledru 241e6fce6c Bug 1919088 - mozharness: Remove header block r=jlorenzo DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D222315
2024-09-19 08:18:38 +00:00
Julian Descottes 718cefcfd3 Bug 1917805 - [wdspec] Add cached stylesheet network tests @import and duplicated stylesheets r=webdriver-reviewers,arai,whimboo
The initial Firefox support for network events for cached stylesheets fails in 2 known cases:
- when the stylesheet is loaded via @import (no event emitted)
- when the stylesheet is duplicated in several link tags (too many events emitted)

New tests are added to cover those use cases, which should all be fixed by Bug 1916960 on Firefox side.
All the added tests already pass on Chrome canary.

Differential Revision: https://phabricator.services.mozilla.com/D221685
2024-09-19 07:57:05 +00:00
Mathieu Leplatre 6fb87cdae1 Bug 1913142 - extract attachments in bulk from cache bundle r=acottner
Differential Revision: https://phabricator.services.mozilla.com/D222483
2024-09-19 07:35:07 +00:00
AndiAJ 0bb2f5ee5c Bug 1919521 - Fix verifySearchBarItemsTest tests on API 34 r=ohorvath
The UI test failed on API 34 when trying to verify that the scan button is not displayed.

I've added a 1s wait for the app window to be updated (waitForAppWindowToBeUpdated)

The UI test successfully passed:

  - 25x on API 30
  - 50x on API 34

Differential Revision: https://phabricator.services.mozilla.com/D222618
2024-09-19 07:27:34 +00:00
Jan de Mooij e9ea2d8aa9 Bug 1918970 part 10 - Define sort order for ranges with same start position. r=jseward
`std::sort` is not a stable sorting function. To avoid relying on implementation-defined
ordering, extend the comparator function to compare the `to` position and the bundle id
when ranges start at the same position.

Bundles now store an 'id' in non-debug builds too. Each compilation has its own
counter that starts at 0 so that we don't need atomic operations to determine the next
id.

Differential Revision: https://phabricator.services.mozilla.com/D222610
2024-09-19 07:22:54 +00:00
Jan de Mooij 81a75abe02 Bug 1918970 part 9 - Sort ranges explicitly instead of implicitly. r=jseward
The virtual register ranges are guaranteed to be sorted after the initial live range
building and grouping. After this phase, they can become unsorted when allocating
bundles to registers.

This patch adds an explicit `sortVirtualRegisterRanges` step to the allocator
to ensure the ranges are sorted after allocating all bundles. This is now the
only place where we can call `sortRanges`.

This makes it easier to reason about the sorting behavior and helps avoid pathological
behavior from future changes.

A `VirtualRegister::replaceLastRangeLinear` helper function is added to maintain
sort order so that we don't have to sort explicitly there.

Because sorting is now explicit, we can remove the `activeRangeIterators_` bookkeeping
because we no longer have this possible footgun from sorting while iterating.

Differential Revision: https://phabricator.services.mozilla.com/D222584
2024-09-19 07:22:54 +00:00
Jan de Mooij 9aadec259a Bug 1918970 part 8 - Simplify LiveRange linked list code, update comments. r=jseward
Now that LiveRange is part of a single linked list instead of two lists, we can
remove its bundleLink and make it a standard linked-list node.

Differential Revision: https://phabricator.services.mozilla.com/D222257
2024-09-19 07:22:54 +00:00
Jan de Mooij a3b2140bd1 Bug 1918970 part 7 - Use binary search to optimize VirtualRegister::rangeFor. r=jseward
All ranges that start after the position that's passed in definitely can't overlap.
Use binary search to skip these ranges.

This reduces the Ion compilation time for the Wasm module in bug 1916442 from 16 seconds to
14 seconds locally.

The time complexity for `rangeFor` and how it affects some of the callers still isn't great,
but optimizing that will require more work.

Differential Revision: https://phabricator.services.mozilla.com/D222256
2024-09-19 07:22:53 +00:00
Jan de Mooij 37bde15aa6 Bug 1918970 part 6 - Use a vector instead of linked list for VirtualRegister ranges. r=jseward
The vector is lazily sorted in order of descending start position for operations that
need it to be sorted.

This lets the list be unsorted during the core register allocation loop. A Vector also
has better cache locality and allows binary search when sorted. These changes improve
performance a lot: 276 seconds to 16 seconds locally for the Wasm module in bug 1916442
after some other changes.

A later patch will update the SMDOC comment.

Differential Revision: https://phabricator.services.mozilla.com/D222255
2024-09-19 07:22:52 +00:00
Jan de Mooij 181cbff43c Bug 1918970 part 5 - Add VirtualRegister::removeRangesForBundle. r=jseward
When we use a vector, this is a bit more efficient than removing a single range
at a time.

Differential Revision: https://phabricator.services.mozilla.com/D222252
2024-09-19 07:22:52 +00:00
Jan de Mooij d298e49f23 Bug 1918970 part 4 - Add LiveBundle::removeAllRangesFromVirtualRegisters. r=jseward
This lets us share some code for the two places calling this.

Differential Revision: https://phabricator.services.mozilla.com/D222251
2024-09-19 07:22:51 +00:00
Jan de Mooij 6c2aeff34b Bug 1918970 part 3 - Add VirtualRegister::RangeIterator. r=jseward
Later patches will change the implementation of this iterator without having to
change the consumers.

Differential Revision: https://phabricator.services.mozilla.com/D222250
2024-09-19 07:22:50 +00:00
Jan de Mooij b761b12ae0 Bug 1918970 part 2 - Remove dead ranges first in createMoveGroupsFromLiveRangeTransitions. r=jseward
First remove all dead ranges before doing other operations on the ranges. It's easier
to reason about the other loops when they don't change the list of ranges at the same time.

Differential Revision: https://phabricator.services.mozilla.com/D222249
2024-09-19 07:22:50 +00:00
Jan de Mooij 2ee2517106 Bug 1918970 part 1 - Store virtual registers in a Vector instead of FixedList. r=jseward
`FixedList` doesn't call destructors for the items. When `VirtualRegister` has a `Vector` in
later patches we need to call its destructor to not leak memory.

Differential Revision: https://phabricator.services.mozilla.com/D222248
2024-09-19 07:22:49 +00:00
Liam DeBeasi 71942cb113 Bug 1902377 - Rename "isRoot" argument to "includeParentId" r=whimboo,webdriver-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D222385
2024-09-19 07:00:15 +00:00