[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Elfutils segfault on IA64



On Wed, Oct 02, 2013 at 01:43:56PM -0500, Patrick Baggett wrote:
> I set the breakpoint, and it is called as you expected:
> (gdb) bt
> #0  ppc_register_info (ebl=0x6000000000004120, regno=-1, name=0x0,
> namelen=0, prefix=0x0, setname=0x0, bits=0x0, type=0x0) at ppc_regs.c:45

It's for the regno=1 case that I want to know that it properly
sets everything.  Can you watch what happens?

> #1  0x20000000000ba2c0 in ebl_register_info (ebl=0x6000000000004120,
> regno=-1, name=0x0, namelen=0, prefix=0x0, setname=0x0, bits=0x0, type=0x0)
> at eblreginfo.c:48
> #2  0x20000000000a4f10 in dwfl_module_register_names
> (mod=0x60000000000062d0, func=@0x4000000000003170: 0x4000000000001880
> <print_register>, arg=0x60000fffffffb3a0) at dwfl_module_register_names.c:53
> #3  0x4000000000001bd0 in handle_cfi (stuff=0x60000fffffffb3a0,
> pc=268436672, which=0x4000000000002318 ".debug_frame",
> dwfl=0x60000000000042f0, cfi=<optimized out>) at addrcfi.c:153
> #4  handle_cfi (dwfl=0x60000000000042f0, which=0x4000000000002318
> ".debug_frame", cfi=0x6000000000007420, pc=268436672,
> stuff=0x60000fffffffb3a0) at addrcfi.c:107
> #5  0x4000000000001f50 in handle_address (pc=268436672,
> dwfl=0x60000000000042f0) at addrcfi.c:167
> #6  0x40000000000010b0 in main (argc=4, argv=0x60000fffffffb678) at
> addrcfi.c:216
> 
> Also in addrcfi.c, the `bits` and `type` fields are marked with
> __attribute__((unused)), so it may not be so crazy:
> 
> static int
> print_register (void *arg,
>                 int regno,
>                 const char *setname,
>                 const char *prefix,
>                 const char *regname,
>                 int bits __attribute__ ((unused)),
>                 int type __attribute__ ((unused)))
> {

Yes, it seems to be unused.  But the caller can't known
that as far as I know, so I expect them to contain the
proper values.


Kurt


Reply to: