* src/vm/jit/x86_64/codegen.c (codegen_emit PUTFIELDCONST, PUTSTATICCONST):
[cacao.git] / src / vm / jit / alpha / asmpart.S
index 8e9f02b2092805ee17568d781f827a96d93eb6db..b05a8afcd100b2cbd5781f1c4baa6cd30d359e35 100644 (file)
@@ -1,6 +1,6 @@
 /* src/vm/jit/alpha/asmpart.S - Java-C interface functions for alpha
 
-   Copyright (C) 1996-2005, 2006, 2007 R. Grafl, A. Krall, C. Kruegel,
+   Copyright (C) 1996-2005, 2006, 2007, 2008 R. Grafl, A. Krall, C. Kruegel,
    C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring,
    E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich,
    J. Wenninger, Institut f. Computersprachen - TU Wien
@@ -22,8 +22,6 @@
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   $Id: asmpart.S 8279 2007-08-09 09:36:57Z michi $
-
 */
 
 
@@ -51,8 +49,6 @@
        .globl asm_vm_call_method_exception_handler
        .globl asm_vm_call_method_end
 
-       .globl asm_call_jit_compiler
-
        .globl asm_handle_exception
        .globl asm_handle_nat_exception
 
 
        .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                           /* ALIGNMENT PADDING                  */
        .long   0                           /* fltsave                            */
        .long   1                           /* intsave                            */
        .long   0                           /* isleaf                             */
-       .long   0                           /* IsSync                             */
        .long   0                           /* frame size                         */
        .quad   0                           /* codeinfo pointer                   */
 
@@ -153,9 +139,9 @@ L_asm_vm_call_method_stack_copy_done:
 L_asm_vm_call_method_recompute_pv:
        lda     pv,(asm_vm_call_method - L_asm_vm_call_method_recompute_pv)(ra)
 
+L_asm_vm_call_method_recompute_return:
        mov     s0,sp                       /* restore stack pointer              */
 
-L_asm_vm_call_method_recompute_return:
        ldq     ra,0*8(sp)                  /* restore RA                         */
        ldq     gp,1*8(sp)                  /* restore global pointer             */
        ldq     s0,3*8(sp)
@@ -175,54 +161,6 @@ asm_vm_call_method_end:
        .end    asm_vm_call_method
 
 
-/* asm_call_jit_compiler *******************************************************
-
-   Invokes the compiler for untranslated Java methods.
-
-*******************************************************************************/
-
-       .ent    asm_call_jit_compiler
-
-asm_call_jit_compiler:
-       ldgp    gp,0(pv)
-       lda     sp,-(ARG_CNT+2)*8(sp) /* +2: keep stack 16-byte aligned           */
-
-       stq     ra,0*8(sp)            /* save return address                      */
-
-       SAVE_ARGUMENT_REGISTERS(1)    /* save 6 int/6 float argument registers    */
-
-       mov     itmp1,a0              /* pass methodinfo pointer                  */
-       mov     mptr,a1               /* pass method pointer                      */
-       lda     a2,(ARG_CNT+2)*8(sp)  /* pass java sp                             */
-       mov     ra,a3
-       jsr     ra,jit_asm_compile    /* call jit compiler                        */
-       mov     v0,pv
-
-       ldq     ra,0*8(sp)            /* load return address                      */
-
-       RESTORE_ARGUMENT_REGISTERS(1) /* restore 6 int/6 float argument registers */
-
-       lda     sp,(ARG_CNT+2)*8(sp)  /* remove stack frame                       */
-
-       beq     pv,L_asm_call_jit_compiler_exception
-
-       jmp     zero,(pv)             /* and call method, the method returns      */
-                                     /* directly to the caller (ra).             */
-
-L_asm_call_jit_compiler_exception:
-       subq    sp,2*8,sp
-       stq     ra,0*8(sp)            /* save return address (xpc)                */
-       jsr     ra,exceptions_get_and_clear_exception
-       ldq     ra,0*8(sp)            /* restore return address (xpc)             */
-       addq    sp,2*8,sp
-
-       mov     v0,xptr               /* get exception                            */
-       subq    ra,4,xpc              /* exception address is ra - 4              */
-       br      L_asm_handle_nat_exception
-
-       .end    asm_call_jit_compiler
-
-
 /* asm_handle_exception ********************************************************
 
    This function handles an exception. It does not use the usual calling
@@ -252,7 +190,7 @@ L_asm_handle_exception_stack_loop:
 L_asm_handle_exception_load_gp:
        ldgp    gp,0(ra)                    /* load gp                            */
 
-       jsr     ra,md_codegen_get_pv_from_pc/* get PV from RA                     */
+       jsr     ra,md_asm_codegen_get_pv_from_pc /* get PV from RA                */
        stq     v0,2*8(sp)                  /* save PV                            */
 
        ldq     a0,0*8(sp)                  /* pass xptr                          */