[wasm] Speed up WasmStringConcat builtin
Tail call the StringAdd_CheckNone builtin. This also avoids the need to create a frame. X64 code before: 0 55 push rbp 1 4889e5 REX.W movq rbp,rsp 4 6a20 push 0x20 6 488b5500 REX.W movq rdx,[rbp+0x0] a 488b52f0 REX.W movq rdx,[rdx-0x10] e 8bb2c7000000 movl rsi,[rdx+0xc7] 14 4903f6 REX.W addq rsi,r14 17 e8a402f3ff call 0x7f2effeb5a80 (StringAdd_CheckNone) 1c 488be5 REX.W movq rsp,rbp 1f 5d pop rbp 20 c3 retl X64 code after: 0 488bd5 REX.W movq rdx,rbp 3 488b52f0 REX.W movq rdx,[rdx-0x10] 7 8bb2c7000000 movl rsi,[rdx+0xc7] d 4903f6 REX.W addq rsi,r14 10 e9ab02f3ff jmp 0x7fed7feb5a80 (StringAdd_CheckNone) R=jkummerow@chromium.org Bug: v8:12868 Change-Id: Ie722fb57abcd649d2586aad2c4aca55ff218fe43 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3823127Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/main@{#82340}
Showing
Please
register
or
sign in
to comment