* src/vm/jit/s390/asmpart.S
[cacao.git] / src / vm / jit / s390 / asmpart.S
index d8a30e6fe3b9ee37e2b5ba27c351adc244d19f15..a8bb336cae8c9f3d03eb4a6dee3e8f581a7812e0 100644 (file)
@@ -22,7 +22,7 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: asmpart.S 7839 2007-04-29 22:46:56Z pm $
+   $Id: asmpart.S 8096 2007-06-17 13:45:58Z pm $
 
 */
 
@@ -583,6 +583,7 @@ L_ahe_bras2:
        lr      xpc,v0                      /* move handlerpc into xpc            */
        l       xptr,0*4(sp)                /* restore exception pointer          */
        l       pv,2*4(sp)                  /* restore PV                         */
+       ahi     pv,-0xffc                   /* offset PV */
        l       %r0,4*4(sp)                 /* get maybe-leaf flag                */
        ahi     sp,(6*4)                    /* free stack frame                   */
 
@@ -737,7 +738,7 @@ asm_patcher_wrapper:
        /* pass arguments */
 
        la      a0, apw_sfs(sp)             /* pass SP of patcher stub */
-       lr      a1, pv                      /* pass PV (if NULL, use findmethod)  */
+       la      a1, 0xffc(pv)               /* pass PV (if NULL, use findmethod)  */
        lhi     a2, 0                       /* pass RA                            */
 
        /* call patcher_wrapper */
@@ -903,70 +904,7 @@ asm_replacement_in:
 
        /* jump to new code */
        ret
-
-
-/* asm_builtin_x2x *************************************************************
-*                                                                              *
-*   Wrapper functions for float to int corner cases                            *
-*                                                                              *
-*******************************************************************************/
-
-asm_builtin_f2i:
-       sub     $(ARG_CNT*8),sp
-       
-       SAVE_ARGUMENT_REGISTERS(0)
-       
-       movq    ftmp1,fa0
-       call    builtin_f2i@PLT
-       
-       RESTORE_ARGUMENT_REGISTERS(0)
-       
-       add     $(ARG_CNT*8),sp
-       ret
-
-
-asm_builtin_f2l:
-       sub     $(ARG_CNT*8),sp
-       
-       SAVE_ARGUMENT_REGISTERS(0)
-       
-       movq    ftmp1,fa0
-       call    builtin_f2l@PLT
-       
-       RESTORE_ARGUMENT_REGISTERS(0)
-       
-       add     $(ARG_CNT*8),sp
-       ret
-
-
-asm_builtin_d2i:
-       sub     $(ARG_CNT*8),sp
-       
-       SAVE_ARGUMENT_REGISTERS(0)
-       
-       movq    ftmp1,fa0
-       call    builtin_d2i@PLT
-       
-       RESTORE_ARGUMENT_REGISTERS(0)
-       
-       add     $(ARG_CNT*8),sp
-       ret
-
-
-asm_builtin_d2l:
-       sub     $(ARG_CNT*8),sp
-       
-       SAVE_ARGUMENT_REGISTERS(0)
-       
-       movq    ftmp1,fa0
-       call    builtin_d2l@PLT
-       
-       RESTORE_ARGUMENT_REGISTERS(0)
-       
-       add     $(ARG_CNT*8),sp
-       ret
-
-#endif /* if 0 */
+#endif
 
 /* TODO use move here ? */
 
@@ -993,17 +931,6 @@ asm_criticalsections:
        .long 0
 
 
-/* disable exec-stacks ********************************************************/
-
-#if 0
-
-#if defined(__linux__) && defined(__ELF__)
-       .section .note.GNU-stack,"",%progbits
-#endif
-
-
-#endif /* if 0 */
-
 /*
  * These are local overrides for various environment variables in Emacs.
  * Please do not remove this and leave it at the end of the file, where