[PATCH] D133452: [ORC] Fix auto-claim of weak defs in ObjectLinkingLayer

Jonas Hahnfeld via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Oct 23 12:20:45 PDT 2022


Hahnfeld added a comment.

AHA, I finally see what's going on by comparing the debug output from `JITLinkGeneric.cpp` between x86_64 and riscv64: On riscv64, `DW.ref.__gxx_personality_v0` is dead-stripped because it's referenced from `.eh_frame`, which is equally removed. On x86, you can get the same effect by commenting out the three `PrePrunePasses` related to EH frame handling in `link_ELF_x86_64`, and then I get the same error

  JIT session error: Missing definitions in module catch.ll-jitted-objectbuffer: [ DW.ref.__gxx_personality_v0 ]
  ./bin/lli: Failed to materialize symbols: { (main, { DW.ref.__gxx_personality_v0, __clang_call_terminate, main }) }

I guess we're forgetting to remove some references to the dead-stripped symbols, somewhere?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D133452/new/

https://reviews.llvm.org/D133452



More information about the llvm-commits mailing list