[LoongArch64] Part-5:add loongarch support in some files for LoongArch64. (#21769)
[mono-project.git] / mono / mini / cpu-riscv32.md
blobdcac804bd820215826498e2cdb644ba5c592d223
1 # Licensed to the .NET Foundation under one or more agreements.
2 # The .NET Foundation licenses this file to you under the MIT license.
4 # RISC-V RV32 Machine Description
6 # This file describes various properties of Mini instructions for RV32 and is
7 # read by genmdesc.py to generate a C header file used by various parts of the
8 # JIT.
10 # Lines are of the form:
12 #     <name>: len:<length> [dest:<rspec>] [src1:<rspec>] [src2:<rspec>] [src3:<rspec>] [clob:<cspec>]
14 # Here, <name> is the name of the instruction as specified in mini-ops.h.
15 # length is the maximum number of bytes that could be needed to generate native
16 # code for the instruction. dest, src1, src2, and src3 specify output and input
17 # registers needed by the instruction. <rspec> can be one of:
19 #     a    a0
20 #     i    any integer register
21 #     b    any integer register (used as a pointer)
22 #     f    any float register (a0..a1 pair in soft float)
23 #     l    a0..a1 pair
25 # clob specifies which registers are clobbered (i.e. overwritten with garbage)
26 # by the instruction. <cspec> can be one of:
28 #     a    a0
29 #     c    all caller-saved registers