This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Remove some unnecessary inferior_ptid setting/restoring when fetching/storing registers
- From: Pedro Alves <palves at redhat dot com>
- To: Simon Marchi <simon dot marchi at ericsson dot com>, gdb-patches at sourceware dot org
- Date: Thu, 23 Mar 2017 16:19:31 +0000
- Subject: Re: [PATCH] Remove some unnecessary inferior_ptid setting/restoring when fetching/storing registers
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx04.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx04.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=palves at redhat dot com
- Dkim-filter: OpenDKIM Filter v2.11.0 mx1.redhat.com D92D46A6AD
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com D92D46A6AD
- References: <20170322172919.26538-1-simon.marchi@ericsson.com>
On 03/22/2017 05:29 PM, Simon Marchi wrote:
> Now that the to_fetch_registers, to_store_registers and
> to_prepare_to_store target methods don't rely on the value of
> inferior_ptid anymore, we can remove a bunch of now unnecessary setting
> and restoring of inferior_ptid.
>
> The asserts added recently in target_fetch_registers and
> target_store_registers, which validate that inferior_ptid matches the
> regcache's ptid, must go away. It's the whole point of this effort, to
> not require inferior_ptid to have a particular value when calling these
> functions.
>
> One thing that I noticed is how sol-thread.c's ps_lgetregs and friends
> use the current value of inferior_ptid instead of what's passed as
> argument (ph->ptid), unlike proc-service.c's versions of the same
> functions. Is it expected? I left it like this in the current patch,
> but unless there's a good reason for it to be that way, I guess we
> should make it use the parameter.
Probably no good reason.
>
> gdb/ChangeLog:
>
> * fbsd-tdep.c (fbsd_corefile_thread): Don't set/restore
> inferior_ptid.
> * proc-service.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs,
> ps_lsetfpregs): Likewise.
> * regcache.c (regcache_raw_update, regcache_raw_write): Likewise.
> * sol-thread.c (ps_lgetregs, ps_lsetregs, ps_lgetfpregs,
> ps_lsetfpregs): Likewise.
> * target.c (target_fetch_registers, target_store_registers):
> Remove asserts.
LGTM.
Thanks,
Pedro Alves