Package: gcc-4.1 Version: 4.1.1-21 Severity: important The way I understand the -maltivec flag is "make the compiler aware of AltiVec instructions and the vector type, but only generate AltiVec code if the <altivec.h> intrinsics are being used", whereas -mabi=altivec means "generate AltiVec code wherever possible".
However, the following code, which doesn't even include <altivec.h>, generates AltiVec code with gcc-4.0 and gcc-4.1: /* gcc -O3 -maltivec -c foo.c -S -o - */ #include <string.h> extern func(void **, void**, void *); void test(void) { struct foo { int a[4]; } var0; void *var1, *var2; memset(&var0, 0, sizeof(var0)); func(&var1, &var2, &var0); } Here is the output: .file "foo.c" .section ".text" .align 2 .p2align 4,,15 .globl test .type test, @function test: mflr 0 stwu 1,-48(1) vxor 0,0,0 addi 5,1,16 stw 0,52(1) addi 3,1,8 addi 4,1,12 stvx 0,0,5 bl func lwz 0,52(1) addi 1,1,48 mtlr 0 blr .size test,.-test .ident "GCC: (GNU) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)" .section .note.GNU-stack,"",@progbits "vxor" is an AltiVec instruction. I don't think it should be there, and it breaks software that make the same assumption (ffmpeg, for instance). -- System Information: Debian Release: 4.0 APT prefers unstable APT policy: (500, 'unstable') Architecture: powerpc (ppc) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-3-powerpc Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968) Versions of packages gcc-4.1 depends on: ii binutils 2.17-3 The GNU assembler, linker and bina ii cpp-4.1 4.1.1-21 The GNU C preprocessor ii gcc-4.1-base 4.1.1-21 The GNU Compiler Collection (base ii libc6 2.3.6.ds1-10 GNU C Library: Shared libraries ii libgcc1 1:4.1.1-21 GCC support library ii libssp0 4.1.1-21 GCC stack smashing protection libr Versions of packages gcc-4.1 recommends: ii libc6-dev 2.3.6.ds1-10 GNU C Library: Development Librari pn libmudflap0-dev <none> (no description available) -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]