[all-commits] [llvm/llvm-project] dd8cb3: [ELF] Support high address DW_EH_sdata4 for ELFCLA...

Fangrui Song via All-commits all-commits at lists.llvm.org
Mon May 20 00:13:32 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dd8cb3d4f120edcf5fc3939594ee086c44010274
      https://github.com/llvm/llvm-project/commit/dd8cb3d4f120edcf5fc3939594ee086c44010274
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-05-20 (Mon, 20 May 2024)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp
    M lld/test/ELF/mips-eh_frame-pic.s

  Log Message:
  -----------
  [ELF] Support high address DW_EH_sdata4 for ELFCLASS32

When the address pointer encoding in FDEs uses
DW_EH_PE_absptr|DW_EH_PE_sdata4, the address is sign-extended to 64-bit
by `readFdeAddr`. We should truncate the address to 32-bit for
ELFCLASS32. Otherwise, `isInt<32>(pc - va)` could be false, leading to a
spurious error in `getFdeData`.

In LLVM, this appears a MIPS-specific issue.
Fix #88852

Pull Request: https://github.com/llvm/llvm-project/pull/92438



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