forked from OSchip/llvm-project
Wordsmith the semantics of invariant.load
Don't phrase the semantics in terms of the optimizer. Instead have a more straightforward execution based semantic. Reviewed By: ebrevnov Differential Revision: https://reviews.llvm.org/D63439
This commit is contained in:
parent
39ea3ceda3
commit
b9e9e2eef1
|
@ -9639,10 +9639,10 @@ as the ``MOVNT`` instruction on x86.
|
|||
The optional ``!invariant.load`` metadata must reference a single
|
||||
metadata name ``<empty_node>`` corresponding to a metadata node with no
|
||||
entries. If a load instruction tagged with the ``!invariant.load``
|
||||
metadata is executed, the optimizer may assume the memory location
|
||||
referenced by the load contains the same value at all points in the
|
||||
program where the memory location is known to be dereferenceable;
|
||||
otherwise, the behavior is undefined.
|
||||
metadata is executed, the memory location referenced by the load has
|
||||
to contain the same value at all points in the program where the
|
||||
memory location is dereferenceable; otherwise, the behavior is
|
||||
undefined.
|
||||
|
||||
The optional ``!invariant.group`` metadata must reference a single metadata name
|
||||
``<empty_node>`` corresponding to a metadata node with no entries.
|
||||
|
|
Loading…
Reference in New Issue