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) 13665be288SRichard Henderson C_O0_I2(rZ, r) 14665be288SRichard Henderson C_O0_I2(rZ, rZ) 15665be288SRichard Henderson C_O1_I1(r, r) 16665be288SRichard Henderson C_O1_I2(r, r, ri) 17665be288SRichard Henderson C_O1_I2(r, r, rI) 1899f4ec6eSRichard Henderson C_O1_I2(r, r, rJ) 19665be288SRichard Henderson C_O1_I2(r, rZ, rN) 20665be288SRichard Henderson C_O1_I2(r, rZ, rZ) 21a30498fcSRichard Henderson C_N1_I2(r, r, rM) 22a18d783eSRichard Henderson C_O1_I4(r, r, rI, rM, rM) 23665be288SRichard Henderson C_O2_I4(r, r, rZ, rZ, rM, rM) 24f63e7089SHuang Shiyuan C_O0_I2(v, r) 25f63e7089SHuang Shiyuan C_O1_I1(v, r) 265a63f599STANG Tiancheng C_O1_I1(v, v) 275a63f599STANG Tiancheng C_O1_I2(v, v, v) 285a63f599STANG Tiancheng C_O1_I2(v, v, vK) 29*a31768c0STANG Tiancheng C_O1_I2(v, v, vL) 30*a31768c0STANG Tiancheng C_O1_I4(v, v, vL, vK, vK) 31