[llvm] [RISCV] Reverse the operands in ins for Zalasr store instructions. (PR #161882)

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 3 10:12:18 PDT 2025


https://github.com/topperc created https://github.com/llvm/llvm-project/pull/161882

Match the assembly printing order rather than sorting by operand name.

Tnis is consistent with normal store instructions.

>From 111cf7366ae09f5c3f5b2c5df57717764d910bc0 Mon Sep 17 00:00:00 2001
From: Craig Topper <craig.topper at sifive.com>
Date: Fri, 3 Oct 2025 10:10:18 -0700
Subject: [PATCH] [RISCV] Reverse the operands in ins for Zalasr store
 instructions.

Match the assembly printing order rather than sorting by operand
name.

Tnis is consistent with normal store instructions.
---
 llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td b/llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
index 1674c957b6579..1dd733208e3f2 100644
--- a/llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
+++ b/llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
@@ -26,7 +26,7 @@ class LAQ_r<bit aq, bit rl, bits<3> funct3, string opcodestr>
 let hasSideEffects = 0, mayLoad = 0, mayStore = 1 in
 class SRL_r<bit aq, bit rl, bits<3> funct3, string opcodestr>
     : RVInstRAtomic<0b00111, aq, rl, funct3, OPC_AMO,
-                    (outs ), (ins GPRMemZeroOffset:$rs1, GPR:$rs2),
+                    (outs), (ins GPR:$rs2, GPRMemZeroOffset:$rs1),
                     opcodestr, "$rs2, $rs1"> {
   let rd = 0;
 }
@@ -71,7 +71,7 @@ class PatLAQ<SDPatternOperator OpNode, RVInst Inst, ValueType vt = XLenVT>
 //  while atomic_store has data, addr
 class PatSRL<SDPatternOperator OpNode, RVInst Inst, ValueType vt = XLenVT>
     : Pat<(OpNode (vt GPR:$rs2), (XLenVT GPRMemZeroOffset:$rs1)),
-          (Inst GPRMemZeroOffset:$rs1, GPR:$rs2)>;
+          (Inst GPR:$rs2, GPRMemZeroOffset:$rs1)>;
 
 
 let Predicates = [HasStdExtZalasr] in {



More information about the llvm-commits mailing list