From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bernd Schmidt To: egcs@cygnus.com Subject: Re: Some Haifa scheduler bugs Date: Thu, 21 Aug 1997 15:47:18 -0000 Message-ID: In-reply-to: 4271.872008197@hurl.cygnus.com X-SW-Source: 1997-08/0243.html Message-ID: <19970821154718.0wLy7L4_9yx9v-TzioV75uc0mcVz0b0xVFFWqwmQVgU@z> > Specific questions/comments: > > In move_insn, is there some reason why you can't call reemit_notes > during the loop on SCHED_GROUP_P insns? > > ie, does this work instead? Seems cleaner than using another loop > if it works. > > { > rtx new_last = insn; > > while (SCHED_GROUP_P (insn)) > { > rtx prev = PREV_INSN (insn); > move_insn1 (insn, last); > reemit_notes (insn, insn); > insn = prev; > } > > move_insn1 (insn, last); > return reemit_notes (new_last, new_last); > } I've thought about something like this, but this code won't work, I think. It will call reemit_notes twice for the last insn in the SCHED_GROUP and not at all for the first one. I've tried thinking of ways to use just one loop, but they all had problems with putting all notes in the right places. Bernd