From: Tankut Baris Aktemur Date: Thu, 14 May 2020 11:59:53 +0000 (+0200) Subject: gdb/infrun: move a 'regcache_read_pc' call down to first use X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7ca9b62a2b63ae04d554053c2a2053d13a9d8c92;p=binutils-gdb.git gdb/infrun: move a 'regcache_read_pc' call down to first use In infrun.c's resume_1 function, move the definition of the local variable PC down to its first use. This is useful if the thread we want to resume is already gone with a pending exit event, because we avoid the error we would see otherwise when trying to read the PC. gdb/ChangeLog: 2020-05-14 Tankut Baris Aktemur * infrun.c (resume_1): Move a 'regcache_read_pc' call down to first use. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 462884ce41e..8b756c451b4 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2020-05-14 Tankut Baris Aktemur + + * infrun.c (resume_1): Move a 'regcache_read_pc' call down to first + use. + 2020-05-14 Tankut Baris Aktemur * regcache.c (regcache_read_pc_protected): New function diff --git a/gdb/infrun.c b/gdb/infrun.c index 5e01336ab09..db88a1eef15 100644 --- a/gdb/infrun.c +++ b/gdb/infrun.c @@ -2279,7 +2279,6 @@ resume_1 (enum gdb_signal sig) struct regcache *regcache = get_current_regcache (); struct gdbarch *gdbarch = regcache->arch (); struct thread_info *tp = inferior_thread (); - CORE_ADDR pc = regcache_read_pc (regcache); const address_space *aspace = regcache->aspace (); ptid_t resume_ptid; /* This represents the user's step vs continue request. When @@ -2358,6 +2357,8 @@ resume_1 (enum gdb_signal sig) step = 0; } + CORE_ADDR pc = regcache_read_pc (regcache); + if (debug_infrun) fprintf_unfiltered (gdb_stdlog, "infrun: resume (step=%d, signal=%s), "