[all-commits] [llvm/llvm-project] 69d007: MC: Generate relocation for a branch crossing link...

Fangrui Song via All-commits all-commits at lists.llvm.org
Sat Jul 26 21:20:11 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 69d0078f16c0b4a11f171c4eb16a2ee9284f5f24
      https://github.com/llvm/llvm-project/commit/69d0078f16c0b4a11f171c4eb16a2ee9284f5f24
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-07-26 (Sat, 26 Jul 2025)

  Changed paths:
    M llvm/lib/MC/MCExpr.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/test/MC/RISCV/Relocations/mc-dump.s
    M llvm/test/MC/RISCV/align.s

  Log Message:
  -----------
  MC: Generate relocation for a branch crossing linker-relaxable FT_Align fragment

"Encode FT_Align in fragment's variable-size tail" or a neighbor change
caused a regression that was similar to the root cause of
ab0931b6389838cb5d7d11914063a1ddd84102f0
(See the new test (.text3 with a call at the start"))

For a FT_Align fragment, the offset between location A (with offset <=
FixedSize) and B (offset == FixedSize+VarSize) cannot be resolved.

In addition, delete unneeded condition `F->isLinkerRelaxable()`.

LoongArch linker relaxation is largely under-tested, but update it as well.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list