[PATCH] D20116: Add speculatable function attribute

Mehdi AMINI via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 21 16:38:41 PDT 2017


mehdi_amini added a comment.

In https://reviews.llvm.org/D20116#707083, @sanjoy wrote:

> In https://reviews.llvm.org/D20116#706969, @arsenm wrote:
>
> > In https://reviews.llvm.org/D20116#706967, @sanjoy wrote:
> >
> > >
> >
>
>
> `readnone` etc. are different from `speculatable`, in that once you mark a call site as `speculatable` you've the said call site as speculatable throughout the lifetime of the program (since, by definition, it can be arbitrarily speculated).  `readnone`, `readonly` etc. do not have that property.


I don't follow why `readnone` and `readonly` based transformations don't need the same guarantee?


https://reviews.llvm.org/D20116





More information about the llvm-commits mailing list