comparison dyncall/dyncall_call_ppc32.S @ 345:c607d67cd6b8 r1.1-RC2

- doc: added syscall info to appendix, fixed broken literature link - cleanup, added missing forward declarations, ...
author Tassilo Philipp
date Tue, 07 Jan 2020 21:52:57 +0100
parents f5577f6bf97a
children d982a00c2177
comparison
equal deleted inserted replaced
344:d60728b1f4a1 345:c607d67cd6b8
266 blr /* return */ 266 blr /* return */
267 267
268 268
269 .align 2 269 .align 2
270 270
271 /* @@@ Bus Error on Darwin */
271 GLOBAL_C(dcCall_ppc32_syscall) 272 GLOBAL_C(dcCall_ppc32_syscall)
272 ENTRY_C(dcCall_ppc32_syscall) 273 ENTRY_C(dcCall_ppc32_syscall)
273 mflr r0 /* r0 = return address */ 274 mflr r0 /* r0 = return address */
274 stw r0,4(r1) /* store r0 to link-area */ 275 stw r0,4(r1) /* store r0 to link-area */
275 li r0, -8 276 li r0, -8
280 lwz r3 , 0(r11) 281 lwz r3 , 0(r11)
281 lwz r4 , 4(r11) 282 lwz r4 , 4(r11)
282 lwz r5 , 8(r11) 283 lwz r5 , 8(r11)
283 lwz r6 ,12(r11) 284 lwz r6 ,12(r11)
284 lwz r7 ,16(r11) 285 lwz r7 ,16(r11)
286 /* @@@ missing r8,r9,10 on some platforms? */
285 sc 287 sc
286 288
287 lwz r1, 0(r1) /* restore stack */ 289 lwz r1, 0(r1) /* restore stack */
288 lwz r0, 4(r1) /* r0 = return address */ 290 lwz r0, 4(r1) /* r0 = return address */
289 mtlr r0 /* setup link register */ 291 mtlr r0 /* setup link register */
290 blr 292 blr
291 293