Ah, I looked in the wrong "binary" rendering of the spec. This is the correct link: https://webassembly.github.io/branch-hinting/metadata/code/binary.html (yes, it's extremely simple) I updated the link in the feature. Sorry for the confusion!
On Wed, Mar 26, 2025 at 10:31 AM Emanuel Ziegler <ecmzieg...@chromium.org> wrote: > See answers below. Thanks! > > On Wed, Mar 26, 2025 at 2:26 AM Domenic Denicola <dome...@chromium.org> > wrote: > >> >> >> On Tue, Mar 25, 2025 at 9:49 PM Emanuel Ziegler <ecmzieg...@chromium.org> >> wrote: >> >>> Hi all, >>> >>> We are preparing to ship the WebAssembly Branch Hints proposal in M136 >>> which has been voted to phase 4 in the Wasm Community Group last July. >>> Chrome is now catching up with shipping it after requests from partners. >>> The feature is already implemented in Firefox. >>> >>> The proposal was championed by Yuri Iozzelli from Leaning Technologies >>> and the V8 team was not involved in its standardization process. The >>> implementation has no effect on existing code by design which is why a >>> Finch trial would not yield any insights. We have a Chromium feature >>> available for a Finch kill-switch if necessary. >>> >>> Thank you, >>> Emanuel >>> >>> >>> Contact emailsecmzieg...@chromium.org, jkumme...@chromium.org >>> >>> ExplainerNone >>> >>> Specification >>> https://github.com/WebAssembly/branch-hinting/blob/main/proposals/branch-hinting/Overview.md >>> >> >> It seems like you put the explainer in the specification field, and >> didn't link to the specification. I guess the spec is at >> https://github.com/WebAssembly/branch-hinting/blob/main/document/core/appendix/custom.rst >> ? Although I'm not sure the rendering there is quite right... is there a >> better URL? >> > > Unfortunately, the rendered content has not been updated in a while and > this is the only source of truth until the spec is fully merged into the > Wasm spec. > > >> Summary >>> >>> Improves the performance of compiled WebAssembly code by informing the >>> engine that a particular branch instruction is very likely to take a >>> specific path. This allows the engine to make better decisions for code >>> layout (improving instruction cache hits) and register allocation. >>> https://github.com/WebAssembly/branch-hinting/blob/main/proposals/branch-hinting/Overview.md >>> >>> >>> Blink componentBlink>JavaScript>WebAssembly >>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EJavaScript%3EWebAssembly%22> >>> >>> TAG reviewNone >>> >>> TAG review statusNot applicable >>> >> >>> >>> Risks >>> >>> >>> Interoperability and Compatibility >>> >>> None >>> >> >> Can you expand on why you believe there are no interop and compat risks? >> > > This is a fully optional proposal without any difference in functionality. > If an engine does not support it, it will simply run the code a little > slower. > > *Gecko*: No signal >>> >>> *WebKit*: No signal >>> >> >>> *Web developers*: No signals >>> >>> *Other signals*: >>> >>> WebView application risks >>> >>> Does this intent deprecate or change behavior of existing APIs, such >>> that it has potentially high risk for Android WebView-based applications? >>> >>> None >>> >>> >>> Debuggability >>> >>> None >>> >>> >>> Will this feature be supported on all six Blink platforms (Windows, Mac, >>> Linux, ChromeOS, Android, and Android WebView)?No >>> >> >> Why not? >> > > Sorry, that was a mistake and has been fixed. We are planning on shipping > it everywhere since the changes are not architecture dependent. > > >>> Is this feature fully tested by web-platform-tests >>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >>> ?No >>> >> >> Why not? >> > > Because there is no observable behavior change that could be tested > against. > > >> Flag name on about://flagsNone >>> >>> Finch feature nameV8Flag_experimental_wasm_branch_hinting >>> >>> Requires code in //chrome?False >>> >>> Estimated milestones >>> Shipping on desktop 136 >>> Shipping on Android 136 >>> Shipping on WebView 136 >>> >>> Anticipated spec changes >>> >>> Open questions about a feature may be a source of future web compat or >>> interop issues. Please list open issues (e.g. links to known github issues >>> in the project for the feature specification) whose resolution may >>> introduce web compat/interop risk (e.g., changing to naming or structure of >>> the API in a non-backward-compatible way). >>> None >>> >>> Link to entry on the Chrome Platform Status >>> https://chromestatus.com/feature/5165273114738688?gate=5186994509185024 >>> >>> This intent message was generated by Chrome Platform Status >>> <https://chromestatus.com/>. >>> >>> -- >>> You received this message because you are subscribed to the Google >>> Groups "blink-dev" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to blink-dev+unsubscr...@chromium.org. >>> To view this discussion visit >>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPAU7RwMXE%2BnsewWqSQ0M%2BS7gH600KjJtnp2T3Oyw8GPz4nNHg%40mail.gmail.com >>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPAU7RwMXE%2BnsewWqSQ0M%2BS7gH600KjJtnp2T3Oyw8GPz4nNHg%40mail.gmail.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPAU7RyyGjs-K5zG-jhnU0EeYVmaosD1%3DjHe09qTqCb500mW-Q%40mail.gmail.com.