[llvm-dev] Indirect Call Promotion and llvm.expect

Johan Engelen via llvm-dev llvm-dev at lists.llvm.org
Fri Oct 14 03:06:13 PDT 2016


Hi all,
  Are there any plans for adding an llvm.expect overload that works on
pointers?
It could then be used to pass information that can be used for Indirect
Call Promotion (without profiling).

Something like:
```
  %6 = load void ()*, ...
  %7 = call llvm.expect(%6, @hot_function)
  call void %7()
```
which can then be transformed into
```
  %6 = load void ()*, ...
  call void %6() !prof !1
```
where `!prof !1` refers to appropriate value profiling information. And
from there, the ICP pass takes over.

Thanks for your comments,
cheers,
  Johan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161014/0392acdc/attachment-0001.html>


More information about the llvm-dev mailing list