================
@@ -0,0 +1,36 @@
+//=== SparcInstrUAOSA.td - UltraSPARC/Oracle SPARC Architecture extensions 
===//
+//
+// 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 contains instruction formats, definitions and patterns needed for
+// UA 2005 instructions on SPARC.
+//===----------------------------------------------------------------------===//
+
+// UltraSPARC Architecture 2005 Instructions
+let Predicates = [HasUA2005] in {
+let hasSideEffects = 1 in
+def ALLCLEAN : InstSP<(outs), (ins), "allclean", []> {
----------------
s-barannikov wrote:

Sparc instructions have well-defined formats, you should rarely need to use 
`InstSP` as the base class, if ever.

`0b00010110001` should be broken down into `fcn=0b00010` (or decimal 
equivalent) and `op3=0b110001`. `F3_1` looks the most appropriate base class of 
all existing classes, but it may also make sense to introduce a new class for 
this kind of instructions.


https://github.com/llvm/llvm-project/pull/138400
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to