gdb/sim: Assert that the simulator ptid is not null_ptid

We assign the simulator inferior a fake ptid.  If this ptid is ever
set to null_ptid then we are going to run into problems - the
simulator ptid is what we return from gdbsim_target::wait, and this in
turn is used to look up the inferior data with a call to
find_inferior_pid, which asserts the pid is not 0 (which it is in
null_pid).

This commit adds an assert that the simulator's fake pid is not
null_ptid.  There should be no user visible changes after this commit.

gdb/ChangeLog:

	* remote-sim.c (sim_inferior_data::sim_inferior_data): Assert that
	we don't set the fake simulator ptid to the null_ptid.

Change-Id: I6e08effe70e70855aea13c9caf4fd6913d5af56d
This commit is contained in:
Andrew Burgess 2020-02-04 09:07:16 +00:00
parent f8dcc90b60
commit dcc9fbc6da
2 changed files with 6 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2020-02-04 Andrew Burgess <andrew.burgess@embecosm.com>
* remote-sim.c (sim_inferior_data::sim_inferior_data): Assert that
we don't set the fake simulator ptid to the null_ptid.
2020-02-03 Simon Marchi <simon.marchi@efficios.com>
* fork-child.c (gdb_startup_inferior): Use bool instead of int.

View File

@ -86,6 +86,7 @@ struct sim_inferior_data {
: gdbsim_desc (desc),
remote_sim_ptid (next_pid, 0, next_pid)
{
gdb_assert (remote_sim_ptid != null_ptid);
++next_pid;
}