using relax with ld on i960

ian@cygnus.com ian@cygnus.com
Mon Aug 3 20:37:00 GMT 1998


>To test this, I wrote a simple C program that calls a simple procedure
>and
>returns.  I compile this using the i960-wrs-vxworks5.3.1-gcc with the
>-mleaf-procedures and -O3 options, and look at the assembly code.  Sure
>enough, my little procedure is treated as a leaf (.lf).  When I link it
>with --relax though, the 'calx' (it's actually a callx in the code) is
>not changed to 'cal' or 'bal'.

Unfortunately, the linker i960 relaxation only works when using the
b.out object file format, and VxWorks 5.1 and beyond use COFF.  It
would be possible to copy the relaxation code from bfd/bout.c into
bfd/coff-i960.c and convert it to use COFF relocations, but nobody has
done that.

Ian



More information about the crossgcc mailing list