On Tue, Apr 15, 2008 at 10:34 AM, Daniel Berlin <[EMAIL PROTECTED]> wrote: > To clarify what Richard means, your assertion that "you have updated > SSA information" is false. > If you had updated the SSA information, the error would not occur :). > > How exactly are you updating the ssa information?
I am calling update_ssa (TODO_update_ssa), after all the statements are transferred. > > The general way to update SSA for this case would be: > > For each statement you have moved: > Call update_stmt (t); > > Then call update_ssa (TODO_update_ssa) (or instead use > rewrite_into_loop_closed_ssa if this is a loop pass). > > If you do not call update_stmt in this case, update_ssa won't actually > do anything. > > Diego, the bsi iterators do not update the statements for you though > it is not clear if this is a bug or not. > > The bsi iterators call update_modified_stmts, which says: > > /* Mark statement T as modified, and update it. */ > static inline void > update_modified_stmts (tree t) > > However, this only calls update_stmt_if_modified (IE it does not mark > the statement as modified and update it, as it claims to). > > Sandeep, it should also suffice to call mark_stmt_modified *before* > moving the statements (since the above routine should then update > them). > Thanks. I will use update_stmt, update_ssa now. Best Regards, Sandeep. > On Mon, Apr 14, 2008 at 7:10 AM, Richard Guenther > > <[EMAIL PROTECTED]> wrote: > > > > On Mon, Apr 14, 2008 at 12:54 PM, Sandeep Maram <[EMAIL PROTECTED]> wrote: > > > Hi, > > > > > > I have transferred all the statements of one BB( header of one loop) > > > to another BB. After that I have updated SSA information too. > > > But I get this error- > > > > > > definition in block 6 does not dominate use in block 3 > > > for SSA_NAME: i_25 in statement: > > > > This is the problem. > > > > > > > > > # VUSE <a_18> > > > D.1189_10 = a[i_25]; > > > loop.c:8: internal compiler error: verify_ssa failed > > > > > > Can any one please tell me what is the problem? > > > > > > Thanks, > > > Sandeep. > > > > > >