https://sourceware.org/bugzilla/show_bug.cgi?id=34247

            Bug ID: 34247
           Summary: [RISC-V] GNU ld.bfd shared preemptible 32 PCREL 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 16756
  --> https://sourceware.org/bugzilla/attachment.cgi?id=16756&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 default-visible shared
objects successfully, exports `ext` and `slot` in `.dynsym`, emits no dynamic
relocations, and writes a fixed PC-relative value into `.data` (`ext - slot`)
even though `ext` is preemptible.
Expected: Link RISC-V shared objects containing an `R_RISCV_32_PCREL`
relocation in `.data` against 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.

Reply via email to