Magnus pushed to branch wip/mangoiv/ghc-9.12-bp at Glasgow Haskell Compiler / GHC

Commits:

2 changed files:

Changes:

  • rts/linker/Elf.c
    ... ... @@ -1308,6 +1308,16 @@ do_Elf_Rel_relocations ( ObjectCode* oc, char* ehdrC,
    1308 1308
            case COMPAT_R_386_NONE:                  break;
    
    1309 1309
            case COMPAT_R_386_32:   *pP = value;     break;
    
    1310 1310
            case COMPAT_R_386_PC32: *pP = value - P; break;
    
    1311
    +       case COMPAT_R_386_PLT32: *pP = value - P; break;
    
    1312
    +       case COMPAT_R_386_GOTOFF: *pP = value - (Elf_Addr)oc->info->got_start; break;
    
    1313
    +       case COMPAT_R_386_GOTPC:  *pP = (Elf_Addr)oc->info->got_start + A - P; break;
    
    1314
    +       case COMPAT_R_386_GOT32:
    
    1315
    +       case COMPAT_R_386_GOT32X:
    
    1316
    +           CHECK(symbol);
    
    1317
    +           CHECK(symbol->got_addr);
    
    1318
    +           *pP = (Elf_Addr)symbol->got_addr
    
    1319
    +               - (Elf_Addr)oc->info->got_start + A;
    
    1320
    +           break;
    
    1311 1321
     #        endif
    
    1312 1322
     
    
    1313 1323
     #        if defined(arm_HOST_ARCH)
    

  • testsuite/tests/th/all.T
    ... ... @@ -626,7 +626,6 @@ test('T25209', normal, compile, ['-v0 -ddump-splices -dsuppress-uniques'])
    626 626
     test('TH_MultilineStrings', normal, compile_and_run, [''])
    
    627 627
     test('T25252',
    
    628 628
       [extra_files(['T25252B.hs', 'T25252_c.c']),
    
    629
    -   when(arch('i386'), expect_broken_for(25260,['ext-interp'])),
    
    630 629
        req_th,
    
    631 630
        req_c],
    
    632 631
       compile_and_run, ['-fPIC T25252_c.c'])