[llvm] [SystemZ] Don't lower float/double ATOMIC_[LOAD|STORE] to [LOAD|STORE] (PR #75879)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 29 02:35:03 PST 2024
================
@@ -5035,12 +5035,12 @@ defm : TrapExtendedMnemonic<"lng", 6>;
defm : TrapExtendedMnemonic<"u", 31>;
// Atomic loads
-def : Pat<(atomic_load_8 DForm:$src), (LBZ memri:$src)>;
-def : Pat<(atomic_load_16 DForm:$src), (LHZ memri:$src)>;
-def : Pat<(atomic_load_32 DForm:$src), (LWZ memri:$src)>;
-def : Pat<(atomic_load_8 XForm:$src), (LBZX memrr:$src)>;
-def : Pat<(atomic_load_16 XForm:$src), (LHZX memrr:$src)>;
-def : Pat<(atomic_load_32 XForm:$src), (LWZX memrr:$src)>;
+def : Pat<(iAny (atomic_load_8 DForm:$src)), (LBZ memri:$src)>;
+def : Pat<(iAny (atomic_load_16 DForm:$src)), (LHZ memri:$src)>;
+def : Pat<(iAny (atomic_load_32 DForm:$src)), (LWZ memri:$src)>;
+def : Pat<(iAny (atomic_load_8 XForm:$src)), (LBZX memrr:$src)>;
+def : Pat<(iAny (atomic_load_16 XForm:$src)), (LHZX memrr:$src)>;
+def : Pat<(iAny (atomic_load_32 XForm:$src)), (LWZX memrr:$src)>;
----------------
arsenm wrote:
I would assume these should all be i32?
https://github.com/llvm/llvm-project/pull/75879
More information about the llvm-commits
mailing list