#10402: powerpc: unhandled ELF relocation(RelA) type 252 -----------------------------------+----------------------------------- Reporter: cjwatson | Owner: simonmar Type: bug | Status: patch Priority: normal | Milestone: 7.10.2 Component: Runtime System | Version: 7.8.4 Resolution: | Keywords: Operating System: Linux | Architecture: powerpc Type of failure: Runtime crash | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Revisions: -----------------------------------+----------------------------------- Comment (by slyfox): I think the source of new relocations is GHC itself: a93ab43ab5f40cadbedea2f6342b93c245e91434 It started generating proper PIC files for all (including .c) code recently. {{{ [sf] /tmp:powerpc64-unknown-linux-gnu-gcc -c -m32 -O2 a.c && objdump -d -r a.o a.o: file format elf32-powerpc Disassembly of section .text: 00000000 <g>: 0: 94 21 ff f0 stwu r1,-16(r1) 4: 38 21 00 10 addi r1,r1,16 8: 48 00 00 00 b 8 <g+0x8> 8: R_PPC_REL24 f [sf] /tmp:powerpc64-unknown-linux-gnu-gcc -fPIC -c -m32 -O2 a.c && objdump -d -r a.o a.o: file format elf32-powerpc Disassembly of section .text: 00000000 <g>: 0: 94 21 ff e0 stwu r1,-32(r1) 4: 7c 08 02 a6 mflr r0 8: 42 9f 00 05 bcl 20,4*cr7+so,c <g+0xc> c: 93 c1 00 18 stw r30,24(r1) 10: 90 01 00 24 stw r0,36(r1) 14: 7f c8 02 a6 mflr r30 18: 3f de 00 00 addis r30,r30,0 1a: R_PPC_REL16_HA .got2+0x800e 1c: 3b de 00 00 addi r30,r30,0 1e: R_PPC_REL16_LO .got2+0x8012 20: 48 00 00 01 bl 20 <g+0x20> 20: R_PPC_PLTREL24 f+0x8000 24: 80 01 00 24 lwz r0,36(r1) 28: 83 c1 00 18 lwz r30,24(r1) 2c: 38 21 00 20 addi r1,r1,32 30: 7c 08 03 a6 mtlr r0 34: 4e 80 00 20 blr }}} What bothers me is why ghci tries o load .a/.o file manually at all. It should use system linker. by creating/dlopen()ing temp .so object. Does debian disable dynamic GHC by default as DYNAMIC_GHC_PROGRAMS = NO ? From the above I suspect '''R_PPC_PLTREL24''' might require +0x8000 offset and should be PLT relative. I'll try to look at it tomorrow. -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10402#comment:7> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler