Hi , I am working on Shared flat file support for uClinux (No MMU ARM ).The gcc version I am using is 2.95 and 3.4.0.Theory of operation is similar to that implemented for m68k.One of the major requirement is to call functions via GOT. so a code ******c-code************** foo() {} main() { foo(); } ****************************** is to be called as ****compiler output*********** ldr r3, .L4 mov lr,pc ldr pc[sl,r3] .L4: .word foo(GOT) ****************************** as opposed to bl foo(PLT) where sl holds the address of GOT.(binfmt_flat loader ensures that before the program start) in gcc 3.4.0 this is some how achived if the function attribute __attribute__((weak)) is specified.But no idea for 2.95 Kindly bail me out on this one. Sincere Thanks in advance. Vivek Tyagi