Skip to content

[scripts] Update name of experimental Wasm V8 flags - #9134

Merged
stevenfontanella merged 1 commit into
WebAssembly:mainfrom
Liedtke:03_rename_d8_flags
Sep 23, 2026
Merged

stevenfontanella merged 1 commit into
WebAssembly:mainfrom
Liedtke:03_rename_d8_flags

Conversation

@Liedtke

@Liedtke Liedtke commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

These flags got renamed in https://crrev.com/c/8426472.

Note that this is just the code change, I don't know if there is any pipeline in place to automatically update the ClusterFuzz fuzzer.

@Liedtke
Liedtke requested a review from a team as a code owner September 22, 2026 10:39
@Liedtke
Liedtke requested review from stevenfontanella and removed request for a team September 22, 2026 10:39
@stevenfontanella

Copy link
Copy Markdown
Member

@Liedtke can you run fuzz_opt.py as a sanity check?

Also I guess this would break the fuzzer with earlier versions of V8 that don't have the renamed flags. Is that fine @kripken? I get the impression that we don't care that much about backward compatibility with earlier versions of V8 for fuzzing.

@kripken

kripken commented Sep 22, 2026

Copy link
Copy Markdown
Member

Yes, we don't care about older V8 - we just expect people to update their V8.

@stevenfontanella

Copy link
Copy Markdown
Member

LGTM if scripts/fuzz_opt.py runs successfully for a few iterations.

@Liedtke

Liedtke commented Sep 23, 2026

Copy link
Copy Markdown
Contributor Author

LGTM if scripts/fuzz_opt.py runs successfully for a few iterations.

It reached 4000 iterations, I mean those flags don't really do anything that could break the fuzzing loop, so I'd not expect it to be possible to fail because of this. We don't get any unknown flags warnings in the output.

It did fail afterwards because it ran into a DCHECK which is tracked by https://crbug.com/563427048. It's super easy to reach, so a lot of fuzzers run into it and it should hopefully stop when my second fix landed in V8. (This fixed it for caught exceptions but there was a second one for a missing exact on the Turboshaft type annotations for struct.new for a descriptor going to be fixed here.)
The custom descriptors part now is behind the flag without the experimental in the flag (though --wasm-staging is also enough, so this wouldn't really be needed), this is really just ensuring that we set the right flags that we'd like to fuzz.

@Liedtke

Liedtke commented Sep 23, 2026 •

Copy link
Copy Markdown
Contributor Author

[...] and it should hopefully stop when my second fix landed in V8.

This isn't the case as I already have this fix locally and besides the struct.new, there seems to be the same issue with struct.new_desc.
This DCHECK keeps on giving but this is unrelated to this binaryen PR (and it's just about small imperfections, not observable behavior differences in production.)

@Liedtke

Liedtke commented Sep 23, 2026

Copy link
Copy Markdown
Contributor Author

BTW I don't know why the emscripten run failed and didn't investigate:

em++: error: unexpected binaryen version: 133 (expected 132) [-Wversion-check] [-Werror]

@stevenfontanella

Copy link
Copy Markdown
Member

I've seen it happen in other cases and I believe it's due to the recent version bump #9131. I'll rerun it for now, but it should be fine to ignore too since it's unrelated (cc @kripken if you have anything to add).

@stevenfontanella
stevenfontanella merged commit 816181d into WebAssembly:main Sep 23, 2026
31 of 32 checks passed
@Liedtke
Liedtke deleted the 03_rename_d8_flags branch September 24, 2026 10:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants