On Fri, 2 Dec 2011, Jan Hubicka wrote: > > > > Sure, but then you can still have the issue of an inconsistency. > > Thus, would you then remove the remaining asserts? > > > > I believe in the end the proper fix is to _not_ throw away > > cgraph edges all the time, but keep them up-to-date and thus > > make the stmt flag not necessary. (we can define "up-to-date" > > in a way so that we only require that existing edges that > > still have a call stmt have to be valid, thus still require > > incremental recomputation to remove dead edges and create > > new ones) > > Well, the stmt flag always looked redundat to me. We we just don't initialize > the edge flag at cgraph construction time? We do have the statement then.
We've had the stmt flag because the gimplifier computed uninlinability and stuck it on the CALL_EXPR tree, then transitioned it to the gimple stmt. We no longer do that, so yes - I'll prepare a patch to kill all this after Diego committed his patch ;) Richard.