bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S |   18 +++++-----
 1 file changed, 9 insertions(+), 9 deletions(-)

New commits:
commit 1e273de12710eabf908495d341311da93701868f
Author:     Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
AuthorDate: Tue Apr 18 15:17:36 2023 +0200
Commit:     Christian Lohmaier <lohmaier+libreoff...@googlemail.com>
CommitDate: Wed Apr 19 11:50:45 2023 +0200

    win/aarch64: fix offset loading simple values into the registers
    
    the stack variable doesn't point to the beginning of the array with the
    values, instead the code creates a large general purpose register array 
(gpr)
    with the floating point register (fpr) and stack just being offsets in
    that one.
    bridge isn't fully working with that fix yet, still some wrong pointers
    ending up in the interface reference
    
    Change-Id: I6f1e5f84f84aff34663090c20fe70d65e0a7a334
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150578
    Tested-by: Jenkins
    Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com>

diff --git a/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S 
b/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S
index e03bff1d2d55..a058e47d0038 100644
--- a/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S
+++ b/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S
@@ -42,15 +42,15 @@
         str   x3, [x29, #16]          // save rvalue
 
         // load the core argument passing registers
-        ldp   x0, x1, [sp, #0]
-        ldp   x2, x3, [sp, #16]
-        ldp   x4, x5, [sp, #32]
-        ldp   x6, x7, [sp, #48]
-
-        ldp   d0, d1, [sp, #64]
-        ldp   d2, d3, [sp, #80]
-        ldp   d4, d5, [sp, #96]
-        ldp   d6, d7, [sp, #112]
+        ldp   x0, x1, [sp, #-128]
+        ldp   x2, x3, [sp, #-112]
+        ldp   x4, x5, [sp, #-96]
+        ldp   x6, x7, [sp, #-80]
+
+        ldp   d0, d1, [sp, #-64]
+        ldp   d2, d3, [sp, #-48]
+        ldp   d4, d5, [sp, #-32]
+        ldp   d6, d7, [sp, #-16]
 
         blr   x9                      // call
 

Reply via email to