[Bug c/18912] New: FW: gcc 3.3.1 for Powerpc optimzation flag -Os generates bad code

2004-12-09 Thread atul dot sabharwal at tek dot com
I have been trying to run busybox-1.00  ( also rc3)   on my powerpc board (MPC 
8540 processor ) and about half
the applets do not run and die with the message "Illegal instruction".  I have 
ppc_82xx-gcc Montavista compiler 
for the power pc board.  These compilers are cross compiled version of gcc 
3.3.1 compiler.  We are using the 
cross compiled glibc-2.3.2.
 
Some critical applets which are failing with Illegal instruction message are :
 
ar ash bunzip2 bzcat cat chgrp chown cmp cp cpio crond install ln ls mkdir tty 
wc cut date df du
egrep env expr fgrep find modprobe mount  rm rmdir route uname wget ftpget 
ftpput grep gunzip
halt head httpd id ifconfig inetd sh sort syslogd uniq xargs tee telnetd touch 
tr vi yes zcat.
 
About half the commands are broken.  When I compile with no optimization or 
optimize for speed i.e. -O2
instead for size -Os, everything works fine. 

Seems like an optimzation bug to me.

--
Atul

The configure command for cross compiling gcc was as below ( output of
ppc_82xx-gcc -v ) ::

Reading specs from /opt/montavista/pro/devkit/ppc/82xx/bin/../lib/gcc-
lib/powerpc-hardhat-linux/3.3.1/specs
Configured with: ../configure --host=i686-pc-linux-gnu --target=powerpc-
hardhat-linux 
--prefix=/opt/montavista/devkit/ppc/82xx --exec-
prefix=/opt/montavista/devkit/ppc/82xx 
--bindir=/opt/montavista/devkit/ppc/82xx/bin --
sbindir=/opt/montavista/devkit/ppc/82xx/sbin 
--sysconfdir=/opt/montavista/devkit/ppc/82xx/etc --
datadir=/opt/montavista/devkit/ppc/82xx/share 
--includedir=/opt/montavista/devkit/ppc/82xx/include --
libdir=/opt/montavista/devkit/ppc/82xx/lib 
--libexecdir=/opt/montavista/devkit/ppc/82xx/libexec --
localstatedir=/opt/montavista/devkit/ppc/82xx/var 
--sharedstatedir=/opt/montavista/devkit/ppc/82xx/share --
mandir=/opt/montavista/devkit/ppc/82xx/man 
--infodir=/opt/montavista/devkit/ppc/82xx/info --program-transform-
name=s,^,ppc_82xx-, --enable-cross 
--with-sysroot=/opt/montavista/devkit/ppc/82xx/target --enable-shared --enable-
languages=c,c++ --enable-__cxa_atexit 
--enable-threads=posix --disable-multilib --with-gxx-include-
dir='$'{gcc_tooldir}/../target/usr/include/c++/3.3.1 
--with-cpu=603
Thread model: posix
gcc version 3.3.1 (MontaVista 3.3.1-3.0.10.0300532 2003-12-24)

-- 
   Summary: FW: gcc 3.3.1 for Powerpc optimzation flag -Os generates
bad code
   Product: gcc
   Version: 3.3.1
Status: UNCONFIRMED
  Severity: critical
  Priority: P2
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
    ReportedBy: atul dot sabharwal at tek dot com
CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18912


[Bug target/18912] FW: gcc 3.3.1 for Powerpc optimzation flag -Os generates bad code

2004-12-14 Thread atul dot sabharwal at tek dot com

--- Additional Comments From atul dot sabharwal at tek dot com  2004-12-14 
17:53 ---
This bug is fixed in 3.4.1 version of gcc. I received a cross compiled version 
of gcc for MPC8540 platform with the 3.4.1 gcc based tool chain and all 
busybox apps work correctly.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18912