Torch-mlir is using ExecutionEngine as the backend and I am hitting an abortion in the JIT code. I can find the assembly instruction causing the issue in gdb. Is there a way to relate the assembly instruction to the llvm IR passed to the ExecutionEngine?
Some option in ExecutionEngine(or maybe llvm codegen?) like the counterpart of -print-ir-after-all
in MLIR would be very helpful.
Have you tried running under gdb? There are hooks for the debugger IIRC.
yea, I am running under gdb. When dumping the instruction in gdb, I am seeing plain JIT assembly instructions without any symbols attached. What kind of hooks are you referring to?
Thanks for the pointers! The gdbListener is enabled by default.
I also needed to encode the location info into the LLVM dialect IR fed into ExecutionEngine by adding snapshot-op-locations{filename=xxxx}
to the pass pipeline generating the IR.
1 Like