[PATCH] D111160: [UnknownProvenance] Add LLVM-IR support for unknown_provenance

Jeroen Dobbelaere via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 5 04:43:22 PDT 2021


jeroen.dobbelaere added a comment.

In D111160#3107697 <https://reviews.llvm.org/D111160#3107697>, @xbolva00 wrote:

> Where is RFC or some high level document?

The general Full Restrict RFC is referenced to in D68484 <https://reviews.llvm.org/D68484>  (Pointed to by D104268 <https://reviews.llvm.org/D104268>, which introduces the `ptr_provenance` operand and provides the langref update).

The `unknown_provenance` (`UnknownProvenance`) constant is being introduced as a clean way to indicate that a `ptr_provenance` is unknown.
In the original full restrict proposal, this role was served by using `undef` (`UndefValue`) as ptr_provenance operand.
For full restrict that was ok, but when we want to use ptr_provenance in a broader context having a special value results in a cleaner implementation without ambiguity.
(Especially if, at a later time, we want to make use of ptr_provenance in BasicAliasAnalysis, not just ScopedNoAliasAA).


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111160/new/

https://reviews.llvm.org/D111160



More information about the llvm-commits mailing list