diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2012-11-09 20:45:17 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2012-11-09 20:45:17 +0000 |
commit | 98e377f9b1927e532163d7eaa8a1148dc671a629 (patch) | |
tree | fbd2743ede506b2fa778623cff8ffba6cf12a659 /gnu | |
parent | 0b44a1ac6b6637e2212336ec3771fe989322248e (diff) |
Move the actual operand contraints in define_split constructs from the lisp
expression attributes to the conditional C statement chunk, for this is the
only way to have them honored with gcc 3 (thanks for genrecog to warn about
this).
Note that most of the affected operands were ``register_operand'', hence the
"r" constraint is implied. There are a few `register + ccmode' constructs which
could have caused wrong code generation before this change, though.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/usr.bin/gcc/gcc/config/m88k/m88k.md | 254 |
1 files changed, 153 insertions, 101 deletions
diff --git a/gnu/usr.bin/gcc/gcc/config/m88k/m88k.md b/gnu/usr.bin/gcc/gcc/config/m88k/m88k.md index 9f64c2cca27..a79cce0778c 100644 --- a/gnu/usr.bin/gcc/gcc/config/m88k/m88k.md +++ b/gnu/usr.bin/gcc/gcc/config/m88k/m88k.md @@ -198,11 +198,14 @@ ;; addu.cio r6,r4,r0 (define_split - [(set (match_operand:SI 0 "register_operand" "=r") - (minus:SI (match_operand:SI 1 "register_operand" "r") - (geu:SI (match_operand:SI 2 "register_operand" "r") - (match_operand:SI 3 "register_operand" "r"))))] - "" + [(set (match_operand:SI 0 "register_operand" "") + (minus:SI (match_operand:SI 1 "register_operand" "") + (geu:SI (match_operand:SI 2 "register_operand" "") + (match_operand:SI 3 "register_operand" ""))))] + "GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG + && GET_CODE (operands[2]) == REG + && GET_CODE (operands[3]) == REG" [(set (reg:CC 0) (unspec:CC [(match_dup 2) (match_dup 3)] 1)) (set (match_dup 0) (plus:SI (match_dup 1) @@ -215,11 +218,14 @@ ;; addu.cio r6,r4,r0 (define_split - [(set (match_operand:SI 0 "register_operand" "=r") - (minus:SI (match_operand:SI 1 "register_operand" "r") - (leu:SI (match_operand:SI 3 "register_operand" "r") - (match_operand:SI 2 "register_operand" "r"))))] - "" + [(set (match_operand:SI 0 "register_operand" "") + (minus:SI (match_operand:SI 1 "register_operand" "") + (leu:SI (match_operand:SI 3 "register_operand" "") + (match_operand:SI 2 "register_operand" ""))))] + "GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG + && GET_CODE (operands[2]) == REG + && GET_CODE (operands[3]) == REG" [(set (reg:CC 0) (unspec:CC [(match_dup 2) (match_dup 3)] 1)) (set (match_dup 0) (plus:SI (match_dup 1) @@ -232,11 +238,13 @@ ;; addu.cio r5,r3,r0 (define_split - [(set (match_operand:SI 0 "register_operand" "=r") - (minus:SI (match_operand:SI 1 "register_operand" "r") - (eq:SI (match_operand:SI 2 "register_operand" "r") + [(set (match_operand:SI 0 "register_operand" "") + (minus:SI (match_operand:SI 1 "register_operand" "") + (eq:SI (match_operand:SI 2 "register_operand" "") (const_int 0))))] - "" + "GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG + && GET_CODE (operands[2]) == REG" [(set (reg:CC 0) (unspec:CC [(const_int 0) (match_dup 2)] 1)) (set (match_dup 0) (plus:SI (match_dup 1) @@ -249,11 +257,14 @@ ;; subu.cio r6,r4,r0 (define_split - [(set (match_operand:SI 0 "register_operand" "=r") - (plus:SI (ltu:SI (match_operand:SI 2 "register_operand" "r") - (match_operand:SI 3 "register_operand" "r")) - (match_operand:SI 1 "register_operand" "r")))] - "" + [(set (match_operand:SI 0 "register_operand" "") + (plus:SI (ltu:SI (match_operand:SI 2 "register_operand" "") + (match_operand:SI 3 "register_operand" "")) + (match_operand:SI 1 "register_operand" "")))] + "GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG + && GET_CODE (operands[2]) == REG + && GET_CODE (operands[3]) == REG" [(set (reg:CC 0) (unspec:CC [(match_dup 2) (match_dup 3)] 1)) (set (match_dup 0) (minus:SI (match_dup 1) @@ -266,11 +277,14 @@ ;; subu.cio r6,r4,r0 (define_split - [(set (match_operand:SI 0 "register_operand" "=r") - (plus:SI (gtu:SI (match_operand:SI 3 "register_operand" "r") - (match_operand:SI 2 "register_operand" "r")) - (match_operand:SI 1 "register_operand" "r")))] - "" + [(set (match_operand:SI 0 "register_operand" "") + (plus:SI (gtu:SI (match_operand:SI 3 "register_operand" "") + (match_operand:SI 2 "register_operand" "")) + (match_operand:SI 1 "register_operand" "")))] + "GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG + && GET_CODE (operands[2]) == REG + && GET_CODE (operands[3]) == REG" [(set (reg:CC 0) (unspec:CC [(match_dup 2) (match_dup 3)] 1)) (set (match_dup 0) (minus:SI (match_dup 1) @@ -283,11 +297,13 @@ ;; subu.cio r5,r3,r0 (define_split - [(set (match_operand:SI 0 "register_operand" "=r") - (plus:SI (ne:SI (match_operand:SI 2 "register_operand" "r") + [(set (match_operand:SI 0 "register_operand" "") + (plus:SI (ne:SI (match_operand:SI 2 "register_operand" "") (const_int 0)) - (match_operand:SI 1 "register_operand" "r")))] - "" + (match_operand:SI 1 "register_operand" "")))] + "GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG + && GET_CODE (operands[2]) == REG" [(set (reg:CC 0) (unspec:CC [(const_int 0) (match_dup 2)] 1)) (set (match_dup 0) (minus:SI (match_dup 1) @@ -300,13 +316,15 @@ ;; subu.cio r5,r3,r0 (define_split - [(set (match_operand:SI 0 "register_operand" "=r") - (minus:SI (match_operand:SI 1 "register_operand" "r") + [(set (match_operand:SI 0 "register_operand" "") + (minus:SI (match_operand:SI 1 "register_operand" "") (xor:SI (lshiftrt:SI - (match_operand:SI 2 "register_operand" "r") + (match_operand:SI 2 "register_operand" "") (const_int 31)) (const_int 1))))] - "" + "GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG + && GET_CODE (operands[2]) == REG" [(set (reg:CC 0) (unspec:CC [(match_dup 2) (match_dup 2)] 0)) (set (match_dup 0) (minus:SI (match_dup 1) @@ -409,7 +427,7 @@ ;; into an alternate form of bb0 and bb1. (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (ior:SI (neg:SI (match_operator 1 "even_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") @@ -418,8 +436,9 @@ (match_operator 3 "relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)])))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 5) (ior:CCEVEN (match_dup 4) (match_dup 2))) @@ -447,7 +466,7 @@ }") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (ior:SI (neg:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") @@ -456,8 +475,9 @@ (match_operator 3 "odd_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)])))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 5) (and:CCEVEN (match_dup 4) (match_dup 2))) @@ -477,7 +497,7 @@ }") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (ior:SI (neg:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") @@ -486,8 +506,9 @@ (match_operator 3 "even_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)])))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 5) (ior:CCEVEN (not:CC (match_dup 2)) (match_dup 4))) @@ -509,16 +530,18 @@ }") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (ior:SI (match_operator 1 "even_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") (const_int 0)]) (match_operator 3 "relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)]))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "GET_CODE (operands[1]) == GET_CODE (operands[3]) - || GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3]))" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && (GET_CODE (operands[1]) == GET_CODE (operands[3]) + || GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3])))" [(set (match_dup 5) (ior:CCEVEN (match_dup 4) (match_dup 2))) @@ -530,15 +553,17 @@ operands[4] = gen_rtx_NOT (CCmode, operands[4]);") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (ior:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") (const_int 0)]) (match_operator 3 "odd_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)]))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "GET_CODE (operands[1]) == GET_CODE (operands[3])" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == GET_CODE (operands[3])" [(set (match_dup 5) (and:CCEVEN (match_dup 4) (match_dup 2))) @@ -547,15 +572,17 @@ "operands[5] = gen_rtx_SUBREG (CCEVENmode, operands[5], 0);") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (ior:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") (const_int 0)]) (match_operator 3 "even_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)]))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3]))" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3]))" [(set (match_dup 5) (ior:CCEVEN (not:CC (match_dup 4)) (match_dup 2))) @@ -564,7 +591,7 @@ "operands[5] = gen_rtx_SUBREG (CCEVENmode, operands[5], 0);") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (and:SI (neg:SI (match_operator 1 "even_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") @@ -573,8 +600,9 @@ (match_operator 3 "relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)])))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 5) (and:CCEVEN (match_dup 4) (match_dup 2))) @@ -601,7 +629,7 @@ }") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (and:SI (neg:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") @@ -610,8 +638,9 @@ (match_operator 3 "odd_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)])))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 5) (ior:CCEVEN (match_dup 4) (match_dup 2))) @@ -630,7 +659,7 @@ }") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (and:SI (neg:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") @@ -639,8 +668,9 @@ (match_operator 3 "even_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)])))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 5) (and:CCEVEN (not:CC (match_dup 2)) (match_dup 4))) @@ -661,16 +691,18 @@ }") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (and:SI (match_operator 1 "even_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") (const_int 0)]) (match_operator 3 "relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)]))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "GET_CODE (operands[1]) == GET_CODE (operands[3]) - || GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3]))" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && (GET_CODE (operands[1]) == GET_CODE (operands[3]) + || GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3])))" [(set (match_dup 5) (and:CCEVEN (match_dup 4) (match_dup 2))) @@ -682,15 +714,17 @@ operands[4] = gen_rtx_NOT (CCmode, operands[4]);") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (and:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") (const_int 0)]) (match_operator 3 "odd_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)]))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "GET_CODE (operands[1]) == GET_CODE (operands[3])" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == GET_CODE (operands[3])" [(set (match_dup 5) (ior:CCEVEN (match_dup 4) (match_dup 2))) @@ -699,15 +733,17 @@ "operands[5] = gen_rtx_SUBREG (CCEVENmode, operands[5], 0);") (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (and:SI (match_operator 1 "odd_relop" [(match_operand 2 "partial_ccmode_register_operand" "%r") (const_int 0)]) (match_operator 3 "even_relop" [(match_operand 4 "partial_ccmode_register_operand" "r") (const_int 0)]))) - (clobber (match_operand:SI 5 "register_operand" "=r"))] - "GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3]))" + (clobber (match_operand:SI 5 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == reverse_condition (GET_CODE (operands[3]))" [(set (match_dup 5) (and:CCEVEN (not:CC (match_dup 2)) (match_dup 4))) @@ -765,12 +801,15 @@ ;; rotate/and[.c] and rotate/ior[.c] (define_split - [(set (match_operand:CCEVEN 0 "register_operand" "=r") - (ior:CCEVEN (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "r") + [(set (match_operand:CCEVEN 0 "register_operand" "") + (ior:CCEVEN (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "") (match_operand:CC 2 "int5_operand" "")) - (match_operand 3 "partial_ccmode_register_operand" "r"))) - (clobber (match_operand:CCEVEN 4 "register_operand" "=r"))] - "" + (match_operand 3 "partial_ccmode_register_operand" ""))) + (clobber (match_operand:CCEVEN 4 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && partial_ccmode_register_operand (operands[1], VOIDmode) + && partial_ccmode_register_operand (operands[3], VOIDmode)" [(set (match_dup 4) (rotate:CC (match_dup 1) (match_dup 2))) (set (match_dup 0) @@ -787,12 +826,15 @@ "#") (define_split - [(set (match_operand:CCEVEN 0 "register_operand" "=r") - (ior:CCEVEN (not:CC (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "r") + [(set (match_operand:CCEVEN 0 "register_operand" "") + (ior:CCEVEN (not:CC (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "") (match_operand:CC 2 "int5_operand" ""))) - (match_operand 3 "partial_ccmode_register_operand" "r"))) - (clobber (match_operand:CCEVEN 4 "register_operand" "=r"))] - "" + (match_operand 3 "partial_ccmode_register_operand" ""))) + (clobber (match_operand:CCEVEN 4 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && partial_ccmode_register_operand (operands[1], VOIDmode) + && partial_ccmode_register_operand (operands[3], VOIDmode)" [(set (match_dup 4) (rotate:CC (match_dup 1) (match_dup 2))) (set (match_dup 0) @@ -809,12 +851,15 @@ "#") (define_split - [(set (match_operand:CCEVEN 0 "register_operand" "=r") - (and:CCEVEN (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "r") + [(set (match_operand:CCEVEN 0 "register_operand" "") + (and:CCEVEN (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "") (match_operand:CC 2 "int5_operand" "")) - (match_operand 3 "partial_ccmode_register_operand" "r"))) - (clobber (match_operand:CCEVEN 4 "register_operand" "=r"))] - "" + (match_operand 3 "partial_ccmode_register_operand" ""))) + (clobber (match_operand:CCEVEN 4 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && partial_ccmode_register_operand (operands[1], VOIDmode) + && partial_ccmode_register_operand (operands[3], VOIDmode)" [(set (match_dup 4) (rotate:CC (match_dup 1) (match_dup 2))) (set (match_dup 0) @@ -831,12 +876,15 @@ "#") (define_split - [(set (match_operand:CCEVEN 0 "register_operand" "=r") - (and:CCEVEN (not:CC (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "r") + [(set (match_operand:CCEVEN 0 "register_operand" "") + (and:CCEVEN (not:CC (rotate:CC (match_operand 1 "partial_ccmode_register_operand" "") (match_operand:CC 2 "int5_operand" ""))) - (match_operand 3 "partial_ccmode_register_operand" "r"))) - (clobber (match_operand:CCEVEN 4 "register_operand" "=r"))] - "" + (match_operand 3 "partial_ccmode_register_operand" ""))) + (clobber (match_operand:CCEVEN 4 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG + && partial_ccmode_register_operand (operands[1], VOIDmode) + && partial_ccmode_register_operand (operands[3], VOIDmode)" [(set (match_dup 4) (rotate:CC (match_dup 1) (match_dup 2))) (set (match_dup 0) @@ -1386,12 +1434,13 @@ [(set_attr "type" "bit")]) (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (match_operator:SI 1 "odd_relop" [(match_operand:CCEVEN 2 "register_operand" "r") (const_int 0)])) - (clobber (match_operand:SI 3 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 3 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 3) (not:SI (match_op_dup 1 [(match_dup 2) (const_int 0)]))) (set (match_dup 0) (not:SI (match_dup 3)))] "") @@ -1436,12 +1485,13 @@ [(set_attr "type" "bit")]) (define_split - [(set (match_operand:SI 0 "register_operand" "=r") + [(set (match_operand:SI 0 "register_operand" "") (neg:SI (match_operator:SI 1 "odd_relop" [(match_operand:CCEVEN 2 "register_operand" "r") (const_int 0)]))) - (clobber (match_operand:SI 3 "register_operand" "=r"))] - "" + (clobber (match_operand:SI 3 "register_operand" ""))] + "reload_completed + && GET_CODE (operands[0]) == REG" [(set (match_dup 3) (neg:SI (not:SI (match_op_dup 1 [(match_dup 2) (const_int 0)])))) (set (match_dup 0) (xor:SI (match_dup 3) (const_int 1)))] @@ -1983,8 +2033,8 @@ }") (define_split - [(set (match_operand:DF 0 "register_operand" "=r") - (match_operand:DF 1 "register_operand" "r"))] + [(set (match_operand:DF 0 "register_operand" "") + (match_operand:DF 1 "register_operand" ""))] "reload_completed && GET_CODE (operands[0]) == REG && !XRF_REGNO_P (REGNO (operands[0])) && GET_CODE (operands[1]) == REG && !XRF_REGNO_P (REGNO (operands[1]))" @@ -2320,9 +2370,11 @@ "#") (define_split - [(set (match_operand:DI 0 "register_operand" "=r") - (sign_extend:DI (match_operand:SI 1 "register_operand" "r")))] - "reload_completed" + [(set (match_operand:DI 0 "register_operand" "") + (sign_extend:DI (match_operand:SI 1 "register_operand" "")))] + "reload_completed + && GET_CODE (operands[0]) == REG + && GET_CODE (operands[1]) == REG" [(set (subreg:SI (match_dup 0) 4) (match_dup 1)) (set (subreg:SI (match_dup 0) 0) (ashiftrt:SI (match_dup 1) (const_int 31)))] |