Roll v8 from 8401caff935e to 54cf5fa964f0 (45 revisions)

https://chromium.googlesource.com/v8/v8.git/+log/8401caff935e..54cf5fa964f0

2026-02-25 thibaudm@chromium.org [jspi] Clear EPT entry on stack return
2026-02-25 dinfuehr@chromium.org [execution] Fix OOM stacks for OptimizedJSFrame::Summarize()
2026-02-25 leszeks@chromium.org Revert "[*lev] Ignore tagged uses for non-float phis"
2026-02-25 machenbach@chromium.org [infra] Add arm64 sandbox fuzzing builders
2026-02-25 victorgomes@chromium.org [turbolev] Reinstate --maglev-future implication
2026-02-25 dinfuehr@chromium.org [execution] Avoid GetValue() in OptimizedJSFrame::Summarize()
2026-02-25 dmercadier@chromium.org [*lev] Ignore tagged uses for non-float phis
2026-02-25 pthier@chromium.org Demote --shared-string-table to experimental
2026-02-25 marja@chromium.org [arm64] Add a test to ensure we don't do trivial FMA
2026-02-25 dmercadier@chromium.org [maglev] Make sure SmiArray.push(int32 phi) does the right Smi check
2026-02-25 mliedtke@chromium.org Revert "[maglev] Do not record a Tagged use when storing to a Smi field"
2026-02-25 erikcorry@chromium.org [api] Fix comment on table sizes
2026-02-25 dmercadier@chromium.org [maglev] Do not record a Tagged use when storing to a Smi field
2026-02-25 dmercadier@chromium.org [maglev] fix CanElideWriteBarrier Smi recording for phis
2026-02-25 mfarazma@ibm.com [gn] exclude -Wunnecessary-virtual-specifier on ppc64/s390x
2026-02-25 cbruni@chromium.org Revert "[maglev] Elide unobserved map transitions"
2026-02-25 victorgomes@chromium.org [turbolev] Promote --maglev-truncated-int32_phis out of experimental
2026-02-25 dmercadier@chromium.org [maglev] Specialize ToBoolean when its input is a phi that gets untagged
2026-02-25 dmercadier@chromium.org [maglev] Preserve HeapObjectness during Phi untagging when required
2026-02-25 cbruni@chromium.org [tools] Force pprof symbolization
2026-02-25 nicohartmann@chromium.org [torque][tsa] Generate more TSA builtins with Torque
2026-02-25 marja@chromium.org [builtins] Fast path for String.p.split
2026-02-25 leszeks@chromium.org [object] Refactor PropertyDetails to store field offset instead of index
2026-02-25 nicohartmann@chromium.org [turboshaft][gdb] Minimize turboshaft backtraces
2026-02-25 liuyu@loongson.cn [loong64][mips64][wasm] Improve write-barrier treatment
2026-02-25 dmercadier@chromium.org [maglev] Default printing in PrintParams based on options()
2026-02-25 victorgomes@chromium.org [bazel] Upstream: Set explicit mnemonic for Starlark action
2026-02-25 sam.parker@arm.com Reland "[compiler][arm64] ReplaceLane Zero"
2026-02-25 mrcvtl@chromium.org [promise] Fast-path TriggerPromiseReactions for 0 or 1 reaction
2026-02-25 hocheung@chromium.org [builtins-pgo] Stream gsutil output in non-quiet mode and use -m cp
2026-02-25 liuyu@loongson.cn [loong64][mips64][builtins] Fix stack overflow handling in ResumeGeneratorTrampoline
2026-02-25 v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Update fuzztest (trusted)
2026-02-25 v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Update V8 DEPS (trusted)
2026-02-24 ishell@chromium.org [runtime] Trigger non-fatal minidump before ThrowIllegalOperation()
2026-02-24 rezvan@chromium.org [for-of-performance] Only check value if done is false
2026-02-24 v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com Update V8 DEPS (trusted)
2026-02-24 etiennep@chromium.org [heap] Deflake OutOfMemoryIneffectiveGC take 2
2026-02-24 caiolima@igalia.com [defer-import-eval] Adding import.defer pattern to testrunner
2026-02-24 leszeks@chromium.org Revert "[compiler][arm64] ReplaceLane Zero"
2026-02-24 marja@chromium.org [maglev assert types] Allow widening Smis to Int32 in BuildCheckNumber
2026-02-24 sam.parker@arm.com [compiler][arm64] ReplaceLane Zero
2026-02-24 manoskouk@chromium.org Add wasm tracing to bytecode verifier disallowlist
2026-02-24 cbruni@chromium.org [logging] Remove redundant DCHECK in MessageBuilder
2026-02-24 mfarazma@ibm.com PPC/s390: [maglev] Handle equal inputs in Float64Max/Min
2026-02-24 mfarazma@ibm.com Mark MemCopyAndSwitchEndianness src input as `const`

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/v8-emscripten-releases
Please CC dschuff@google.com,wasm-waterfall@grotations.appspotmail.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: wasm-waterfall@grotations.appspotmail.com
Change-Id: I187b3c2fb69250a993ba244cd75cc1ac41bfae93
Reviewed-on: https://chromium-review.googlesource.com/c/emscripten-releases/+/7608442
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
1 file changed
tree: 5fdcc2f64131e53d9568c7fa1e723c2d5e3569e1
  1. src/
  2. third_party/
  3. .gitignore
  4. bots.json
  5. codereview.settings
  6. DEPS
  7. DEPS.tagged-release
  8. PRESUBMIT.py
  9. README.md
README.md

Emscripten Releases

This is meta-repository which brings together all the repositories needed to produce an emscripten release. The revisions used in each release are tracked in a DEPS file (See depot_tools for more information). This file contains a history of revisions that have been built and tested together and represent a known good state.

Each release is automatically built and uploaded to to Google Cloud Storage and can be used standalone or with emsdk.

The build status for the automated builds can be seen here

Updating DEPS entries

Install depot_tools and then check out: gclient config https://chromium.googlesource.com/emscripten-releases (Do this only once)

Update working trees:

  • git pull
  • gclient sync

Update a DEPS entry:

  • cd emscripten-releases
  • git checkout -b <branch>
  • roll-dep emscripten-releases/llvm-project
  • git cl upload

The argument to roll-dep must match one of the keys in the ‘deps’ dictionary in the DEPS file. See roll-dep -h for more options.

༼ ༎ຶ ෴ ༎ຶ༽ Build and test scripts in src/

This directory was forked from the WebAssembly waterfall repo That repo was retired because it was only used by emscripten-releases.

How do I run it?

  1. Get the sources
  2. Install depot_tools. Follow the instructions
  3. Install pkg-config if you don't have it installed already, e.g. # apt install pkg-config
  4. Run build.py python src/build.py

Build.py has 3 types of actions:

  • downloading/updating sources for tools and engines (sync)
  • building those sources (build)
  • running tests against them (test).

Each of these types has multiple steps (e.g. a build step for each component). If you run build.py with no arguments, it will run all the sync, build, and test steps. If you make a change and only want to run a subset of steps, you can apply filters from the command line, via exclusions (to prevent specified steps from running) or inclusions (to run only the specified steps). Sync, build, and test exclusions are specified separately. For example:

  1. Do not sync any sources, build everything except LLVM, and run all tests: $ src/build.py --no-sync --build-exclude=llvm
  2. Sync only binaryen, build LLVM and Binaryen, run everything other than the emscripten testsuites: $ src/build.py --sync-include=binaryen --build-include=llvm,binaryen --test-exclude=emtest,emtest-asm

The script should throw an error if you specify nonexistent steps or if you specify both includes and excludes for the same type of action.

When run, the script creates a directory src/work inside the waterfall‘s git checkout. All modifications are made inside this directory (checking and out and building the sources, as well as the test builds and execution results). You can also use the git checkouts (e.g. src/work/llvm) with your own branches; the sync steps will check out the latest revision from the script’s remote repositories but will not overwrite or destroy any local work.