[llvm-dev] RFC: libtrace
Adrian Prantl via llvm-dev
llvm-dev at lists.llvm.org
Tue Jun 26 13:49:25 PDT 2018
> On Jun 26, 2018, at 1:38 PM, Zachary Turner <zturner at google.com> wrote:
>
>> On Tue, Jun 26, 2018 at 1:28 PM Adrian Prantl <aprantl at apple.com> wrote:
>>
>>> > On Jun 26, 2018, at 11:58 AM, Zachary Turner via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>>> > A good example of this would be LLDB’s DWARF parsing code, which is more featureful than LLVM’s but has kind of evolved in parallel. Sinking this into LLVM would be one early target of such an effort, although over time there would likely be more.
>>>
>>> As you are undoubtedly aware we've been carefully rearchitecting LLVM's DWARF parser over the last few years to eventually become featureful enough so that LLDB could use it, so any help on that front would be most welcome. As long as we are careful to not regress in performance/lazyness, features and fault-tolerance, deduplicating the implementations can only be good for LLVM and LLDB.
>>>
>> Yea, this is the general idea. Has anyone actively been working on this specific effort recently? To my knowledge someone started and then never finished, but the efforts also never made it upstream, so my understanding is that it's a goal, but one that nobody has made significant headway on.
>
That's not true. Greg Clayton started the effort in 2016 and landed many of the ground-breaking changes. The design ideas fleshed out during that initial effort (thanks to David Blaikie who spent a lot of time reviewing the new interfaces!) such as improved error handling where then picked up the entire team of contributors who worked on DWARF 5 support in LLVM and we've continued down that path ever since. The greatly improved llvm-dwarfdump was also born out of this effort, for example. We also payed attention that every refactoring of LLDB DWARF parser code would bring it closer to the new LLVM parser interface to narrow the gaps between the implementations.
-- adrian
More information about the llvm-dev
mailing list