[Lldb-commits] [PATCH] D41702: Add SysV Abi for PPC64le
Justin Hibbits via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Sun Jan 14 12:46:10 PST 2018
chmeee added a comment.
In https://reviews.llvm.org/D41702#972009, @labath wrote:
> In https://reviews.llvm.org/D41702#971076, @jhibbits wrote:
> > > @emaste, @jhibbits: do you know what's the state of ppc64 lldb support in freebsd?
> > It's broken because LLDB doesn't yet handle function descriptors, and I haven't yet made the effort (ENOTIME) to fix that. I think our eventual goal is to move even BE to ELFv2 on FreeBSD, to do away with function descriptors, and it should then Just Work, as powerpc (32-bit) works fine for most cases right now.
> > That said, if anyone knows enough to add function descriptor knowledge to LLDB, I think that's the only missing piece, or the biggest missing piece. I do want to finish the effort, since I started it 3.5 years ago, but I do need help with understanding that ABI detail and how it fits with LLDB.
> Thanks for the explanation. How badly is it broken would you say? Do you think that using this ABI plugin for the big endian target (instead of the one from 2014) would make things any worse? Could you take a quick look to see if there is anything in this plugin that would be completely wrong for the big endian target ? (I couldn't find anything, apart from the obvious things like register constants in `CreateDefaultUnwindPlan`, but then again, I don't know the ABIs).
> I'm trying to avoid making bad design decisions now because of legacy code that is known to be broken and has no clear maintainer nor a plan to fix it.
I don't see anything glaring. I also cross-referenced with the 64-bit BE ABI reference (http://refspecs.linuxfoundation.org/ELF/ppc64/PPC-elf64abi.html) and didn't see anything obvious that would hinder using your plugin as a replacement to mine (as mentioned before, symbol handling is the big problem right now, and that's not handled within the ABI plugin), if yours is fully tested.
More information about the lldb-commits