[clang] [llvm] [RISCV] Add Qualcomm uC Xqcisls (Scaled Load Store) extension (PR #117987)
Sudharsan Veeravalli via cfe-commits
cfe-commits at lists.llvm.org
Thu Nov 28 06:23:25 PST 2024
================
@@ -22,6 +22,28 @@
// Instruction Class Templates
//===----------------------------------------------------------------------===//
+let hasSideEffects = 0, mayLoad = 1, mayStore = 0 in {
+class QCILoad_ScaleIdx<bits<4> func4, string opcodestr>
+ : RVInstRBase<0b111, OPC_CUSTOM_0,
+ (outs GPR:$rd), (ins GPRMem:$rs1, GPRNoX0:$rs2, uimm3:$shamt),
+ opcodestr, "$rd, $rs1, $rs2, $shamt"> {
+ bits<3> shamt;
+ let Inst{31-28} = func4;
+ let Inst{27-25} = shamt;
+}
+}
+
+let hasSideEffects = 0, mayLoad = 0, mayStore = 1 in {
+class QCIStore_ScaleIdx<bits<4> func4, string opcodestr>
+ : RVInstRBase<0b110, OPC_CUSTOM_1, (outs),
+ (ins GPR:$rd, GPRMem:$rs1, GPRNoX0:$rs2, uimm3:$shamt),
+ opcodestr, "$rd, $rs1, $rs2, $shamt"> {
----------------
svs-quic wrote:
Added the comment.
https://github.com/llvm/llvm-project/pull/117987
More information about the cfe-commits
mailing list