[PATCH] D97339: [lli] Add JITLink in-process debugging support

Lang Hames via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 24 00:36:06 PST 2021


lhames accepted this revision.
lhames added a comment.
This revision is now accepted and ready to land.

> This patch adds a --dyld flag

Could this be changed to `-jit-linker`? It's verbose, but I think `-dyld` is too likely to cause confusion, especially when we already have `-dlopen` (which really does call the native dynamic linker). I'm open to shorter names too, it's `-dyld` that I really want to avoid.

In D97339#2583283 <https://reviews.llvm.org/D97339#2583283>, @sgraenitz wrote:

> The major issue I faced with this patch is the clash of the GDB JIT interface symbols `__jit_debug_register_code` and `__jit_debug_descriptor`. These are defined in both libraries, ExecutionEngine and OrcTargetProcess, and I didn't find a "nice" way to deduplicate them. My current approach turns the definitions in ExecutionEngine into externals and adds OrcTargetProcess as link component to ExecutionEngine. Maybe there is another way to fix this?

We could create an entirely new library for this, but that feels like overkill. I think OrcTargetProcess seems reasonable. I think that the new dependence diagram would look like:

  ORC -> { JITLink, OrcShared }
  OrcTargetProcess -> { OrcShared }
  ExecutionEngine -> { RuntimeDyld, OrcTargetProcess }


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D97339



More information about the llvm-commits mailing list