Open Bug 1913966 Opened 2 years ago Updated 1 year ago

Add more inline code paths for string builtins

Categories

(Core :: JavaScript: WebAssembly, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: rhunt, Unassigned)

References

(Blocks 1 open bug)

Details

We added inline paths for 'cast' and 'test in bug 1876154. We should add more.

Looking at the Google Sheets calc worker, I see they are importing the following:

  (import "wasm:js-string" "fromCharCodeArray" (func (;139;) (type 5544)))
  (import "wasm:js-string" "fromCodePoint" (func (;140;) (type 5545)))
  (import "wasm:js-string" "concat" (func (;141;) (type 5546)))
  (import "wasm:js-string" "intoCharCodeArray" (func (;142;) (type 5547)))
  (import "wasm:js-string" "equals" (func (;143;) (type 5516)))
  (import "wasm:js-string" "compare" (func (;144;) (type 5516)))
  (import "wasm:js-string" "length" (func (;145;) (type 5513)))
  (import "wasm:js-string" "charCodeAt" (func (;146;) (type 5521)))
  (import "wasm:js-string" "substring" (func (;147;) (type 5548)))

Of these, equals, length and charCodeAt are the hottest and easiest to implement an inline path for. compare is also up there.

You need to log in before you can comment on or make changes to this bug.