i386, m88k, and rs6000 (possibly others) dbra confusion

David Edelsohn dje@watson.ibm.com
Fri Jun 16 11:10:00 GMT 2000


>>>>> 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


More information about the Gcc mailing list