This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Problems with gcc 4.0 for powerpc


We have a boot loader (u-boot) that runs on powerpc platform (MPC8272)
If we cross-compile it using gcc 3.4.4 it works fine and it generates the following start and end of the functions


powerpc-linux-uclibc-gcc 3.4.4:

stwu  r1,-24(r1)
li r0,128
...
addi r1,r1,24
blr

That works fine. But if we recompile bootloader using 4.0.2 then we start getting problems. The code is kind of working but hangs very shortly in some place that has no affect on system.

And here is the code that 4.0.2 generates with the same options.

powerpc-linux-uclibc-gcc 4.0.2:

stwu  r1,-32(r1)
li r0,128
...
addi r1,r1,32
blr

Little difference in code but somehow it makes difference between working and not working. System.map files from 4.0.2 and 3.4.4 are very different - both of them looks ok but 4.0.2 version hangs very quickly in random place.

Here the options we use

powerpc-linux-uclibc-gcc -g -Os -fPIC -ffixed-r14 -meabi -fno-builtin -ffreestanding -nostdinc -isystem -pipe -fno-schedule-insns -fno-schedule-insns2 -ffixed-r2 -ffixed-r29 -mstring -mcpu=603e -Wall -Wstrict-prototypes

If somebody can suggest anything I will really appreciate. Can I make 4.0 "slightly more compatible" with 3.4?

Thank you


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]