From: twisti Date: Fri, 31 Mar 2006 07:50:19 +0000 (+0000) Subject: * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Replaced $stub X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=commitdiff_plain;h=06f35cbf71221db9cfcd8ce1fa098e7005ef7d1b;p=cacao.git * src/vm/jit/powerpc/asmpart.S (asm_vm_call_method): Replaced $stub symbols with old symbols and define them for darwin in the corresponding md-asm.h. (asm_call_jit_compiler): Likewise. (asm_wrapper_patcher): Likewise. (asm_replacement_out): Likewise. * src/vm/jit/powerpc/darwin/md-asm.h (builtin_asm_get_exceptionptrptr) (builtin_throw_exception, exceptions_handle_exception, jit_compile) (replace_me, stacktrace_create_extern_stackframeinfo) (stacktrace_remove_stackframeinfo): Changed to $stub symbol. (stacktrace_extern_fillInStackTrace): Removed. * src/vm/jit/powerpc/linux/md-abi.c (regs): Added. --- diff --git a/src/vm/jit/powerpc/asmpart.S b/src/vm/jit/powerpc/asmpart.S index 70fc7338c..5c74cdc02 100644 --- a/src/vm/jit/powerpc/asmpart.S +++ b/src/vm/jit/powerpc/asmpart.S @@ -31,7 +31,7 @@ Changes: Christian Thalinger Edwin Steiner - $Id: asmpart.S 4712 2006-03-30 11:59:46Z twisti $ + $Id: asmpart.S 4715 2006-03-31 07:50:19Z twisti $ */ @@ -237,9 +237,9 @@ L_stack_copy_done: 1: mflr itmp1 #if defined(__DARWIN__) - addi pv,itmp1,lo16(asm_vm_call_method-1b) + addi pv,itmp1,lo16(asm_vm_call_method - 1b) #else - addi pv,itmp1,(asm_vm_call_method-1b)@l + addi pv,itmp1,(asm_vm_call_method - 1b)@l #endif L_asm_vm_call_method_return: @@ -279,7 +279,7 @@ L_asm_vm_call_method_return: asm_vm_call_method_exception_handler: #if !defined(NDEBUG) mr r3,itmp1 - bl L_builtin_throw_exception$stub + bl builtin_throw_exception #endif li v0,0 /* return NULL */ b L_asm_vm_call_method_return @@ -432,14 +432,14 @@ noregchange: addi a2,sp,(LA_SIZE + 5*4 + INT_ARG_CNT*4 + FLT_ARG_CNT*8 + 3*4)+sizestackframeinfo lwz a3,(LA_SIZE + 5*4 + INT_ARG_CNT*4 + FLT_ARG_CNT*8 + 3*4)+sizestackframeinfo+LA_LR_OFFSET(sp) mr a4,a3 /* xpc is equal to ra */ - bl L_stacktrace_create_extern_stackframeinfo$stub + bl stacktrace_create_extern_stackframeinfo lwz a0,(LA_SIZE + 5*4 + INT_ARG_CNT*4 + FLT_ARG_CNT*8 + 1*4)(r1) - bl L_jit_compile$stub /* compile the Java method */ + bl jit_compile /* compile the Java method */ mr pv,r3 /* move address to pv register */ addi a0,sp,(LA_SIZE + 5*4 + INT_ARG_CNT*4 + FLT_ARG_CNT*8 + 3*4) - bl L_stacktrace_remove_stackframeinfo$stub + bl stacktrace_remove_stackframeinfo #if defined(__DARWIN__) lwz a0,(LA_WORD_SIZE+5+0)*4(r1) @@ -490,7 +490,7 @@ L_asm_call_jit_compiler_exception: mflr r0 stw r0,LA_LR_OFFSET(sp) stwu sp,-LA_SIZE_ALIGNED(sp) /* preserve linkage area */ - bl L_builtin_asm_get_exceptionptrptr$stub + bl builtin_asm_get_exceptionptrptr lwz r0,LA_SIZE_ALIGNED+LA_LR_OFFSET(sp) mtlr r0 addi sp,sp,LA_SIZE_ALIGNED @@ -566,7 +566,7 @@ L_asm_handle_exception_stack_loop: mr a1,xpc /* pass exception pc */ mr a2,pv /* pass data segment pointer */ /* a3 is still set */ - bl L_exceptions_handle_exception$stub + bl exceptions_handle_exception mr. v0,v0 beq L_asm_handle_exception_not_catched @@ -767,7 +767,7 @@ asm_wrapper_patcher: addi a2,sp,(8+LA_WORD_SIZE+5+58)*4+sizestackframeinfo mr a3,r0 /* this is correct for leafs */ lwz a4,((5+LA_WORD_SIZE+5+58)*4+sizestackframeinfo)(sp) /* pass xpc */ - bl L_stacktrace_create_extern_stackframeinfo$stub + bl stacktrace_create_extern_stackframeinfo addi a0,sp,(0+LA_WORD_SIZE+5+58)*4+sizestackframeinfo /* pass sp */ lwz pv,(0+LA_WORD_SIZE+5+58)*4+sizestackframeinfo(sp) /* get function */ @@ -778,7 +778,7 @@ asm_wrapper_patcher: stw v0,LA_SIZE+(5+57)*4(sp) /* save return value */ addi a0,sp,LA_SIZE+(5+58)*4 - bl L_stacktrace_remove_stackframeinfo$stub /* remove stackframe info */ + bl stacktrace_remove_stackframeinfo /* remove stackframe info */ #if defined(__DARWIN__) lwz a0,LA_SIZE+(5+0)*4(r1) @@ -853,7 +853,7 @@ L_asm_wrapper_patcher_exception: stw r0,LA_LR_OFFSET(sp) stwu sp,-(LA_SIZE+1*4)(sp) /* preserve linkage area */ stw xpc,LA_SIZE+0*4(sp) - bl L_builtin_asm_get_exceptionptrptr$stub + bl builtin_asm_get_exceptionptrptr lwz xpc,LA_SIZE+0*4(sp) lwz r0,LA_SIZE+1*4+LA_LR_OFFSET(sp) mtlr r0 @@ -980,7 +980,7 @@ asm_replacement_out: lwz a0,-(4*4)(itmp1) /* arg0: rplpoint * */ mr a1,sp /* arg1: execution state */ addi sp,sp,-(LA_SIZE_ALIGNED) - b L_replace_me$stub /* call C function replace_me */ + b replace_me /* call C function replace_me */ /* asm_replacement_in ********************************************************** diff --git a/src/vm/jit/powerpc/darwin/md-asm.h b/src/vm/jit/powerpc/darwin/md-asm.h index d0c69820d..2f326694a 100644 --- a/src/vm/jit/powerpc/darwin/md-asm.h +++ b/src/vm/jit/powerpc/darwin/md-asm.h @@ -28,7 +28,7 @@ Changes: - $Id: md-asm.h 4710 2006-03-30 10:23:11Z twisti $ + $Id: md-asm.h 4715 2006-03-31 07:50:19Z twisti $ */ @@ -253,18 +253,19 @@ /* external defines ***********************************************************/ -#define builtin_asm_get_exceptionptrptr _builtin_asm_get_exceptionptrptr -#define builtin_throw_exception _builtin_throw_exception -#define exceptions_handle_exception _exceptions_handle_exception -#define jit_compile _jit_compile -#define replace_me _replace_me +#define builtin_asm_get_exceptionptrptr \ + L_builtin_asm_get_exceptionptrptr$stub + +#define builtin_throw_exception L_builtin_throw_exception$stub +#define exceptions_handle_exception L_exceptions_handle_exception$stub +#define jit_compile L_jit_compile$stub +#define replace_me L_replace_me$stub #define stacktrace_create_extern_stackframeinfo \ - _stacktrace_create_extern_stackframeinfo + L_stacktrace_create_extern_stackframeinfo$stub -#define stacktrace_remove_stackframeinfo _stacktrace_remove_stackframeinfo -#define stacktrace_extern_fillInStackTrace \ - _stacktrace_extern_fillInStackTrace +#define stacktrace_remove_stackframeinfo \ + L_stacktrace_remove_stackframeinfo$stub #if !defined(USE_THREADS) || !defined(NATIVE_THREADS) #define _no_threads_exceptionptr __no_threads_exceptionptr diff --git a/src/vm/jit/powerpc/linux/md-abi.c b/src/vm/jit/powerpc/linux/md-abi.c index de9ffe113..6ac732cd1 100644 --- a/src/vm/jit/powerpc/linux/md-abi.c +++ b/src/vm/jit/powerpc/linux/md-abi.c @@ -28,7 +28,7 @@ Changes: Christian Ullrich - $Id: md-abi.c 4384 2006-01-28 14:42:58Z twisti $ + $Id: md-abi.c 4715 2006-03-31 07:50:19Z twisti $ */ @@ -63,6 +63,13 @@ s4 nregdescint[] = { REG_END }; +char *regs[] = { + "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7", + "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15", + "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23", + "r24", "r25", "r26", "r27", "r28", "r29", "r30", "r31", +}; + s4 nregdescfloat[] = { /*ftmp3, fa0/v0, fa1, fa2, fa3, fa4, fa5, fa6, */