跳转至

ev-mold-span-relocations-002

字段 值
项目 rui314/mold
固定 commit 27162691b71a
路径 src/arch-x86-64.cc
行段 L367-L374
特性 std::span
许可证 MIT
代码来源 项目源码
级别 manual
审核 zyuhao7 @ 2026-10-24
测试代码 否
发现方式 tree-sitter

用法

把重定位表表示为 span<const ElfRel>

为什么典型

只读连续序列用 span 表达,长度与地址绑定,调用方无需再传 size。

摘录

template <>
void InputSection<E>::apply_reloc_alloc(Context<E> &ctx, u8 *base) {
  std::span<const ElfRel<E>> rels = get_rels(ctx);

  for (i64 i = 0; i < rels.size(); i++) {
    const ElfRel<E> &rel = rels[i];
    if (rel.r_type == R_NONE)
      continue;

备注

生产路径;只读元素类型通过 span 表达。

查看固定 commit 源码 · 返回证据索引