deps: V8: cherry-pick 7b91e3e2cbaf

Original commit message:

    s390: use %r15 instead of %sp

    Some compilers do not recognize %sp and output:
    ```
    error: invalid register
    ```

    Change-Id: I2e1b64dd0e799a03afccbd12f5b2db17b3130e07
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/6603554
    Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
    Commit-Queue: Milad Farazmand <mfarazma@redhat.com>
    Reviewed-by: Junliang Yan <junyan@redhat.com>
    Cr-Commit-Position: refs/heads/main@{#100576}

Refs: 7b91e3e2cb
PR-URL: https://github.com/nodejs/node/pull/59485
Refs: https://github.com/nodejs/build/issues/4091
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
This commit is contained in:
Milad Fa 2025-05-29 13:57:10 -04:00 committed by Node.js GitHub Bot
parent 2565e1c44e
commit eda6d337d3
2 changed files with 5 additions and 5 deletions

View File

@ -38,7 +38,7 @@
# Reset this number to 0 on major V8 upgrades. # Reset this number to 0 on major V8 upgrades.
# Increment by one for each non-official patch applied to deps/v8. # Increment by one for each non-official patch applied to deps/v8.
'v8_embedder_string': '-node.19', 'v8_embedder_string': '-node.20',
##### V8 defaults for Node.js ##### ##### V8 defaults for Node.js #####

View File

@ -21,17 +21,17 @@ asm(".text \n"
"PushAllRegistersAndIterateStack: \n" "PushAllRegistersAndIterateStack: \n"
// Push all callee-saved registers. // Push all callee-saved registers.
// r6-r13, r14 and sp(r15) // r6-r13, r14 and sp(r15)
" stmg %r6, %sp, 48(%sp) \n" " stmg %r6, %r15, 48(%r15) \n"
// Allocate frame. // Allocate frame.
" lay %sp, -160(%sp) \n" " lay %r15, -160(%r15) \n"
// Pass 1st parameter (r2) unchanged (Stack*). // Pass 1st parameter (r2) unchanged (Stack*).
// Pass 2nd parameter (r3) unchanged (StackVisitor*). // Pass 2nd parameter (r3) unchanged (StackVisitor*).
// Save 3rd parameter (r4; IterateStackCallback). // Save 3rd parameter (r4; IterateStackCallback).
" lgr %r5, %r4 \n" " lgr %r5, %r4 \n"
// Pass sp as 3rd parameter. 160+48 to point // Pass sp as 3rd parameter. 160+48 to point
// to callee saved region stored above. // to callee saved region stored above.
" lay %r4, 208(%sp) \n" " lay %r4, 208(%r15) \n"
// Call the callback. // Call the callback.
" basr %r14, %r5 \n" " basr %r14, %r5 \n"
" lmg %r14,%sp, 272(%sp) \n" " lmg %r14,%r15, 272(%r15) \n"
" br %r14 \n"); " br %r14 \n");