From: Michael Starzinger Date: Wed, 4 Nov 2009 12:29:38 +0000 (+0100) Subject: * src/vm/jit/replace.cpp: Use architectures STACKFRAME_RA_LINKAGE_AREA define. X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=cacao.git;a=commitdiff_plain;h=e2829c5d57a6b7b804328f0d01c1b6889654da46 * src/vm/jit/replace.cpp: Use architectures STACKFRAME_RA_LINKAGE_AREA define. * src/vm/jit/alpha/arch.h: Correctly set above define. * src/vm/jit/arm/arch.h: Likewise. * src/vm/jit/i386/arch.h: Likewise. * src/vm/jit/m68k/arch.h: Likewise. * src/vm/jit/mips/arch.h: Likewise. * src/vm/jit/powerpc/arch.h: Likewise. * src/vm/jit/powerpc64/arch.h: Likewise. * src/vm/jit/replace.cpp: Likewise. * src/vm/jit/s390/arch.h: Likewise. * src/vm/jit/sparc64/arch.h: Likewise. * src/vm/jit/x86_64/arch.h: Likewise. --- diff --git a/src/vm/jit/alpha/arch.h b/src/vm/jit/alpha/arch.h index e3f96f6a2..1a01e0ab3 100644 --- a/src/vm/jit/alpha/arch.h +++ b/src/vm/jit/alpha/arch.h @@ -105,6 +105,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 0 #define STACKFRAME_RA_TOP_OF_FRAME 1 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 1 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 0 diff --git a/src/vm/jit/arm/arch.h b/src/vm/jit/arm/arch.h index 2d282f957..1d0a49028 100644 --- a/src/vm/jit/arm/arch.h +++ b/src/vm/jit/arm/arch.h @@ -117,6 +117,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 0 #define STACKFRAME_RA_TOP_OF_FRAME 1 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 1 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 0 diff --git a/src/vm/jit/i386/arch.h b/src/vm/jit/i386/arch.h index 29c0603ea..e9aef93f7 100644 --- a/src/vm/jit/i386/arch.h +++ b/src/vm/jit/i386/arch.h @@ -137,6 +137,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 1 #define STACKFRAME_RA_TOP_OF_FRAME 0 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 0 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 0 diff --git a/src/vm/jit/m68k/arch.h b/src/vm/jit/m68k/arch.h index 77a189f25..e2b70b55f 100644 --- a/src/vm/jit/m68k/arch.h +++ b/src/vm/jit/m68k/arch.h @@ -101,6 +101,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 1 #define STACKFRAME_RA_TOP_OF_FRAME 0 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 0 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 1 diff --git a/src/vm/jit/mips/arch.h b/src/vm/jit/mips/arch.h index 6f6cad855..7d6f1875e 100644 --- a/src/vm/jit/mips/arch.h +++ b/src/vm/jit/mips/arch.h @@ -173,6 +173,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 0 #define STACKFRAME_RA_TOP_OF_FRAME 1 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 1 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 1 diff --git a/src/vm/jit/powerpc/arch.h b/src/vm/jit/powerpc/arch.h index 978f1facd..6544790a2 100644 --- a/src/vm/jit/powerpc/arch.h +++ b/src/vm/jit/powerpc/arch.h @@ -113,6 +113,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 0 #define STACKFRAME_RA_TOP_OF_FRAME 0 +#define STACKFRAME_RA_LINKAGE_AREA 1 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 1 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 1 diff --git a/src/vm/jit/powerpc64/arch.h b/src/vm/jit/powerpc64/arch.h index 0488a1d7c..5d9469609 100644 --- a/src/vm/jit/powerpc64/arch.h +++ b/src/vm/jit/powerpc64/arch.h @@ -97,6 +97,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 0 #define STACKFRAME_RA_TOP_OF_FRAME 0 +#define STACKFRAME_RA_LINKAGE_AREA 1 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 0 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 1 diff --git a/src/vm/jit/replace.cpp b/src/vm/jit/replace.cpp index 12f1ba9e3..67878da59 100644 --- a/src/vm/jit/replace.cpp +++ b/src/vm/jit/replace.cpp @@ -71,16 +71,6 @@ #include #endif -/*** architecture-dependent configuration *************************************/ - -/* first unset the macros (default) */ -#undef REPLACE_RA_LINKAGE_AREA - -/* powerpc */ -#if defined(__POWERPC__) -# define REPLACE_RA_LINKAGE_AREA -#endif - /*** configuration of native stack slot size **********************************/ @@ -1527,12 +1517,12 @@ void md_pop_stackframe(executionstate_t *es) es->ra = (u1*) (ptrint) *--basesp; #endif /* STACKFRAME_RA_TOP_OF_FRAME */ -#if defined(REPLACE_RA_LINKAGE_AREA) +#if STACKFRAME_RA_LINKAGE_AREA # if STACKFRAME_LEAFMETHODS_RA_REGISTER if (!code_is_leafmethod(es->code)) # endif es->ra = *((uint8_t**) ((intptr_t) basesp + LA_LR_OFFSET)); -#endif /* REPLACE_RA_LINKAGE_AREA */ +#endif /* STACKFRAME_RA_LINKAGE_AREA */ /* restore saved int registers */ @@ -1675,12 +1665,12 @@ void md_push_stackframe(executionstate_t *es, codeinfo *calleecode, u1 *ra) *--basesp = (ptrint) ra; #endif /* STACKFRAME_RA_TOP_OF_FRAME */ -#if defined(REPLACE_RA_LINKAGE_AREA) +#if STACKFRAME_RA_LINKAGE_AREA # if STACKFRAME_LEAFMETHODS_RA_REGISTER if (!code_is_leafmethod(calleecode)) # endif *((uint8_t**) ((intptr_t) basesp + LA_LR_OFFSET)) = ra; -#endif /* REPLACE_RA_LINKAGE_AREA */ +#endif /* STACKFRAME_RA_LINKAGE_AREA */ /* save int registers */ diff --git a/src/vm/jit/s390/arch.h b/src/vm/jit/s390/arch.h index e5c269955..8259e04e6 100644 --- a/src/vm/jit/s390/arch.h +++ b/src/vm/jit/s390/arch.h @@ -105,6 +105,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 0 #define STACKFRAME_RA_TOP_OF_FRAME 1 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 0 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 1 diff --git a/src/vm/jit/sparc64/arch.h b/src/vm/jit/sparc64/arch.h index 48c674101..0197ab4fe 100644 --- a/src/vm/jit/sparc64/arch.h +++ b/src/vm/jit/sparc64/arch.h @@ -102,6 +102,7 @@ #error Set the values below correctly!!! #define STACKFRMAE_RA_BETWEEN_FRAMES 0 #define STACKFRAME_RA_TOP_OF_FRAME 0 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 0 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 0 diff --git a/src/vm/jit/x86_64/arch.h b/src/vm/jit/x86_64/arch.h index 80ac34246..7e8457cce 100644 --- a/src/vm/jit/x86_64/arch.h +++ b/src/vm/jit/x86_64/arch.h @@ -110,6 +110,7 @@ #define STACKFRMAE_RA_BETWEEN_FRAMES 1 #define STACKFRAME_RA_TOP_OF_FRAME 0 +#define STACKFRAME_RA_LINKAGE_AREA 0 #define STACKFRAME_LEAFMETHODS_RA_REGISTER 0 #define STACKFRAME_SYNC_NEEDS_TWO_SLOTS 0