================
@@ -1143,6 +1144,23 @@ supported for the ``amdgcn`` target.
   a buffer strided pointer, this means that the base pointer is ``align(4)``, 
that
   the offset is a multiple of 4 bytes, and that the stride is a multiple of 4.
 
+**Barrier**
+  This address space represents barrier IDs (introduced in GFX12) as addresses.
+  It does not map directly to any addressable memory, thus pointers into this 
address space:
+
+  * Never alias with any other pointers outside this address space.
+  * Cannot be dereferenced.
+  * Can only be consumed by intrinsics.
+  * Are always uniform.
+
+  Pointer are 32 bits and directly correspond to valid barrier IDs. All 
barrier pointers must,
+  when interpreted as signed 32 bit integers, have a value corresponding to a 
valid barrier ID
+  on the target. Otherwise, the behavior is undefined.
----------------
nhaehnle wrote:

Maybe note here that using a null pointer is actually well-defined in many 
cases? It is potentially useful if somebody wanted to signal a barrier 
conditionally.

https://github.com/llvm/llvm-project/pull/195613
_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to