It currently does not work to run the `regcaches` selftest while
debugging something. This is because we expect that there exists no
regcache at the start of the test. If we are debugging something, there
might exist some regcaches.
Fix it by making the test clear regcaches at the start.
While at it, make the test clean up after it self and clear the
regcaches at the end too.
gdb/ChangeLog:
* regcache.c (regcaches_test): Call registers_changed.
Change-Id: I9d4f83ecb0ff9721a71e2c5cbd19e6e6d4e6c30c
+2020-08-20 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * regcache.c (regcaches_test): Call registers_changed.
+
2020-08-20 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* infrun.c (process_event_stop_test): Fix typo "breapoint".
static void
regcaches_test ()
{
- /* It is empty at the start. */
+ /* Ensure the regcaches container is empty at the start. */
+ registers_changed ();
SELF_CHECK (regcaches_size () == 0);
ptid_t ptid1 (1), ptid2 (2), ptid3 (3);
clears REGCACHES. */
registers_changed_ptid (nullptr, minus_one_ptid);
SELF_CHECK (regcaches_size () == 0);
+
+ /* Make sure to leave the global regcaches container empty. */
+ registers_changed ();
}
class target_ops_no_register : public test_target_ops