Non-stop + software single-step archs: don't force displaced-stepping for all single...
authorPedro Alves <palves@redhat.com>
Wed, 15 Oct 2014 19:18:32 +0000 (20:18 +0100)
committerPedro Alves <palves@redhat.com>
Wed, 15 Oct 2014 19:18:32 +0000 (20:18 +0100)
commit36728e82bd9bb5b472eb569dc11b8f2296d5e3df
treed3a2371140f40b269e215fd232cb4b32e5f93a44
parent34b7e8a6ad0a735ecc0a953c8b65846d4776c88e
Non-stop + software single-step archs: don't force displaced-stepping for all single-steps

This finally reverts this bit of commit 929dfd4f:

  2009-07-31  Pedro Alves  <pedro@codesourcery.com>
      Julian Brown  <julian@codesourcery.com>

 ...
 (resume): If this is a software single-stepping arch, and
 displaced-stepping is enabled, use it for all single-step
 requests.
 ...

That means that in non-stop (or really displaced-stepping) mode, on
software single-step archs - even those that only use sss breakpoints
to deal with atomic sequences, like PPC - if we have more than one
thread single-stepping, we'll always serialize the threads'
single-steps, as only one thread may be displaced stepping at a given
time, because there's only one scratch pad.

We originally did that because GDB didn't support having multiple
threads software-single-stepping simultaneously.  The previous patches
fixed that limitation, so we can now finally revert this too.

Tested on:

  - x86_64 Fedora 20, on top of the 'software single-step on x86'
    series.

gdb/
2014-10-15  Pedro Alves  <palves@redhat.com>

* infrun.c (resume): Don't force displaced-stepping for all
single-steps on software single-stepping archs.
gdb/ChangeLog
gdb/infrun.c