[PATCH] D53051: [llvm-tapi] initial commit, supports reading ELF

Steven Wu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 9 17:27:24 PDT 2018


steven_wu added a comment.

Thanks for posting this. I will start with some high level comments.

I see you adopt the idea of a registry from Apple's tapi but your implementation of the different file format is actually really specific. Adding macho support will likely end up being a parallel code path inside the registry which doesn't share any code.
Apple's tapi implementation has been changed/improved quite a bit from the version on GitHub and we are working on updating it. There are some fundamental design in Apple's tapi which I really wish we can share but I am not sure it can provide any benefits to ELF if all you care about is stubbing. We have a common intermediate representation that is an abstraction for all the interfaces from a framework (similar to XPISet from the current GitHub version). The intermediate representation can be built from headers, binaries or stubs and it can be serialized, compared or modified. We use this data structure to correlated the interfaces from headers and binaries, and it can be used to do more. Are you interested to build ELF on top of some common abstraction or you just want to stick to the minimal stubbing version?


Repository:
  rL LLVM

https://reviews.llvm.org/D53051





More information about the llvm-commits mailing list