https://sourceware.org/bugzilla/show_bug.cgi?id=24673
Bug ID: 24673
Summary: [RISCV] -fPIC -pie and -fPIC -no-pie create unexpected
R_RISCV_NONE R_RISCV_DTPMOD64 relocations
Product: binutils
Version: 2.33 (HEAD)
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: maskray at google dot com
Target Milestone: ---
static __thread int a;
int foo() {return a;}
int main() {}
riscv-gcc -fuse-ld=bfd -fPIC -no-pie d.c -o d
readelf -r d
Relocation section '.rela.dyn' at offset 0x378 contains 1 entry:
Offset Info Type Symbol's Value
Symbol's Name + Addend
0000000000000000 0000000000000000 R_RISCV_NONE 0
riscv-gcc -fuse-ld=bfd -fPIC -pie d.c -o d
readelf -r d
Relocation section '.rela.dyn' at offset 0x458 contains 9 entries:
...
0000000000001978 0000000000000007 R_RISCV_TLS_DTPMOD64 0
There is no correctness issue.
1) In both cases, the DTPREL GOT slot is correctly pre-populated.
2) In the -fPIC -no-pie case, the DTPMOD GOT slot is pre-populated as 1.
But the dynamic relocations are unexpected and made me wonder if there is a bug
:)
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-binutils