xref: /openbmc/qemu/tcg/mips/tcg-target-con-set.h (revision 278238505d28d292927bff7683f39fb4fbca7fd1)
10263330bSRichard Henderson /* SPDX-License-Identifier: MIT */
20263330bSRichard Henderson /*
30263330bSRichard Henderson  * Define MIPS target-specific constraint sets.
40263330bSRichard Henderson  * Copyright (c) 2021 Linaro
50263330bSRichard Henderson  */
60263330bSRichard Henderson 
70263330bSRichard Henderson /*
80263330bSRichard Henderson  * C_On_Im(...) defines a constraint set with <n> outputs and <m> inputs.
90263330bSRichard Henderson  * Each operand should be a sequence of constraint letters as defined by
100263330bSRichard Henderson  * tcg-target-con-str.h; the constraint combination is inclusive or.
110263330bSRichard Henderson  */
120263330bSRichard Henderson C_O0_I1(r)
130263330bSRichard Henderson C_O0_I2(rZ, r)
140263330bSRichard Henderson C_O0_I2(rZ, rZ)
15*f48cc902SRichard Henderson C_O0_I3(rZ, r, r)
16*f48cc902SRichard Henderson C_O0_I3(rZ, rZ, r)
170263330bSRichard Henderson C_O0_I4(rZ, rZ, rZ, rZ)
18*f48cc902SRichard Henderson C_O0_I4(rZ, rZ, r, r)
190263330bSRichard Henderson C_O1_I1(r, r)
200263330bSRichard Henderson C_O1_I2(r, 0, rZ)
21*f48cc902SRichard Henderson C_O1_I2(r, r, r)
220263330bSRichard Henderson C_O1_I2(r, r, ri)
230263330bSRichard Henderson C_O1_I2(r, r, rI)
240263330bSRichard Henderson C_O1_I2(r, r, rIK)
250263330bSRichard Henderson C_O1_I2(r, r, rJ)
260263330bSRichard Henderson C_O1_I2(r, r, rWZ)
270263330bSRichard Henderson C_O1_I2(r, rZ, rN)
280263330bSRichard Henderson C_O1_I2(r, rZ, rZ)
290263330bSRichard Henderson C_O1_I4(r, rZ, rZ, rZ, 0)
300263330bSRichard Henderson C_O1_I4(r, rZ, rZ, rZ, rZ)
31*f48cc902SRichard Henderson C_O2_I1(r, r, r)
320263330bSRichard Henderson C_O2_I2(r, r, r, r)
330263330bSRichard Henderson C_O2_I4(r, r, rZ, rZ, rN, rN)
34