On Fri, Apr 11, 2008 at 12:41 PM, Ian Lance Taylor <[EMAIL PROTECTED]> wrote: > "Mohamed Shafi" <[EMAIL PROTECTED]> writes: > > > I have noticed that when strict_low_part is used in a patten we need > > to use '+' as the constraint modifier if any constraints are used in > > the patterns. > > Why is this so? > > Using strict_low_part implies that the register or memory location is > neither a pure input nor a pure output. It is both an input and an > output. Therefore a '+' constraint is appropriate.
Thanks for the reply. In cris i saw this patten (define_insn "*andhi_lowpart" [(set (strict_low_part (match_operand:HI 0 "register_operand" "=r,r, r,r,r,r")) (and:HI (match_operand:HI 1 "register_operand" "%0,0, 0,0,0,r") (match_operand:HI 2 "general_operand" "r,Q>,L,O,g,!To")))] Here = is used. So when you say appropriate you mean to say that its not mandatory to use '+' but '=' also suffices? Regards, Shafi