[PATCH] RISC-V: Also output undefined symbols as dynamic symbols

Project / Subsystem

binutils / risc-v

Date

2026-05-11

Proposer

Vivian Wang <wangruikang@iscas.ac.cn>

Source type

public_inbox

Consensus

Proposed

Sentiment

/10

Technical tradeoffs

  • Reintroduces the output of undefined symbols as dynamic symbols, which may have been intentionally removed in a previous commit (9e10fcf71c11).
  • Fixes a regression that caused crashes or errors when linking with ``--unresolved-symbols=ignore-in-object-file``.

All attributes

project
binutils
subsystem
risc-v
patch_id
discussion_id
9253a1f8-4f1a-4482-801b-a1e05d91c5ea@iscas.ac.cn
source_type
public_inbox
title
[PATCH] RISC-V: Also output undefined symbols as dynamic symbols
headline
RISC-V: Output undefined symbols as dynamic symbols
tldr
This patch fixes an issue in the RISC-V linker that prevented undefined symbols from being resolved by the dynamic linker when using --unresolved-symbols=ignor…
proposer
Vivian Wang <wangruikang@iscas.ac.cn>
consensus
Proposed
outcome
proposed
sentiment_score
technical_tradeoffs
  • Reintroduces the output of undefined symbols as dynamic symbols, which may have been intentionally removed in a previous commit (9e10fcf71c11).
  • Fixes a regression that caused crashes or errors when linking with ``--unresolved-symbols=ignore-in-object-file``.
series_id
series_role
standalone
series_parts
[]
tags
  • RISC-V
  • linker
  • dynamic symbols
  • undefined symbols
  • bfd
bugzilla_url
date
2026-05-11T00:00:00.000Z

[PATCH] RISC-V: Also output undefined symbols as dynamic symbols

The patch addresses an issue in the RISC-V linker where undefined symbols were not being correctly output as dynamic symbols when the --unresolved-symbols=ignore-in-object-file option was used. This would lead to either a crash when linking with -no-pie or an error message when linking with -pie. The fix involves re-introducing the output of undefined symbols as dynamic symbols, which was removed by commit 9e10fcf71c11. This ensures that these symbols can be resolved by the dynamic linker at runtime.