arm-elf-gcc shared flat support

vivek tyagi vivek.list@gmail.com
Fri Mar 30 12:39:00 GMT 2007


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



More information about the Gcc mailing list