[llvm] riscv: Added Zvinsert instructions (PR #92262)

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Wed May 15 13:14:19 PDT 2024


================
@@ -0,0 +1,130 @@
+//===- RISCVInstrInfoZvinsert.td - RISC-V 'Zvinsert' instructions ---------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+//
+// This file describes the RISC-V V instructions from the standard 'Zvinsert',
+// Vector Extension for Moves between Scalars and Vector Elements, version 0.94.
+//
+//===----------------------------------------------------------------------===//
+
+class RVStdExtZvinsertInst<
+  dag outs, dag ins, string opcodestr, string argstr> :
+  RVInst<outs, ins, opcodestr, argstr, [], InstFormatR> {
+  let mayLoad = 0;
+  let mayStore = 0;
+  let hasSideEffects = 0;
+  let DecoderNamespace = "RVZvinsert";
----------------
topperc wrote:

You don't need an DecoderNamespace for most standard extensions. We only need it for vendor extensions or where there are known conflicts with another standard extension. A non-default decoder namespace separates the instruction into its own disassembler table and disables encoding conflict checks.

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


More information about the llvm-commits mailing list