mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-27 17:40:49 +00:00
gdbserver: make linux target op 'cannot_store_register' a predicate function
The comment for the linux target op 'cannot_store_register' states the
following:
/* Returns 0 if we can store the register, 1 if we can not
store the register, and 2 if failure to store the register
is acceptable. */
There is only one low target, linux-ppc-low, that potentially returns
2. There are two places that call the 'cannot_store_register' target
op in linux-low.cc. None of these locations distinguish a '2' from a
'1'. Hence, to simplify the definition, make the function a predicate
that returns either 0 or 1. This is also consistent with the
companion function, 'cannot_fetch_register'.
gdbserver/ChangeLog:
2020-04-02 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
* linux-low.h (struct linux_target_ops): Update the comment for
'cannot_store_register' to return 0 or 1.
* linux-ppc-low.cc (ppc_cannot_store_register): Return 1 instead
of 2.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2020-04-02 Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
|
||||
|
||||
* linux-low.h (struct linux_target_ops): Update the comment for
|
||||
'cannot_store_register' to return 0 or 1.
|
||||
* linux-ppc-low.cc (ppc_cannot_store_register): Return 1 instead
|
||||
of 2.
|
||||
|
||||
2020-03-20 Simon Marchi <simon.marchi@efficios.com>
|
||||
|
||||
* config.in: Re-generate.
|
||||
|
||||
@@ -135,11 +135,10 @@ struct linux_target_ops
|
||||
void (*arch_setup) (void);
|
||||
|
||||
const struct regs_info *(*regs_info) (void);
|
||||
int (*cannot_fetch_register) (int);
|
||||
|
||||
/* Returns 0 if we can store the register, 1 if we can not
|
||||
store the register, and 2 if failure to store the register
|
||||
is acceptable. */
|
||||
/* Return 0 if we can fetch/store the register, 1 if we cannot
|
||||
fetch/store the register. */
|
||||
int (*cannot_fetch_register) (int);
|
||||
int (*cannot_store_register) (int);
|
||||
|
||||
/* Hook to fetch a register in some non-standard way. Used for
|
||||
|
||||
@@ -152,13 +152,13 @@ ppc_cannot_store_register (int regno)
|
||||
/* Some kernels do not allow us to store fpscr. */
|
||||
if (!(ppc_hwcap & PPC_FEATURE_HAS_SPE)
|
||||
&& regno == find_regno (tdesc, "fpscr"))
|
||||
return 2;
|
||||
return 1;
|
||||
#endif
|
||||
|
||||
/* Some kernels do not allow us to store orig_r3 or trap. */
|
||||
if (regno == find_regno (tdesc, "orig_r3")
|
||||
|| regno == find_regno (tdesc, "trap"))
|
||||
return 2;
|
||||
return 1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user