diff options
Diffstat (limited to 'bridges')
-rw-r--r-- | bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S b/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S index 546c02cf5040..55fd3f95ff85 100644 --- a/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S +++ b/bridges/source/cpp_uno/msvc_win32_arm64/callvirtualfunction.S @@ -25,7 +25,12 @@ x3 function */ - NESTED_ENTRY callVirtualFunction + NESTED_ENTRY callVirtualFunction_fake + + // for unwind information, Windows has to store fp and lr + PROLOG_SAVE_REG_PAIR x29, x30, #-32! + + ALTERNATE_ENTRY callVirtualFunction sub sp, sp, #32 stp fp, lr, [sp] @@ -75,7 +80,7 @@ done ldp fp, lr, [sp, #-32] ret - NESTED_END callVirtualFunction + NESTED_END callVirtualFunction_fake END |