libunwind-devel
[Top][All Lists]
Advanced

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

Re: [Libunwind-devel] PowerPC64 Support finished


From: Andrew Cagney
Subject: Re: [Libunwind-devel] PowerPC64 Support finished
Date: Thu, 12 Jul 2007 13:25:27 -0400
User-agent: Thunderbird 1.5.0.12 (X11/20070530)

Jose Flavio Aguilar Paulino wrote:
Hi People,

Well, finally I finished the libunwind patch for Power64!
First,
- I have to create a new kind of registers VREGS, because PowerPC has
vector registers (Special ones 128bits longs only for special
instructions) and the libunwind has General Use Registers and Flating
Pointer Registers. So I had to create a dummy register array in x86.


Does this involve a change to accessors_t?  I.e., it breaks the abi?

If it does, would a more generic get_register (num, char*, len) method be better? I'm pretty sure that, come the next ISA, we'll be faced with the same problem :-(

- Second, in some functions I had to add the a void pointer to ARGs,
because I need in some cases to pass special parameters.


If there's going to be abi breakage then, more in keeping with O-O, I wonder if this arg should just be embedded into unw_addr_space_t (instead of specifying it as unw_init_remote). It would certainly simplify the implementation of O-O bindings.

- Third, I had to add new generic file for function pointer translate:
Gget_func_addr.c. This is necessary because functions are called
indirectly in Power. So, as in GDB, I need to create a dummy function
for x86.

- Fourth, I add some Power specific tests

Well, I thinks thats all..
One last thing, I have corrected the libunwind for x86 because its the
only one Arch that I have available besides Power64, so problems will
occur in other Archs, I can work with you to solve them.

Thanks,
Jose Flavio Aguilar Paulino

Ps: Its a big patch, more than 400kb.

cool!





reply via email to

[Prev in Thread] Current Thread [Next in Thread]