|
Message
From: Heiko Panther<heiko.panther@w...>
Date: Mon Dec 29 13:26:30 CET 2003
Subject: [openrisc] or32-gcc: Current status + new version
fredrik@w... wrote: > I've have problems with 64-bit types (unsigned long long) also with > GCC3.2.x and GCC3.3.x, this when compiling ARM-code with arm-elf-gcc > target and -O2. I think its the GCC optimizer that is buggy, not > especially OR related maybe. Not sure about that. The bugs we're seeing are most certainly not there on other, more mainstream gcc platforms, such as powerpc or x86. Someone would have noticed.
> I think that what happened when compiling 64-bit arithmetic for an > 32-bit processor, the operation is divided into two 32-bit > instructions. The optimizer seems to allow reordering of the latter > instruction, which in some cases can cause that the 64-bit result is > used before its completely calculated. Only the first 32-bit half is > done when its used. That could well be a bug in the ARM target code for gcc. You specify stuff like that there.
> It would be interesting to compile your sample code also for other > GCC-targets. Maybe this is something rather for the GCC-team to look into? If you can reproduce it for other targets, that would be most interesting. Keep us posted.
On a related note, I was planning to fiddle with our target config more. Those who did that before, what tools did you use to assert that your modified target config was working correctly? Anyone used the gcc test cases? Anyone used DejaGNU?
Regards, Heiko
|
 |