xref: /qemu/tcg/arm/tcg-target-con-set.h (revision 5047ae648b7f25d3cdb6ce4995c62aa7806abd7f)
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