Firefox 106 on POWER


Firefox 106 is out, with PDF editing, the "Firefox View" feature for finding previous content on both your own desktop and any Firefox Sync-connected devices, and a big update to WebRTC. Of course, that only happens if you build with WebRTC on, and if you do you'll still need Dan Horák's patch from bug 1775202 or the browser won't link on 64-bit Power ISA (alternatively put --disable-webrtc in your .mozconfig if you don't need WebRTC). Otherwise the build works with the .mozconfigs from Firefox 105 and the PGO-LTO patch from Firefox 101.

Comments

  1. If it goes on like this, FF will end up as a nightmarish imitation of the operating system. In a few words, the next versions of FF are more (resource consumption), slower (in performance), less convenient (fashion is more important than user habits)....

    ReplyDelete
  2. Any chance to get your JIT patchset mainlined by the end of the year? Chromium is going to drop Manifest v2 in January so it's getting more and more urgent to get an alternative browser up to speed.

    ReplyDelete
    Replies
    1. Probably not, unfortunately. $DAYJOB has been interfering with my ability to do more work on this and I've been trying to do more work on stuff that actually pays since we're a little financially strapped trying to save for a possible move. Moreover I still don't know why the Wasm stuff passes tests but fails real-world sites. I need someone else helping out here to look at it. Even TenFourFox's JIT had contributors.

      Delete
    2. I'm sorry, I would love to but I lack the skills. Thanks for your work :)

      Delete
    3. I tried to give my contribution anyway by rebasing your patchset to Firefox 109: https://github.com/darkbasic/gecko-dev/tree/new-109
      I rebased from your "new" branch, where I previously squashed all your commits into one: https://github.com/darkbasic/gecko-dev/tree/new-monocommit

      Most of the forward porting was boring (tons of manual adjustments but no crazy refactors), but in some files huge portions of the code has been deleted(/moved elsewhere?) and you should probably have a look.

      These are the three-way merges where I was not 100% sure further actions were required:

      js/src/jit/AtomicOperations.h
      js/src/jit/BaselineBailouts.cpp
      js/src/jit/shared/AtomicOperations-shared-jit.cpp
      js/src/jit/JitFrames.cpp
      js/src/jit/shared/AtomicOperations-shared-jit.cpp
      js/src/wasm/WasmBaselineCompile.cpp
      js/src/wasm/WasmSignalHandlers.cpp
      js/src/wasm/WasmStubs.cpp

      I'm not sure if I spared you a couple of hours of boring forward porting or if it's a wasted effort, but this is my thank you for all your work so far.

      P.S.
      I **think** gecko-dev is currently on 109, but I have no idea how they handle versioning: there are no tags, no stable branches, no changelogs, no version numbers, nothing.

      Delete
    4. I appreciate you trying to do this. I couldn't obviously tell from your tree what parts went in and what didn't, though. Do you have a "leftovers" section?

      Delete
    5. The easiest way you can check is by opening one window on the left of your screen to show the latest commit of the new-monocommit branch (https://github.com/darkbasic/gecko-dev/commit/fa619f562f0fe95455e2e80a3e682110b22170ab) and another one to show the changed files of the pull request from new-109 into master (https://github.com/darkbasic/gecko-dev/pull/1/files).
      This is how it will look like:
      https://drive.google.com/file/d/1_RELJaIx3Q9P0sLab3d-SwKBix30JgWw/view?usp=sharing

      As you can see from the previous screenshot in js/src/jit/shared/AtomicOperations-shared-jit.cpp the first and the last hunk didn't get forward ported.

      In js/src/jit/AtomicOperations.h nothing got forward ported.

      In js/src/jit/BaselineBailouts.cpp nothing got forward ported.

      In js/src/jit/JitFrames.cpp nothing got forward ported.

      In js/src/jit/shared/AtomicOperations-shared-jit.cpp only a single hunk got forward ported.

      In js/src/wasm/WasmSignalHandlers.cpp the last hunk didn't get forward ported.

      In js/src/wasm/WasmStubs.cpp 4 hunks didn't get forward ported.

      Bonus content: in js/src/wasm/WasmBaselineCompile.cpp everything got forward ported, but the automerge initially created some mess which I've cleaned in a subsequent commit (https://github.com/darkbasic/gecko-dev/pull/1/commits/5a9cc92521e61fe69bf9e66e8d04c6a3e08b6571#diff-5f51c47cf8b2cf72bde61247cd48e4629eb830625c774795d58434e707931fe2).

      As you can see what didn't get into new-109 is just a small subset of the original patchset.

      Delete

Post a Comment

Comments are subject to moderation. Be nice.