X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FLinker.c;h=dc31869517712ab2b86eb5a46f9679d059c47553;hb=7d6dffe542bdad5707a929ae7ac25813c586766d;hp=b1bfd7d3c431bb3453fd1eaab5afb57d06464f15;hpb=132a718bfb9e44a49b5eaecaf21530b463663308;p=ghc-hetmet.git diff --git a/rts/Linker.c b/rts/Linker.c index b1bfd7d..dc31869 100644 --- a/rts/Linker.c +++ b/rts/Linker.c @@ -521,6 +521,8 @@ typedef struct _RtsSymbolVal { SymX(hs_free_stable_ptr) \ SymX(hs_free_fun_ptr) \ SymX(initLinker) \ + SymX(infoPtrzh_fast) \ + SymX(closurePayloadzh_fast) \ SymX(int2Integerzh_fast) \ SymX(integer2Intzh_fast) \ SymX(integer2Wordzh_fast) \ @@ -806,10 +808,10 @@ static RtsSymbolVal rtsSyms[] = { - /* ----------------------------------------------------------------------------- * Insert symbols into hash tables, checking for duplicates. */ + static void ghciInsertStrHashTable ( char* obj_name, HashTable *table, char* key, @@ -839,8 +841,6 @@ static void ghciInsertStrHashTable ( char* obj_name, ); exit(1); } - - /* ----------------------------------------------------------------------------- * initialize the object linker */ @@ -1287,6 +1287,7 @@ loadObj( char *path ) // that the actual sections end up aligned again. oc->misalignment = machoGetMisalignment(f); oc->image = stgMallocBytes(oc->fileSize + oc->misalignment, "loadObj(image)"); + oc->image += oc->misalignment; # else oc->image = stgMallocBytes(oc->fileSize, "loadObj(image)"); # endif @@ -4359,3 +4360,4 @@ static int machoGetMisalignment( FILE * f ) } #endif +