On Mon, 2006-01-09 at 08:22 +0530, Ranjit Mathew wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1

> However, it still remains true that the code path
> I referred to is wrong and if, as you say, it can
> never be taken, it should just be removed and
> replaced with an assertion codifying what you
> are saying.

That path in add_stmt_operands can be taken from other call points (ie
those which pass in real operands), but never from the call point you
mention, if the call clobbered list is set up correctly.
  
You could stick an assert before calling add_stmt_operands to make sure
that the variable in question is !is_gimple_reg(). It would probably be
more effective to simply put the assert in mark_call_clobbered() where
the call clobbered list is built to make sure that we never insert real
registers into it. This would probably catch your bug quicker and be
more to the point of what seems to be wrong. 

Andrew


Reply via email to