From 16a5bb82bce0388962a5d64682072439b5fa8795 Mon Sep 17 00:00:00 2001 From: Simon Marlow Date: Fri, 1 Jun 2007 08:26:48 +0000 Subject: [PATCH] remove OpenBSD-specific initAdjustor() code that shouldn't be required now Submitted by: Matthias Kilian --- rts/Adjustor.c | 26 -------------------------- rts/RtsStartup.c | 3 --- 2 files changed, 29 deletions(-) diff --git a/rts/Adjustor.c b/rts/Adjustor.c index 841f75c..e2815d0 100644 --- a/rts/Adjustor.c +++ b/rts/Adjustor.c @@ -84,10 +84,6 @@ static void GNUC3_ATTRIBUTE(used) obscure_ccall_wrapper(void) } extern void obscure_ccall_ret_code(void); -#if defined(openbsd_HOST_OS) -static unsigned char *obscure_ccall_ret_code_dyn; -#endif - #endif #if defined(x86_64_HOST_ARCH) @@ -322,11 +318,7 @@ createAdjustor(int cconv, StgStablePtr hptr, adj_code[0x0a] = (unsigned char)0x68; /* pushl obscure_ccall_ret_code */ *((StgFunPtr*)(adj_code + 0x0b)) = -#if !defined(openbsd_HOST_OS) (StgFunPtr)obscure_ccall_ret_code; -#else - (StgFunPtr)obscure_ccall_ret_code_dyn; -#endif adj_code[0x0f] = (unsigned char)0xff; /* jmp *%eax */ adj_code[0x10] = (unsigned char)0xe0; @@ -1099,21 +1091,3 @@ if ( *(unsigned char*)ptr != 0xe8 ) { freeExec(ptr); } - - -/* - * Function: initAdjustor() - * - * Perform initialisation of adjustor thunk layer (if needed.) - */ -void -initAdjustor(void) -{ -#if defined(i386_HOST_ARCH) && defined(openbsd_HOST_OS) - obscure_ccall_ret_code_dyn = allocateExec(4); - obscure_ccall_ret_code_dyn[0] = ((unsigned char *)obscure_ccall_ret_code)[0]; - obscure_ccall_ret_code_dyn[1] = ((unsigned char *)obscure_ccall_ret_code)[1]; - obscure_ccall_ret_code_dyn[2] = ((unsigned char *)obscure_ccall_ret_code)[2]; - obscure_ccall_ret_code_dyn[3] = ((unsigned char *)obscure_ccall_ret_code)[3]; -#endif -} diff --git a/rts/RtsStartup.c b/rts/RtsStartup.c index f0b39d6..7dce06e 100644 --- a/rts/RtsStartup.c +++ b/rts/RtsStartup.c @@ -213,9 +213,6 @@ hs_init(int *argc, char **argv[]) synchroniseSystem(); // calls initParallelSystem etc #endif /* PAR */ - /* Perform initialisation of adjustor thunk layer. */ - initAdjustor(); - /* initialise scheduler data structures (needs to be done before * initStorage()). */ -- 1.7.10.4