[llvm] ed19ef7 - [NVPTX][docs] Add isspacep.* to usage doc (#114839)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 4 12:11:35 PST 2024
Author: Alex MacLean
Date: 2024-11-04T12:11:32-08:00
New Revision: ed19ef740bbef206fc8193f7ef29a8e9931d82d8
URL: https://github.com/llvm/llvm-project/commit/ed19ef740bbef206fc8193f7ef29a8e9931d82d8
DIFF: https://github.com/llvm/llvm-project/commit/ed19ef740bbef206fc8193f7ef29a8e9931d82d8.diff
LOG: [NVPTX][docs] Add isspacep.* to usage doc (#114839)
Added:
Modified:
llvm/docs/NVPTXUsage.rst
Removed:
################################################################################
diff --git a/llvm/docs/NVPTXUsage.rst b/llvm/docs/NVPTXUsage.rst
index f225b9e8bd268b..eed68155c73193 100644
--- a/llvm/docs/NVPTXUsage.rst
+++ b/llvm/docs/NVPTXUsage.rst
@@ -250,6 +250,36 @@ The ``@llvm.nvvm.fence.proxy.tensormap_generic.*`` is a uni-directional fence us
The address operand ``addr`` and the operand ``size`` together specify the memory range ``[addr, addr+size)`` on which the ordering guarantees on the memory accesses across the proxies is to be provided. The only supported value for the ``size`` operand is ``128`` and must be an immediate. Generic Addressing is used unconditionally, and the address specified by the operand addr must fall within the ``.global`` state space. Otherwise, the behavior is undefined. For more information, see `PTX ISA <https://docs.nvidia.com/cuda/parallel-thread-execution/#parallel-synchronization-and-communication-instructions-membar>`_.
+Address Space Intrinsics
+------------------------
+
+'``llvm.nvvm.isspacep.*``' Intrinsics
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Syntax:
+"""""""
+
+.. code-block:: llvm
+
+ declare i1 @llvm.nvvm.isspacep.const(ptr %p)
+ declare i1 @llvm.nvvm.isspacep.global(ptr %p)
+ declare i1 @llvm.nvvm.isspacep.local(ptr %p)
+ declare i1 @llvm.nvvm.isspacep.shared(ptr %p)
+ declare i1 @llvm.nvvm.isspacep.shared.cluster(ptr %p)
+
+Overview:
+"""""""""
+
+The '``llvm.nvvm.isspacep.*``' intrinsics determine whether the provided generic
+pointer references memory which falls within a particular address space.
+
+Semantics:
+""""""""""
+
+If the given pointer in the generic address space refers to memory which falls
+within the state space of the intrinsic (and therefore could be safely address
+space casted to this space), 1 is returned, otherwise 0 is returned.
+
Arithmetic Intrinsics
---------------------
More information about the llvm-commits
mailing list