https://sourceware.org/bugzilla/show_bug.cgi?id=34250
Bug ID: 34250
Summary: [RISC-V] bfd RISC-V shared preemptible LO12 wrong
success
Product: binutils
Version: 2.45
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: ld
Assignee: unassigned at sourceware dot org
Reporter: l784896635 at gmail dot com
Target Milestone: ---
Created attachment 16759
--> https://sourceware.org/bugzilla/attachment.cgi?id=16759&action=edit
Reduced testcase
I reduced this to the attached RISC-V testcase and can reproduce it 3/3 times.
Observed: GNU ld.bfd 2.45 links the RV32 and RV64 shared objects successfully
for both `R_RISCV_LO12_I` and `R_RISCV_LO12_S`, exports `ext` in `.dynsym`,
emits no dynamic relocations, and patches the instruction immediate to the
local definition's low bits (`li a0, 0x214` / `sw a0, 0x214(zero)` in RV64
run1).
Expected: Link RISC-V shared objects containing `R_RISCV_LO12_I` and
`R_RISCV_LO12_S` relocations from executable code to a default-visible function
`ext` defined in the same DSO.
--
You are receiving this mail because:
You are on the CC list for the bug.