BCT loop fix

David Edelsohn dje@watson.ibm.com
Tue Sep 15 11:02:00 GMT 1998


	I have not heard anything back about the patch that I sent to
egcs-patches which I want to install in loop.c to fix the worst Haifa
count register bug.

	There still is another bug which I am having more trouble tracking
down -- partially because I do not have a lot of time to explore the
problem.  When the decrement_and_branch_on_count pattern is substituted,
some information about the lifetime of certain condition registers seems
to be lost or merged.

	recog.c:reg_fits_class_p(), when compiled with the BCT
optimization, returns a truthvalue obtained from a condition register that
has not been set on the particular flow of control.  The truthvalue seems
to be calculated; but, in the original code without the BCT instruction,
the value was copied to another condition register and the return value
obtained from there.  With the BCT instruction, the copy does not occur,
but the value still is expected in an alternate condition register.

David



More information about the Gcc-bugs mailing list