xref: /qemu/tcg/riscv/tcg-target-con-set.h (revision ffd642cb2ca25262342311a3bf2e8a77a00e6dfd)
1665be288SRichard Henderson /* SPDX-License-Identifier: MIT */
2665be288SRichard Henderson /*
3665be288SRichard Henderson  * Define RISC-V target-specific constraint sets.
4665be288SRichard Henderson  * Copyright (c) 2021 Linaro
5665be288SRichard Henderson  */
6665be288SRichard Henderson 
7665be288SRichard Henderson /*
8665be288SRichard Henderson  * C_On_Im(...) defines a constraint set with <n> outputs and <m> inputs.
9665be288SRichard Henderson  * Each operand should be a sequence of constraint letters as defined by
10665be288SRichard Henderson  * tcg-target-con-str.h; the constraint combination is inclusive or.
11665be288SRichard Henderson  */
12665be288SRichard Henderson C_O0_I1(r)
13f466db1eSRichard Henderson C_O0_I2(rz, r)
14*99ac4706SRichard Henderson C_O0_I2(r, rz)
15665be288SRichard Henderson C_O1_I1(r, r)
16a341c84eSRichard Henderson C_O1_I2(r, r, r)
17665be288SRichard Henderson C_O1_I2(r, r, ri)
18665be288SRichard Henderson C_O1_I2(r, r, rI)
19a30498fcSRichard Henderson C_N1_I2(r, r, rM)
20a18d783eSRichard Henderson C_O1_I4(r, r, rI, rM, rM)
21f63e7089SHuang Shiyuan C_O0_I2(v, r)
22f63e7089SHuang Shiyuan C_O1_I1(v, r)
235a63f599STANG Tiancheng C_O1_I1(v, v)
24cbde22f1STANG Tiancheng C_O1_I2(v, v, r)
255a63f599STANG Tiancheng C_O1_I2(v, v, v)
26dc9cd4ecSRichard Henderson C_O1_I2(v, vK, v)
275a63f599STANG Tiancheng C_O1_I2(v, v, vK)
28a31768c0STANG Tiancheng C_O1_I2(v, v, vL)
29a31768c0STANG Tiancheng C_O1_I4(v, v, vL, vK, vK)
30