HighCommander4 wrote: > The branch is **not** taken most of the time (it's only taken for calls to > functions with an explicit object argument, which is a C++23 feature), so > perhaps annotating the branch as "unlikely" is sufficient to avoid the > performance regression?
Ah, no, that's not sufficient because it takes some work (a call to `getCalleeDecl()`) to compute the branch condition. We could consider revising the implementation approach to optimize this better; for example, add a "uses explicit object argument" bit to `CallExprBits`? https://github.com/llvm/llvm-project/pull/117841 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits