[PATCH] D155925: [JITLink][PowerPC][WIP] Change method to check if a symbol is external to current object

Kai Luo via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 21 01:59:29 PDT 2023


lkail created this revision.
Herald added subscribers: steven.zhang, shchenz, kbarton, hiraditya, nemanjai.
Herald added a project: All.
lkail requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

When multiple relocatable object files are handled by jitlink, symbols in object files handled firstly are no longer `Symbol.isExternal()` or `!Symbol.isDefined()` for object files handled later. This largely affects TOC transition on PowerPC. TOC pointer is supposed to be same in one object file(if no mulitple TOC appears) and get updated when control flow transferred to another object file.

This patch fixes case when `jitlink -orc-runtime=/path/to/libort_rt.a` is used.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D155925

Files:
  llvm/include/llvm/ExecutionEngine/JITLink/ppc64.h
  llvm/lib/ExecutionEngine/JITLink/ELF_ppc64.cpp
  llvm/lib/ExecutionEngine/JITLink/ppc64.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D155925.542801.patch
Type: text/x-patch
Size: 5881 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230721/21ce1fcb/attachment.bin>


More information about the llvm-commits mailing list