Fix a dynamic linker bug that killed ghci on Snow Leopard
authorManuel M T Chakravarty <chak@cse.unsw.edu.au>
Thu, 29 Oct 2009 12:41:59 +0000 (12:41 +0000)
committerManuel M T Chakravarty <chak@cse.unsw.edu.au>
Thu, 29 Oct 2009 12:41:59 +0000 (12:41 +0000)
rts/Linker.c

index 45089e3..a2b69f9 100644 (file)
@@ -4117,7 +4117,8 @@ static int relocateSection(
                        || scat->r_type == PPC_RELOC_HI16_SECTDIFF
                        || scat->r_type == PPC_RELOC_HA16_SECTDIFF)
 #else
-                    else if(scat->r_type == GENERIC_RELOC_SECTDIFF)
+                    else if(scat->r_type == GENERIC_RELOC_SECTDIFF
+                        || scat->r_type == GENERIC_RELOC_LOCAL_SECTDIFF)
 #endif
                    {
                        struct scattered_relocation_info *pair =
@@ -4180,7 +4181,8 @@ static int relocateSection(
                         || scat->r_type == PPC_RELOC_SECTDIFF)
 #else
                     if(scat->r_type == GENERIC_RELOC_VANILLA
-                        || scat->r_type == GENERIC_RELOC_SECTDIFF)
+                        || scat->r_type == GENERIC_RELOC_SECTDIFF
+                        || scat->r_type == GENERIC_RELOC_LOCAL_SECTDIFF)
 #endif
                     {
                         *wordPtr = word;