On Tue, 3 Jan 2006, Richard Earnshaw wrote:
On Tue, 2006-01-03 at 15:38, Karel Gardas wrote:
OK, if I understand you well, then I should not use -msoft-float for both:
compiling of eCos lib and then for compiling my eCos-based app. The
problem is that this is not right way how to workaround this issue. I've
checked that I'm not using -msoft-float neither for building eCos lib nor
for building eCos-based app. I've saved typescript of `make' so I'm sure
build does not use -msoft-float anywhere and the issue is still the same.
FYI: Options used for eCos lib build are:
-finline-limit=7000 -Wa,-mfpu=softfpa -mbig-endian -mcpu=xscale -Wall
-Wpointer-arith -Wstrict-prototypes -Winline -Wundef -g -O2
-ffunction-sections -fdata-sections -fno-exceptions -mapcs-frame
Try taking -Wa,-mfpu=softfpa out as well. That will probably have the
same adverse effect on the object files generated.
OK, I've removed this and got this one now:
silence:~/usr/local/xscale-ecos-default/ixdp425_install/examples$
arm-elf-gcc -mbig-endian -O2 -g hello.c -o hello.xg -I../include -L../lib
-nostdlib -Ttarget.ld
/home/karel/usr/local/arm-elf1/lib/gcc/arm-elf/4.0.1/../../../../arm-elf/bin/ld:
ERROR: /tmp/ccKN8dgp.o uses FPA instructions, whereas hello.xg does not
/home/karel/usr/local/arm-elf1/lib/gcc/arm-elf/4.0.1/../../../../arm-elf/bin/ld:
failed to merge target specific data of file /tmp/ccKN8dgp.o
/home/karel/usr/local/arm-elf1/lib/gcc/arm-elf/4.0.1/../../../../arm-elf/bin/ld:
ERROR:
/home/karel/usr/local/arm-elf1/lib/gcc/arm-elf/4.0.1/be/libgcc.a(_udivsi3.o)
uses FPA instructions, whereas hello.xg does not
....
Anyway, I've now compared fpu and common libgcc and found that really fpu
(which should be hard-float) is different from the common lib in be
subdirectory (I'm talking about gcc/be/libgcc.a and gcc/be/fpu/libgcc.a),
so my assumption about building hard-float libgcc by default is not true
neither.
Do you have any idea how to proceed with this?
Thanks,
Karel
--
Karel Gardas [EMAIL PROTECTED]
ObjectSecurity Ltd. http://www.objectsecurity.com