Message ID | 1367754273.19934.9.camel@yam-132-YW-E178-FTW |
---|---|
State | New |
Headers | show |
Oleg Endo <oleg.endo@t-online.de> wrote: > The operand mode in the tstsi_t_zero_extract_eq pattern was void on > purpose to match any mode (at least QI HI SI DI). The attached patch > fixes that. > OK for trunk and 4.8 if it passes testing? (I'd leave 4.7 alone since > it doesn't have the iterators.md). OK. > (BTW, I think the test case for this PR should have went into c-torture > instead of target/sh ...) Sounds plausible. Regards, kaz
Index: gcc/config/sh/sh.md =================================================================== --- gcc/config/sh/sh.md (revision 198595) +++ gcc/config/sh/sh.md (working copy) @@ -687,9 +687,9 @@ [(set_attr "type" "mt_group")]) ;; Extract contiguous bits and compare them against zero. -(define_insn "tstsi_t_zero_extract_eq" +(define_insn "tst<mode>_t_zero_extract_eq" [(set (reg:SI T_REG) - (eq:SI (zero_extract:SI (match_operand:SI 0 "logical_operand" "z") + (eq:SI (zero_extract:SI (match_operand:QIHISIDI 0 "logical_operand" "z") (match_operand:SI 1 "const_int_operand") (match_operand:SI 2 "const_int_operand")) (const_int 0)))]