On Mon, 2015-12-07 at 20:59 +0100, Bernd Schmidt wrote: > On 12/07/2015 08:43 PM, Steve Ellcey wrote: > > I am not sure about this. There is an earlier if statement in the loop > > that does a 'return' instead of a break (or continue) and there is a > > return in the 'else' part of the if that sets must_annul. Both of these > > are inside the loop that looks at all the instructions in the sequence > > 'seq'. I think the code is looking at all the instructions in the > > sequence and if any of them fail one of the tests in the loop (in this > > case require annulling) then we can't handle any of the instructions in > > the sequence and so we return immediately without putting any of the > > instructions from 'seq' in the delay slot. I believe a frame related > > instruction in an annulled branch needs to be handled that way too. > > Ah, I think I was looking at the other function that has the same > must_annul test (steal_delay_list_from_fallthrough). The patch is ok > without the backslash. Maybe the other function ought to be changed as > well though? > > > Bernd
That would seem reasonable, though I don't have a test case for where the change to that routine would actually make a difference in the compilation. I'll create a patch and test it to make sure it doesn't cause any problems and then submit it as a follow-up to this change. Steve Ellcey sell...@imgtec.com