This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: A doubt about constraint modifiers


On Fri, Apr 11, 2008 at 12:41 PM, Ian Lance Taylor <iant@google.com> wrote:
> "Mohamed Shafi" <shafitvm@gmail.com> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]