[PATCH] D33235: Mark invariant.group as experimental
Piotr Padlewski via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Apr 8 06:57:05 PDT 2018
This revision was automatically updated to reflect the committed changes.
Closed by commit rL329531: Mark invariant.group as experimental (authored by Prazek, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D33235?vs=99666&id=141540#toc
Repository:
rL LLVM
https://reviews.llvm.org/D33235
Files:
llvm/trunk/docs/LangRef.rst
llvm/trunk/include/llvm/IR/Intrinsics.td
Index: llvm/trunk/docs/LangRef.rst
===================================================================
--- llvm/trunk/docs/LangRef.rst
+++ llvm/trunk/docs/LangRef.rst
@@ -5313,7 +5313,8 @@
'``invariant.group``' Metadata
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-The ``invariant.group`` metadata may be attached to ``load``/``store`` instructions.
+The experimental ``invariant.group`` metadata may be attached to
+``load``/``store`` instructions.
The existence of the ``invariant.group`` metadata on the instruction tells
the optimizer that every ``load`` and ``store`` to the same pointer operand
within the same invariant group can be assumed to load or store the same
@@ -5363,6 +5364,8 @@
; if %x mustalias %y then we can replace the above instruction with
%v = load i8, i8* %y
+Note that this is an experimental feature, which means that its semantics might
+change in the future.
'``type``' Metadata
^^^^^^^^^^^^^^^^^^^
@@ -12923,7 +12926,8 @@
The '``llvm.invariant.group.barrier``' intrinsic can be used when an invariant
established by invariant.group metadata no longer holds, to obtain a new pointer
-value that does not carry the invariant information.
+value that does not carry the invariant information. It is an experimental
+intrinsic, which means that its semantics might change in the future.
Arguments:
Index: llvm/trunk/include/llvm/IR/Intrinsics.td
===================================================================
--- llvm/trunk/include/llvm/IR/Intrinsics.td
+++ llvm/trunk/include/llvm/IR/Intrinsics.td
@@ -717,6 +717,8 @@
// which is valid.
// The argument also can't be marked with 'returned' attribute, because
// it would remove barrier.
+// Note that it is still experimental, which means that its semantics
+// might change in the future.
def int_invariant_group_barrier : Intrinsic<[llvm_anyptr_ty],
[LLVMMatchType<0>],
[IntrReadMem, IntrArgMemOnly]>;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D33235.141540.patch
Type: text/x-patch
Size: 1997 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180408/0aa08e6b/attachment.bin>
More information about the llvm-commits
mailing list