jrtc27 added a comment. In D108479#3110003 <https://reviews.llvm.org/D108479#3110003>, @rjmccall wrote:
> `std::addressof(&someFunction)` certainly ought to return a signed pointer > under ptrauth, so if your goal here is to get a completely unadorned symbol > address, I think you do need a different builtin, and it probably ought to > return a `void*` to emphasize that it shouldn't be used as a normal value. > Maybe it should even be semantically restricted to require a constant decl > reference as its operand? Related and perhaps illuminating question: if it > were implementable, would you also want to force the suppression of > lazy-binding thunks and/or decorations like the THUMB bit? Similarly, should it point to the descriptor or the entry point for ABIs with function descriptors? Personally I think trying to generalise this builtin just opens a huge can of worms when you look at other architectures and ABIs (and what it does can have implications for CHERI/Morello where we have various weird experimental ABIs), so you may just be best off having the original specialised builtin with very clear semantics. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D108479/new/ https://reviews.llvm.org/D108479 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits