On Fri, 22 Feb 2013, Jeff Law wrote:

> On 02/22/13 06:30, Andrey Belevantsev wrote:
> > Hello,
> >
> > As found by Jakub and explained in the PR audit trail by Alexander, this
> > patch fixes the selective scheduler merge glitch of 2008 that added the
> > unnecessary JUMP_P check to the flush_pending_lists call.  I have
> > removed the check and expanded the binary negation for clarity.

> Can you explain how avoiding pushing the pending lists in this situation
> avoids coalescing the volatile stores?

You must be referring to the PR audit trail, right?  I'm sure the bug reporter
is mistaken that the stores are coalesced.  What happens is that two of the
three stores are moved up above the first asm, but because of how the awk
script cuts the generated code, that is not observed.

> Also, if we go forward with your patch, the comment related to this
> conditional needs to be fixed -- it still says "Flush pending lists on jumps,
> ...", but you've removed the jump check.

Yeah, I'd say the comment is confusing both before and after the patch.
Perhaps something like "Don't flush pending lists on speculation checks during
selective scheduling" would be better.

Alexander

Reply via email to