[uClibc] frv-uclinux port updates

Joakim Tjernlund joakim.tjernlund at lumentis.se
Thu Nov 4 09:21:24 UTC 2004


> Behalf Of Alexandre Oliva
> 
> On Aug 26, 2004, Erik Andersen <andersen at codepoet.org> wrote:
> 
> > On Wed Aug 18, 2004 at 11:29:46AM -0300, Alexandre Oliva wrote:
> >> This patch brings the uClibc port for frv-uclinux into a functional,
> >> up-to-date state.  It includes many of the dynamic loader changes I
> >> posted before, as well as some new changes such as:
> 
> > Sorry bout the delay, you picked a time when ldso was in the
> > midst of some rework.
> 
> No problem.  I'm that lucky :-)  Sorry that it took me so long to get
> back to this.  Here's an updated version.  Some highlights:
> 
> - ABI checking (32/64 GP registers, 32/64/no FP registers) introduced,
>   to support both frv400-uclinux and frv550-uclinux, but not on the
>   same system.
> 
> - removed -nostdinc from CFLAGS; with it, we couldn't find stddef.h.

Hi

Did a quick scan of your patch and noticed how you changed _dl_find_hash()
I am pondering a change also to _dl_find_hash(), make it return a ptr
to the found elf_resolve struct(return tpnt;). I think it is needed
to support STV_PROTECTED and more useful in general.
Will you still need the _mod version then?
This will probly have to wait until 0.9.27 is released(unless Erik decides
to delay it)

DL_ADDR_IN_LOADADDR, this macro uses tpnt->loadaddr as if it was the
load address of the binary. This is not true always, tpnt->loadaddr is
really an offset/bias of actual_load_addr - load_address_in_elf_file.
For a dyn lib load_address_in_elf_file is zero, but for an exec 
load_address_in_elf_file equals actual_load_addr which makes tpnt->loadaddr
zero.




More information about the uClibc mailing list