https://llvm.org/bugs/show_bug.cgi?id=24286
Bug ID: 24286 Summary: relocation R_MIPS_26 against `a local symbol' can not be used when making a shared object; recompile with -fPIC Product: libraries Version: trunk Hardware: PC OS: All Status: NEW Severity: normal Priority: P Component: Backend: MIPS Assignee: unassignedb...@nondot.org Reporter: bro...@freebsd.org CC: llvmbugs@cs.uiuc.edu Classification: Unclassified Created attachment 14655 --> https://llvm.org/bugs/attachment.cgi?id=14655&action=edit crtbeginS.c processed by clang When trying to link FreeBSD's libc compiled for mips64-unknown-freebsd I get this linker error with ld from binutils 2.25: /usr/local/mips64-freebsd/bin/ld: /home/bed22/obj/mips.mips64/home/bed22/git/cheribsd/tmp/usr/lib/crtbeginS.o: relocation R_MIPS_26 against `a local symbol' can not be used when making a shared object; recompile with -fPIC /home/bed22/obj/mips.mips64/home/bed22/git/cheribsd/tmp/usr/lib/crtbeginS.o: error adding symbols: Bad value Compiler invocation to build crtbegin.o: /home/bed22/git/llvm-cheri/Build/bin/clang -target mips64-unknown-freebsd -integrated-as -msoft-float -target mips64-unknown-freebsd11.0 --sysroot=/home/bed22/obj/mips.mips64/home/bed22/git/cheribsd/tmp -B/usr/local/mips64-freebsd/bin/ -O -pipe -G0 -DIN_GCC -DHAVE_LD_EH_FRAME_HDR -DDT_CONFIG -D__GLIBC__=3 -fno-inline-functions -fno-exceptions -fno-zero-initialized-in-bss -fno-asynchronous-unwind-tables -fno-omit-frame-pointer -I/home/bed22/git/cheribsd/gnu/lib/csu/../../../contrib/gcclibs/include -I/home/bed22/git/cheribsd/gnu/lib/csu/../../../contrib/gcc/config -I/home/bed22/git/cheribsd/gnu/lib/csu/../../../contrib/gcc -I. -I/home/bed22/git/cheribsd/gnu/lib/csu/../../usr.bin/cc/cc_tools -std=gnu89 -Qunused-arguments -g0 -DCRT_BEGIN -DCRTSTUFFS_O -DSHARED -fpic -c -o crtbeginS.o /home/bed22/git/cheribsd/gnu/lib/csu/../../../contrib/gcc/crtstuff.c This actual compiler is fairly heavily modified, but merged with trunk as of a few weeks ago. I've found the same problems with trunk, but trunk suffers from all the issues referenced in 23370 which prevent me from getting far enough to get this error. objdump -r output from crtbeginS.o: --<cut>-- /home/bed22/obj/mips.mips64/home/bed22/git/cheribsd/tmp/usr/lib/crtbeginS.o: file format elf64-tradbigmips-freebsd RELOCATION RECORDS FOR [.text]: [51/1943] OFFSET TYPE VALUE 000000000000001c R_MIPS_GPREL16 __do_global_dtors_aux 000000000000001c R_MIPS_SUB *ABS* 000000000000001c R_MIPS_HI16 *ABS* 0000000000000024 R_MIPS_GPREL16 __do_global_dtors_aux 0000000000000024 R_MIPS_SUB *ABS* 0000000000000024 R_MIPS_LO16 *ABS* 0000000000000028 R_MIPS_GOT_PAGE __do_global_dtors_aux.completed 0000000000000028 R_MIPS_NONE *ABS* 0000000000000028 R_MIPS_NONE *ABS* 000000000000002c R_MIPS_GOT_OFST __do_global_dtors_aux.completed 000000000000002c R_MIPS_NONE *ABS* 000000000000002c R_MIPS_NONE *ABS* 0000000000000038 R_MIPS_GOT_DISP __cxa_finalize 0000000000000038 R_MIPS_NONE *ABS* 0000000000000038 R_MIPS_NONE *ABS* 0000000000000044 R_MIPS_GOT_DISP __dso_handle 0000000000000044 R_MIPS_NONE *ABS* 0000000000000044 R_MIPS_NONE *ABS* 0000000000000048 R_MIPS_CALL16 __cxa_finalize 0000000000000048 R_MIPS_NONE *ABS* 0000000000000048 R_MIPS_NONE *ABS* 0000000000000054 R_MIPS_GOT_PAGE __do_global_dtors_aux.p 0000000000000054 R_MIPS_NONE *ABS* 0000000000000054 R_MIPS_NONE *ABS* 0000000000000058 R_MIPS_GOT_OFST __do_global_dtors_aux.p 0000000000000058 R_MIPS_NONE *ABS* 0000000000000058 R_MIPS_NONE *ABS* 0000000000000070 R_MIPS_GOT_OFST __do_global_dtors_aux.p 0000000000000070 R_MIPS_NONE *ABS* 0000000000000070 R_MIPS_NONE *ABS* 0000000000000074 R_MIPS_GOT_OFST __do_global_dtors_aux.p 0000000000000074 R_MIPS_NONE *ABS* 0000000000000074 R_MIPS_NONE *ABS* 0000000000000088 R_MIPS_GOT_OFST __do_global_dtors_aux.completed 0000000000000088 R_MIPS_NONE *ABS* 0000000000000088 R_MIPS_NONE *ABS* 00000000000000c0 R_MIPS_GPREL16 frame_dummy 00000000000000c0 R_MIPS_SUB *ABS* 00000000000000c0 R_MIPS_HI16 *ABS* 00000000000000c8 R_MIPS_GPREL16 frame_dummy 00000000000000c8 R_MIPS_SUB *ABS* 00000000000000c8 R_MIPS_LO16 *ABS* 00000000000000cc R_MIPS_GOT_PAGE __JCR_LIST__ 00000000000000cc R_MIPS_NONE *ABS* 00000000000000cc R_MIPS_NONE *ABS* 00000000000000d0 R_MIPS_GOT_OFST __JCR_LIST__ 00000000000000d0 R_MIPS_NONE *ABS* 00000000000000d0 R_MIPS_NONE *ABS* 00000000000000dc R_MIPS_GOT_DISP _Jv_RegisterClasses 00000000000000dc R_MIPS_NONE *ABS* 00000000000000dc R_MIPS_NONE *ABS* 00000000000000ec R_MIPS_GOT_OFST __JCR_LIST__ 00000000000000ec R_MIPS_NONE *ABS* 00000000000000ec R_MIPS_NONE *ABS* RELOCATION RECORDS FOR [.fini]: OFFSET TYPE VALUE 0000000000000008 R_MIPS_26 .text 0000000000000008 R_MIPS_NONE *ABS* 0000000000000008 R_MIPS_NONE *ABS* RELOCATION RECORDS FOR [.init]: OFFSET TYPE VALUE 0000000000000008 R_MIPS_26 .text+0x00000000000000b0 0000000000000008 R_MIPS_NONE *ABS*+0x00000000000000b0 0000000000000008 R_MIPS_NONE *ABS*+0x00000000000000b0 RELOCATION RECORDS FOR [.pdr]: OFFSET TYPE VALUE 0000000000000000 R_MIPS_32 .text 0000000000000000 R_MIPS_NONE *ABS* 0000000000000000 R_MIPS_NONE *ABS* 0000000000000020 R_MIPS_32 .text+0x00000000000000b0 0000000000000020 R_MIPS_NONE *ABS*+0x00000000000000b0 0000000000000020 R_MIPS_NONE *ABS*+0x00000000000000b0 RELOCATION RECORDS FOR [.sdata]: OFFSET TYPE VALUE 0000000000000000 R_MIPS_64 __dso_handle 0000000000000000 R_MIPS_NONE *ABS* 0000000000000000 R_MIPS_NONE *ABS* RELOCATION RECORDS FOR [.data.rel.local]: OFFSET TYPE VALUE 0000000000000000 R_MIPS_64 .dtors+0x0000000000000008 0000000000000000 R_MIPS_NONE *ABS*+0x0000000000000008 0000000000000000 R_MIPS_NONE *ABS*+0x0000000000000008 --<cut>-- -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ LLVMbugs mailing list LLVMbugs@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs