Fixes build for newer gcc (at least 4.4), breaks older gcc. We don't care.
[cacao.git] / src / vm / jit / powerpc64 / asmpart.S
index 1fea8c0c131a93fd5b92bf52753fae5eb533621d..ea399dc7f48c8b6218c81aeef4a7eae4e3d95eb6 100644 (file)
 
 
        SAVE_TEMPORARY_REGISTERS(15)     
-       mr      s0, r1                  /* save stack pointer */
+       mr      s0, sp                  /* save stack pointer */
 
        /* a1 contains a pointer to a unit64_t structure filled with all INT_ARG_REG,
        followed by ADR_ARG_CNT and FLT_ARG_CNT, afterwards what else needs to be copied onto
@@ -203,9 +203,9 @@ L_asm_vm_call_method_return:
 
        RESTORE_TEMPORARY_REGISTERS(15) 
 
-       ld     r0,40*8+LA_LR_OFFSET(r1)
+       ld     r0,40*8+LA_LR_OFFSET(sp)
        mtlr   r0
-       addi   r1,r1,40*8
+       addi   sp,sp,40*8
        blr
 
 asm_vm_call_method_exception_handler:
@@ -241,7 +241,7 @@ L_asm_handle_exception_stack_loop:
        std     itmp3,LA_SIZE+PA_SIZE+(4+4)*8(sp)   /* save maybe-leaf flag (cleared)     */
 
        mr      a0,r0                       /* pass return address                */
-       bl      md_codegen_get_pv_from_pc   /* get PV from RA                     */
+       bl      md_asm_codegen_get_pv_from_pc   /* get PV from RA                 */
        std     v0,LA_SIZE+PA_SIZE+(4+2)*8(sp)      /* save data segment pointer          */
 
        ld      a0,LA_SIZE+PA_SIZE+(4+0)*8(sp)      /* pass xptr                          */