[llvm] [SystemZ] Improve handling of memmoves. (PR #196285)

Ulrich Weigand via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 21 07:57:14 PDT 2026


================
@@ -593,11 +593,17 @@ def MemsetImmReg : MemsetPseudo<imm64, GR32>;
 def MemsetRegImm : MemsetPseudo<ADDR64, imm32zx8trunc>;
 def MemsetRegReg : MemsetPseudo<ADDR64, GR32>;
 
-// Move right.
+// Move right to left.
 let Predicates = [FeatureMiscellaneousExtensions3],
     mayLoad = 1, mayStore = 1, Uses = [R0L] in
   def MVCRL : SideEffectBinarySSE<"mvcrl", 0xE50A>;
 
+let usesCustomInserter = 1, hasNoSchedulingInfo = 1, mayLoad = 1, mayStore = 1,
+    Defs = [CC, R0L] in
----------------
uweigand wrote:

This should for clarity also require `FeatureMiscellaneousExtensions3`.

https://github.com/llvm/llvm-project/pull/196285


More information about the llvm-commits mailing list