17166eebbSRichard Henderson /* SPDX-License-Identifier: MIT */ 27166eebbSRichard Henderson /* 37166eebbSRichard Henderson * Define Arm target-specific constraint sets. 47166eebbSRichard Henderson * Copyright (c) 2021 Linaro 57166eebbSRichard Henderson */ 67166eebbSRichard Henderson 77166eebbSRichard Henderson /* 87166eebbSRichard Henderson * C_On_Im(...) defines a constraint set with <n> outputs and <m> inputs. 97166eebbSRichard Henderson * Each operand should be a sequence of constraint letters as defined by 107166eebbSRichard Henderson * tcg-target-con-str.h; the constraint combination is inclusive or. 117166eebbSRichard Henderson */ 127166eebbSRichard Henderson C_O0_I1(r) 137166eebbSRichard Henderson C_O0_I2(r, r) 147166eebbSRichard Henderson C_O0_I2(r, rIN) 157166eebbSRichard Henderson C_O0_I2(s, s) 16000cf477SRichard Henderson C_O0_I2(w, r) 177166eebbSRichard Henderson C_O0_I3(s, s, s) 187166eebbSRichard Henderson C_O0_I4(r, r, rI, rI) 197166eebbSRichard Henderson C_O0_I4(s, s, s, s) 207166eebbSRichard Henderson C_O1_I1(r, l) 217166eebbSRichard Henderson C_O1_I1(r, r) 22000cf477SRichard Henderson C_O1_I1(w, r) 237df44cf6SRichard Henderson C_O1_I1(w, w) 24000cf477SRichard Henderson C_O1_I1(w, wr) 257166eebbSRichard Henderson C_O1_I2(r, 0, rZ) 267166eebbSRichard Henderson C_O1_I2(r, l, l) 277166eebbSRichard Henderson C_O1_I2(r, r, r) 287166eebbSRichard Henderson C_O1_I2(r, r, rI) 297166eebbSRichard Henderson C_O1_I2(r, r, rIK) 307166eebbSRichard Henderson C_O1_I2(r, r, rIN) 317166eebbSRichard Henderson C_O1_I2(r, r, ri) 327166eebbSRichard Henderson C_O1_I2(r, rZ, rZ) 33*5047ae64SRichard Henderson C_O1_I2(w, 0, w) 34000cf477SRichard Henderson C_O1_I2(w, w, w) 35d74b86edSRichard Henderson C_O1_I2(w, w, wO) 36d74b86edSRichard Henderson C_O1_I2(w, w, wV) 37d74b86edSRichard Henderson C_O1_I2(w, w, wZ) 38f2b46c71SRichard Henderson C_O1_I3(w, w, w, w) 397166eebbSRichard Henderson C_O1_I4(r, r, r, rI, rI) 407166eebbSRichard Henderson C_O1_I4(r, r, rIN, rIK, 0) 417166eebbSRichard Henderson C_O2_I1(r, r, l) 427166eebbSRichard Henderson C_O2_I2(r, r, l, l) 437166eebbSRichard Henderson C_O2_I2(r, r, r, r) 447166eebbSRichard Henderson C_O2_I4(r, r, r, r, rIN, rIK) 457166eebbSRichard Henderson C_O2_I4(r, r, rI, rI, rIN, rIK) 46