[llvm] [AArch64] Add support for 16/32/64-bit floating-point atomic read-modify-write ops (PR #125686)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Feb 4 07:03:20 PST 2025
github-actions[bot] wrote:
<!--LLVM CODE FORMAT COMMENT: {darker}-->
:warning: Python code formatter, darker found issues in your code. :warning:
<details>
<summary>
You can test this locally with the following command:
</summary>
``````````bash
darker --check --diff -r dcb7a695004c49aaef02c3171343864870009961...80e63d28eae082381e2991a958a2626a09b8189e llvm/test/CodeGen/AArch64/Atomics/generate-tests.py
``````````
</details>
<details>
<summary>
View the diff from darker here.
</summary>
``````````diff
--- generate-tests.py 2025-02-04 14:56:06.000000 +0000
+++ generate-tests.py 2025-02-04 15:02:42.129908 +0000
@@ -163,10 +163,11 @@
"fadd",
"fsub",
"fmax",
"fmin",
]
+
def all_atomicrmw(f, datatype, atomicrmw_ops):
for op in atomicrmw_ops:
for aligned in Aligned:
for ty in datatype:
@@ -307,18 +308,18 @@
for feat in Feature:
with open(f"{triple}-atomicrmw-{feat.name}.ll", "w") as f:
filter_args = r'--filter-out "\b(sp)\b" --filter "^\s*(ld[^r]|st[^r]|swp|cas|bl|add|and|eor|orn|orr|sub|mvn|sxt|cmp|ccmp|csel|dmb)"'
header(f, triple, [feat], filter_args)
- if (feat != Feature.lsfe):
- all_atomicrmw(f, Type, ATOMICRMW_OPS)
+ if feat != Feature.lsfe:
+ all_atomicrmw(f, Type, ATOMICRMW_OPS)
else:
- all_atomicrmw(f, FPType, FP_ATOMICRMW_OPS)
+ all_atomicrmw(f, FPType, FP_ATOMICRMW_OPS)
# Floating point atomics only supported for atomicrmw currently
- if (feat == Feature.lsfe):
- continue;
+ if feat == Feature.lsfe:
+ continue
with open(f"{triple}-cmpxchg-{feat.name}.ll", "w") as f:
filter_args = r'--filter-out "\b(sp)\b" --filter "^\s*(ld[^r]|st[^r]|swp|cas|bl|add|and|eor|orn|orr|sub|mvn|sxt|cmp|ccmp|csel|dmb)"'
header(f, triple, [feat], filter_args)
all_cmpxchg(f)
``````````
</details>
https://github.com/llvm/llvm-project/pull/125686
More information about the llvm-commits
mailing list