Dear Android Developers,

I noticed that google'd maintained binutils for android. We are porting
Android  to own processor. The difficult part is DSO.

First of all, is it necessary for the toolchains of android set PIC in
default? I means how compiler deal with variable/function which might be in
DSO. The conservative way is always kept a got entry for potential
candicates. but it needs 2x loads if they are defined in the executable. I
don't know ARM very much. AFAIK, x86 and mips are currently PICed in
default. our toolchains don't set PIC in default.

Second, should we implement R_XXX_COPY? I'm not sure where to locate
non-static variables in share library. Are those in .sbss of .so file, or
.bss section of the executable? Android building script enforces option
"-z,nocopyrelc". so I assume dynamic executables never generate R_XXX_COPY
relocations. Then why android linker processes R_ARM_COPY? if executables
would not contain COPY relec type, then how linker handle non-static
variables in shared library?

Some people say android linker is not compatible with ld.linux.so. As a
result, linker can not load binaries generate for linux system. So what's
the difference exactly? There should be spec for toolchain developers.

Thanks,
--lx

-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting

Reply via email to