1*d1c36a90SRichard Henderson /* SPDX-License-Identifier: MIT */ 2*d1c36a90SRichard Henderson /* 3*d1c36a90SRichard Henderson * Define S390 target-specific constraint sets. 4*d1c36a90SRichard Henderson * Copyright (c) 2021 Linaro 5*d1c36a90SRichard Henderson */ 6*d1c36a90SRichard Henderson 7*d1c36a90SRichard Henderson /* 8*d1c36a90SRichard Henderson * C_On_Im(...) defines a constraint set with <n> outputs and <m> inputs. 9*d1c36a90SRichard Henderson * Each operand should be a sequence of constraint letters as defined by 10*d1c36a90SRichard Henderson * tcg-target-con-str.h; the constraint combination is inclusive or. 11*d1c36a90SRichard Henderson */ 12*d1c36a90SRichard Henderson C_O0_I1(r) 13*d1c36a90SRichard Henderson C_O0_I2(L, L) 14*d1c36a90SRichard Henderson C_O0_I2(r, r) 15*d1c36a90SRichard Henderson C_O0_I2(r, ri) 16*d1c36a90SRichard Henderson C_O1_I1(r, L) 17*d1c36a90SRichard Henderson C_O1_I1(r, r) 18*d1c36a90SRichard Henderson C_O1_I2(r, 0, ri) 19*d1c36a90SRichard Henderson C_O1_I2(r, 0, rI) 20*d1c36a90SRichard Henderson C_O1_I2(r, 0, rJ) 21*d1c36a90SRichard Henderson C_O1_I2(r, r, ri) 22*d1c36a90SRichard Henderson C_O1_I2(r, rZ, r) 23*d1c36a90SRichard Henderson C_O1_I4(r, r, ri, r, 0) 24*d1c36a90SRichard Henderson C_O1_I4(r, r, ri, rI, 0) 25*d1c36a90SRichard Henderson C_O2_I2(b, a, 0, r) 26*d1c36a90SRichard Henderson C_O2_I3(b, a, 0, 1, r) 27*d1c36a90SRichard Henderson C_O2_I4(r, r, 0, 1, rA, r) 28*d1c36a90SRichard Henderson C_O2_I4(r, r, 0, 1, ri, r) 29*d1c36a90SRichard Henderson C_O2_I4(r, r, 0, 1, r, r) 30