[PATCH] D18738: Add new !unconditionally_dereferenceable load instruction metadata

Piotr Padlewski via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu May 11 10:41:51 PDT 2017


Prazek added a comment.

In https://reviews.llvm.org/D18738#752215, @whitequark wrote:

> @sanjoy Since https://reviews.llvm.org/D20116 is in, is there any reason to avoid having a `!speculatable` on load instructions? It can be emulated anyway by defining a class of `@load.x` functions marked speculatable and their return value dereferenceable, so there is no loss of soundness.


Isn't returning the pointer as dereferenceable, that is not actually dereferenceable considered immediate UB? If that is the case then unfortunatelly we it is not that simple, because the speculable function can't have UB.


Repository:
  rL LLVM

https://reviews.llvm.org/D18738





More information about the llvm-commits mailing list