1e3b15766SWANG Xuerui /* SPDX-License-Identifier: MIT */ 2e3b15766SWANG Xuerui /* 3e3b15766SWANG Xuerui * Define LoongArch target-specific constraint sets. 4e3b15766SWANG Xuerui * 5e3b15766SWANG Xuerui * Copyright (c) 2021 WANG Xuerui <git@xen0n.name> 6e3b15766SWANG Xuerui * 7e3b15766SWANG Xuerui * Based on tcg/riscv/tcg-target-con-set.h 8e3b15766SWANG Xuerui * 9e3b15766SWANG Xuerui * Copyright (c) 2021 Linaro 10e3b15766SWANG Xuerui */ 11e3b15766SWANG Xuerui 12e3b15766SWANG Xuerui /* 13e3b15766SWANG Xuerui * C_On_Im(...) defines a constraint set with <n> outputs and <m> inputs. 14e3b15766SWANG Xuerui * Each operand should be a sequence of constraint letters as defined by 15e3b15766SWANG Xuerui * tcg-target-con-str.h; the constraint combination is inclusive or. 16e3b15766SWANG Xuerui */ 17e3b15766SWANG Xuerui C_O0_I1(r) 18305370e7SRichard Henderson C_O0_I2(rz, r) 1999ac4706SRichard Henderson C_O0_I2(r, rz) 2016288dedSJiajie Chen C_O0_I2(w, r) 2158f89612SJiajie Chen C_O0_I3(r, r, r) 226be08fcfSWANG Xuerui C_O1_I1(r, r) 2316288dedSJiajie Chen C_O1_I1(w, r) 2424c42fdeSJiajie Chen C_O1_I1(w, w) 25a341c84eSRichard Henderson C_O1_I2(r, r, r) 26a164010bSWANG Xuerui C_O1_I2(r, r, ri) 2739f54ce5SWANG Xuerui C_O1_I2(r, r, rI) 280e95be93SRichard Henderson C_O1_I2(r, r, rJ) 2997b2fafbSWANG Xuerui C_O1_I2(r, r, rU) 30fde69301SWANG Xuerui C_O1_I2(r, r, rW) 31305370e7SRichard Henderson C_O1_I2(r, 0, rz) 3224c42fdeSJiajie Chen C_O1_I2(w, w, w) 33d8b6fa59SJiajie Chen C_O1_I2(w, w, wM) 34e9d7c8cfSJiajie Chen C_O1_I2(w, w, wA) 35c8b859b4SJiajie Chen C_O1_I3(w, w, w, w) 36*1f406e46SRichard Henderson C_O1_I4(r, r, rJ, rz, rz) 372b2ae0a4SRichard Henderson C_N2_I1(r, r, r) 38