This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: i386, m88k, and rs6000 (possibly others) dbra confusion
- To: John Wehle <john at feith dot com>
- Subject: Re: i386, m88k, and rs6000 (possibly others) dbra confusion
- From: David Edelsohn <dje at watson dot ibm dot com>
- Date: Fri, 16 Jun 2000 14:10:35 -0400
- cc: gcc at gcc dot gnu dot org
>>>>> John Wehle writes:
John> 1) REG_NONNEG means that operand 1 is always nonnegative in which
John> case the branch will * always * be taken.
John> 2) loop is documented by Intel as:
John> DEC count; jump short if count <> 0
John> which doesn't match the define_insn.
John> I can prepare a patch for the i386, however I'm not fluent
John> with the other machine descriptions (m88k and rs6000) which
John> also look suspect.
The patterns are correct. The branch will NOT always be taken
because the loop counter will reach zero. Zero is not negative, so the
reg_note is correct. I am not sure where you are getting confused.
David