[PATCH] D112349: [Verifier] Add verification logic for GlobalIFuncs

Itay Bookstein via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Feb 19 07:47:59 PST 2022


ibookstein added a comment.

I now realize that the type check isn't correct for the platforms which pass arguments to the resolver. Unfortunate that the glibc wiki doesn't mention this (as far as I can tell)...
I thought that the bitcast-to-"expected"-type should shield from that error, but maybe something drops the bitcast along the way. That reminded me of https://github.com/llvm/llvm-project/blob/f6ee45e94391ef8cee67e2a4ad6d61c614985de9/llvm/lib/Transforms/IPO/LowerTypeTests.cpp#L388-L391.
In addition, it sounds to me that the resolver type check will be made redundant by the opaque pointer work, so maybe it makes sense to remove it altogether now? I'm not in the details enough with respect to the migration plan to know.
Also, I recall there are some outstanding issues with respect to thinlto+ifunc: https://reviews.llvm.org/D82745 which may be of interest to your use-case as well.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D112349/new/

https://reviews.llvm.org/D112349



More information about the llvm-commits mailing list