[PATCH] D66360: Expose constructing a virtual method dispatch through the include/clang/CodeGen APIs.

Parker Schuh via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 16 12:59:15 PDT 2019

pschuh created this revision.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.

In swift, we want to be able to call c++ virtual methods by looking up in the virtual table. There appears to exist no way currently, via the standard APIs, to take a CXXMethodDecl and a llvm::Value representing a this-ptr and construct the llvm instructions necessary to extract the method from the virtual table as well as adjust the this-ptr.

For reference, this is used in https://github.com/apple/swift/pull/26658.

  rC Clang



-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66360.215655.patch
Type: text/x-patch
Size: 4938 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190816/cf6bbe46/attachment.bin>

More information about the cfe-commits mailing list