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 dd9926d90038f06fa78deff8b3d1e6560f9fe1a8..ea399dc7f48c8b6218c81aeef4a7eae4e3d95eb6 100644 (file)
 
        .align  3
 
-       .quad   0                           /* catch type all                     */
-       .quad   0                           /* handler pc                         */
-       .quad   0                           /* end pc                             */
-       .quad   0                           /* start pc                           */
-       .long   1                           /* extable size                       */
-       .long   0                           /* ALIGNMENT PADDING                  */
-       .quad   0                           /* line number table  start           */
-       .quad   0                           /* line number table  size            */
        .long   0                           /* fltsave                            */
        .long   0                           /* intsave                            */
        .long   0                           /* isleaf                             */
 
 
        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
@@ -211,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:
@@ -249,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                          */