X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Frts%2FRtsStartup.c;h=5d6e44638889b934e806c83f9f0215bd1d2500a8;hb=fb7a723bfd7650a705cb226e07c5b08b7a8e9279;hp=9d5849274baf55ea63c3043d909eb5334059eb03;hpb=20fc2f0ced64a12d8e44956931b2ac341ed2186f;p=ghc-hetmet.git diff --git a/ghc/rts/RtsStartup.c b/ghc/rts/RtsStartup.c index 9d58492..5d6e446 100644 --- a/ghc/rts/RtsStartup.c +++ b/ghc/rts/RtsStartup.c @@ -1,5 +1,5 @@ /* ----------------------------------------------------------------------------- - * $Id: RtsStartup.c,v 1.50 2001/03/22 03:51:10 hwloidl Exp $ + * $Id: RtsStartup.c,v 1.53 2001/09/04 18:29:21 ken Exp $ * * (c) The GHC Team, 1998-2000 * @@ -7,6 +7,7 @@ * * ---------------------------------------------------------------------------*/ +#include "PosixSource.h" #include "Rts.h" #include "RtsAPI.h" #include "RtsUtils.h" @@ -57,7 +58,7 @@ static int rts_has_started_up = 0; ullong startTime = 0; #endif -EXTFUN(__init_Prelude); +EXTFUN(__stginit_Prelude); static void initModules ( void (*)(void) ); void @@ -205,9 +206,9 @@ startupHaskell(int argc, char *argv[], void (*init_root)(void)) - we supply a unique integer to each statically declared cost centre and cost centre stack in the program. - The code generator inserts a small function "__init_" in each - module and calls the registration functions in each of the modules - it imports. So, if we call "__init_PrelMain", each reachable module in the + The code generator inserts a small function "__stginit_" in each + module and calls the registration functions in each of the modules it + imports. So, if we call "__stginit_PrelMain", each reachable module in the program will be registered (because PrelMain.mainIO calls Main.main). The init* functions are compiled in the same way as STG code, @@ -233,7 +234,7 @@ initModules ( void (*init_root)(void) ) init_sp = 0; init_stack = (F_ *)allocate(INIT_STACK_SIZE / sizeof(W_)); init_stack[init_sp++] = (F_)stg_init_ret; - init_stack[init_sp++] = (F_)__init_Prelude; + init_stack[init_sp++] = (F_)__stginit_Prelude; if (init_root != NULL) { init_stack[init_sp++] = (F_)init_root; } @@ -259,7 +260,7 @@ shutdownHaskellAndExit(int n) exit(n); #else stg_exit(n); -#endif; +#endif } void