[all-commits] [llvm/llvm-project] 094d63: [RelocationResolver] Support R_PPC_REL32 & R_PPC64...

Fangrui Song via All-commits all-commits at lists.llvm.org
Sat Jul 18 15:22:55 PDT 2020


  Branch: refs/heads/release/11.x
  Home:   https://github.com/llvm/llvm-project
  Commit: 094d6386ec0478076218303a756edda8a63d7c55
      https://github.com/llvm/llvm-project/commit/094d6386ec0478076218303a756edda8a63d7c55
  Author: Fangrui Song <i at maskray.me>
  Date:   2020-07-18 (Sat, 18 Jul 2020)

  Changed paths:
    M llvm/lib/Object/RelocationResolver.cpp
    A llvm/test/DebugInfo/PowerPC/eh-frame.ll

  Log Message:
  -----------
  [RelocationResolver] Support R_PPC_REL32 & R_PPC64_REL{32,64}

This suppresses `failed to compute relocation: R_PPC_REL32, Invalid data was encountered while parsing the file`
and its 64-bit variants when running llvm-dwarfdump on a PowerPC object file with .eh_frame

Unfortunately it is difficult to test the computation:
DWARFDataExtractor::getEncodedPointer does not use the relocated value
and even if it does, we need to teach llvm-dwarfdump --eh-frame to do
some linker job to report a reasonable address.

(cherry picked from commit b922004ea29d54534c4f09b9cfa655bf5f3360f0)


  Commit: a1f2fd11bde3efe2dd145163be1a7df15d0800d1
      https://github.com/llvm/llvm-project/commit/a1f2fd11bde3efe2dd145163be1a7df15d0800d1
  Author: Fangrui Song <i at maskray.me>
  Date:   2020-07-18 (Sat, 18 Jul 2020)

  Changed paths:
    M llvm/lib/Object/RelocationResolver.cpp
    A llvm/test/DebugInfo/AArch64/eh-frame.ll

  Log Message:
  -----------
  [RelocationResolver] Support R_AARCH64_PREL32

Code from D83800 by Yichao Yu

(cherry picked from commit 3073a3aa1ef1ce8c9cac9b97a8e5905dd8779e16)


Compare: https://github.com/llvm/llvm-project/compare/8a438096ffa4...a1f2fd11bde3


More information about the All-commits mailing list