[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#558245: gcc-4.3: Broken 3DNow! built-ins with optimization turned on



Package: gcc-4.3
Version: 4.3.2-1.1
Severity: important


With the attached source file, the code generated is incorrect for the final
_m_pfsub. The compiler generates things like PFSUBR %MM0,%MM0.

The command line showing the problem is:

gcc -march=athlon -fverbose-asm -S -O3 main.c

Removing '-O3' from the command line generates correct, but not optimized,
code.

The problem is visible in both GCC 4.3.2 (Debian Lenny) and GCC 4.3.4-6
(Debian Squeeze).

*** main.c
#include <mm3dnow.h>

void Butterfly_3(__m64 *D,__m64 SC,unsigned int IStep,unsigned int Off)
{ __m64 T,T1,T2;

  T=_m_pfmul(D[Off+1],SC);
  T1=D[Off+0];D[Off+0]=_m_pfadd(T1,T);D[Off+1]=_m_pfsub(T1,T);
}


-- System Information:
Debian Release: 5.0.3
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-2-686 (SMP w/1 CPU core)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages gcc-4.3 depends on:
ii  binutils            2.18.1~cvs20080103-7 The GNU assembler, linker and bina
ii  cpp-4.3             4.3.2-1.1            The GNU C preprocessor
ii  gcc-4.3-base        4.3.2-1.1            The GNU Compiler Collection (base 
ii  libc6               2.7-18               GNU C Library: Shared libraries
ii  libgcc1             1:4.3.2-1.1          GCC support library
ii  libgomp1            4.3.2-1.1            GCC OpenMP (GOMP) support library

Versions of packages gcc-4.3 recommends:
ii  libc6-dev                     2.7-18     GNU C Library: Development Librari

Versions of packages gcc-4.3 suggests:
pn  gcc-4.3-doc                   <none>     (no description available)
pn  gcc-4.3-locales               <none>     (no description available)
pn  gcc-4.3-multilib              <none>     (no description available)
pn  libgcc1-dbg                   <none>     (no description available)
pn  libgomp1-dbg                  <none>     (no description available)
pn  libmudflap0-4.3-dev           <none>     (no description available)
pn  libmudflap0-dbg               <none>     (no description available)

-- no debconf information




Reply to: