summaryrefslogtreecommitdiffstats
path: root/bridges
diff options
context:
space:
mode:
authorjan Iversen <jani@libreoffice.org>2018-03-17 21:32:10 +0100
committerjan Iversen <jani@libreoffice.org>2018-03-17 21:33:43 +0100
commitb9cf7da2907f759c98b801939e7c04cf0b80388f (patch)
treea38da701fa43bf02af2bd1617b655530fdff2f5d /bridges
parentTypos: definied->defined (diff)
downloadcore-b9cf7da2907f759c98b801939e7c04cf0b80388f.tar.gz
core-b9cf7da2907f759c98b801939e7c04cf0b80388f.zip
iOS, balanced return stack
stack balenced for entering and exiting _privateSnippetExecutor Change-Id: I381c487d3412a39b113e9725807fd018b2b4036a
Diffstat (limited to 'bridges')
-rw-r--r--bridges/source/cpp_uno/gcc3_ios/ios64_helper.s40
1 files changed, 19 insertions, 21 deletions
diff --git a/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s b/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s
index 4c09f2b1b2f9..e08910db8e55 100644
--- a/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s
+++ b/bridges/source/cpp_uno/gcc3_ios/ios64_helper.s
@@ -199,35 +199,33 @@ _privateSnippetExecutor:
.cfi_offset w29, -16
// _privateSnippetExecutor is jumped to from codeSnippet_*
- stp x29, x30, [sp, #-0x10]!
- mov x29, sp
+ stp x29, x30, [sp, #-0x10]!
+ mov x29, sp
// push all GP, FP/SIMD registers to the stack
- stp x6, x7, [sp, #-16]!
- stp x4, x5, [sp, #-16]!
- stp x2, x3, [sp, #-16]!
- stp x0, x1, [sp, #-16]!
- stp d6, d7, [sp, #-16]!
- stp d4, d5, [sp, #-16]!
- stp d2, d3, [sp, #-16]!
- stp d0, d1, [sp, #-16]!
+ stp x6, x7, [sp, #-16]!
+ stp x4, x5, [sp, #-16]!
+ stp x2, x3, [sp, #-16]!
+ stp x0, x1, [sp, #-16]!
+ stp d6, d7, [sp, #-16]!
+ stp d4, d5, [sp, #-16]!
+ stp d2, d3, [sp, #-16]!
+ stp d0, d1, [sp, #-16]!
// push x8 (RC pointer) and lr to stack
stp x8, lr, [sp, #-16]!
// First argument (x15 set up in the codeSnippet instance)
// Second argument: The pointer to all the above
- mov x0, x14
- mov x1, x15
- mov x2, sp
-
- bl _cpp_vtable_call
-// ldp x8, lr, [sp, #0]
-// add sp, sp, #144
-// ret lr
- add sp, sp, #144
- ldp x29, x30, [sp], #0x10
- ret
+ mov x0, x14
+ mov x1, x15
+ mov x2, sp
+ bl _cpp_vtable_call
+ .globl _jantest
+ ldp x8, lr, [sp, #0]
+ add sp, sp, #144
+ ldp x29, x30, [sp], #0x10
+ ret lr
.cfi_endproc
// vim:set shiftwidth=4 softtabstop=4 expandtab: