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