[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <2ACEF7F9-E80E-48A2-BEFA-8C6292A4EB1F@linux.vnet.ibm.com>
Date: Fri, 24 May 2024 17:47:02 +0530
From: Athira Rajeev <atrajeev@...ux.vnet.ibm.com>
To: Christophe Leroy <christophe.leroy@...roup.eu>
Cc: "acme@...nel.org" <acme@...nel.org>, "jolsa@...nel.org" <jolsa@...nel.org>,
"adrian.hunter@...el.com" <adrian.hunter@...el.com>,
"irogers@...gle.com" <irogers@...gle.com>,
"namhyung@...nel.org" <namhyung@...nel.org>,
"segher@...nel.crashing.org" <segher@...nel.crashing.org>,
"linux-perf-users@...r.kernel.org" <linux-perf-users@...r.kernel.org>,
"linuxppc-dev@...ts.ozlabs.org" <linuxppc-dev@...ts.ozlabs.org>,
"maddy@...ux.ibm.com" <maddy@...ux.ibm.com>,
"kjain@...ux.ibm.com" <kjain@...ux.ibm.com>,
"disgoel@...ux.vnet.ibm.com" <disgoel@...ux.vnet.ibm.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"akanksha@...ux.ibm.com" <akanksha@...ux.ibm.com>
Subject: Re: [PATCH V2 8/9] tools/perf: Add support to find global register
variables using find_data_type_global_reg
> On 7 May 2024, at 3:33 PM, Christophe Leroy <christophe.leroy@...roup.eu> wrote:
>
>
>
> Le 06/05/2024 à 14:19, Athira Rajeev a écrit :
>> There are cases where define a global register variable and associate it
>> with a specified register. Example, in powerpc, two registers are
>> defined to represent variable:
>> 1. r13: represents local_paca
>> register struct paca_struct *local_paca asm("r13");
>>
>> 2. r1: represents stack_pointer
>> register void *__stack_pointer asm("r1");
>
> What about r2:
>
> register struct task_struct *current asm ("r2");
Hi Christophe,
Referring to arch/powerpc/include/asm/current.h, “current” in powerpc 64 bit is from paca_struct which is handled with r13
R2 definition which you shared above is for 32 bit case.
Thanks
Athira
>
>>
>> These regs are present in dwarf debug as DW_OP_reg as part of variables
>> in the cu_die (compile unit). These are not present in die search done
>> in the list of nested scopes since these are global register variables.
>>
Powered by blists - more mailing lists