Skip to content

[AMDGPU] Drop docs for invalid load-release and store-acquire operations#202338

Open
ritter-x2a wants to merge 1 commit into
mainfrom
users/ritter-x2a/06-08-_amdgpu_drop_docs_for_invalid_load-release_and_store-acquire_operations
Open

[AMDGPU] Drop docs for invalid load-release and store-acquire operations#202338
ritter-x2a wants to merge 1 commit into
mainfrom
users/ritter-x2a/06-08-_amdgpu_drop_docs_for_invalid_load-release_and_store-acquire_operations

Conversation

@ritter-x2a
Copy link
Copy Markdown
Member

The LangRef says "release and acq_rel orderings are not valid on load
instructions" for loads
and "acquire and acq_rel orderings aren't valid on store instructions"
for stores.
Providing them in textual IR is diagnosed with an error.

Therefore, we should not define semantics for these invalid constructs.

Part of LCOMPILER-2273.

The LangRef says "release and acq_rel orderings are not valid on load
instructions" [for loads](https://llvm.org/docs/LangRef.html#load-instruction)
and "acquire and acq_rel orderings aren't valid on store instructions"
[for stores](https://llvm.org/docs/LangRef.html#store-instruction).
Providing them in textual IR is diagnosed with an error.

Therefore, we should not define semantics for these invalid constructs.

Part of LCOMPILER-2273.
Copy link
Copy Markdown
Member Author


How to use the Graphite Merge Queue

Add the label FP Bundles to this PR to add it to the merge queue.

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

@llvmorg-github-actions
Copy link
Copy Markdown

@llvm/pr-subscribers-backend-amdgpu

Author: Fabian Ritter (ritter-x2a)

Changes

The LangRef says "release and acq_rel orderings are not valid on load
instructions" for loads
and "acquire and acq_rel orderings aren't valid on store instructions"
for stores.
Providing them in textual IR is diagnosed with an error.

Therefore, we should not define semantics for these invalid constructs.

Part of LCOMPILER-2273.


Full diff: https://github.com/llvm/llvm-project/pull/202338.diff

1 Files Affected:

  • (modified) llvm/docs/AMDGPUUsage.rst (-9)
diff --git a/llvm/docs/AMDGPUUsage.rst b/llvm/docs/AMDGPUUsage.rst
index 121b66a657f5d..ed4c759fd24f8 100644
--- a/llvm/docs/AMDGPUUsage.rst
+++ b/llvm/docs/AMDGPUUsage.rst
@@ -7214,15 +7214,6 @@ orderings (``acquire``, ``release``, ``acq_rel``, or ``seq_cst``).
 The memory model does not support the region address space which is treated as
 non-atomic.
 
-Acquire memory ordering is not meaningful on store atomic instructions and is
-treated as non-atomic.
-
-Release memory ordering is not meaningful on load atomic instructions and is
-treated as non-atomic.
-
-Acquire-release memory ordering is not meaningful on load or store atomic
-instructions and is treated as acquire and release respectively.
-
 The memory order also adds the single thread optimization constraints defined in
 table
 :ref:`amdgpu-amdhsa-memory-model-single-thread-optimization-constraints-table`.

@ritter-x2a ritter-x2a marked this pull request as ready for review June 8, 2026 13:48
Copy link
Copy Markdown
Contributor

@nhaehnle nhaehnle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants