Bug#609690: Debian x86 32-bits built for i586 !?
Hi, I just found out that gcc is compiled with --with-arch-32=i586, which effectively means it builds with -march=i586 by default (and that it still claims an i486-linux-gnu target). I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for sure[1] and that no changelog entry documents when or why that happened? (nothing in debian/changelog, and the corresponding svn commit says Update to SVN 20100625 (r161383) from the gcc-4_5-branch.) And that as far as I can see, this hasn't been discussed or documented in the released notes? Mike 1. See the following message from bug 609690: On Tue, Jan 11, 2011 at 05:20:32PM +0100, Matthias Klose wrote: On 11.01.2011 16:38, Petr Salinger wrote: Package: gcc-4.4 Version: 4.4.5-8 Hi, the current gcc-4.4 uses (tested on i386/4.4.5-6 and kfreebsd-i386/4.4.5-8) as a default arch i586. COLLECT_GCC_OPTIONS='-v' '-dD' '-E' '-mtune=generic' '-march=i586' echo | gcc-4.4 -dD -x c -E - | grep 86 #define __DBL_MAX__ 1.7976931348623157e+308 #define __i386 1 #define __i386__ 1 #define i386 1 #define __i586 1 #define __i586__ 1 It is due to debian/rules2: ifneq (,$(filter $(DEB_TARGET_ARCH), amd64 i386 kfreebsd-i386 kfreebsd-amd64)) #CONFARGS += --with-arch-32=i486 ifeq ($(distribution),Ubuntu) CONFARGS += --with-arch-32=i686 else CONFARGS += --with-arch-32=i586 endif endif I believe, that even plain i486 have to be supported, also changelog claims that default should still be i486. yes, I think I did change that to avoid libgomp failures, which requires i586, and not just i486. Not sure what to do about that for squeeze. $ apt-cache rdepends libgomp1 | wc -l 77 So all these packages would need setting of the -march flag explicitly. There are other packages which do require i586, like OpenJDK. -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110515120800.ga10...@glandium.org
Bug#609690: Debian x86 32-bits built for i586 !?
On Sun, 15 May 2011, Mike Hommey wrote: I just found out that gcc is compiled with --with-arch-32=i586, which effectively means it builds with -march=i586 by default (and that it still claims an i486-linux-gnu target). I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for No. And unless we got a bug report form an i486 user, our users probably didn't notice it either. What are the *exact* differences between code generated for march=i486 to code generated for march=i586? What CPUs would break? I believe, that even plain i486 have to be supported, also changelog claims that default should still be i486. yes, I think I did change that to avoid libgomp failures, which requires i586, and not just i486. Not sure what to do about that for squeeze. $ apt-cache rdepends libgomp1 | wc -l 77 So all these packages would need setting of the -march flag explicitly. There are other packages which do require i586, like OpenJDK. We may well consider switching the i386 port to i586. But lets access the real impact, first. And whether we still have enough *active* i486 users (or i586-like CPUs that do not support gcc march=i586 if such a thing could happen) to care. -- One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie. -- The Silicon Valley Tarot Henrique Holschuh -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110515122805.gc32...@khazad-dum.debian.net
Bug#609690: Debian x86 32-bits built for i586 !?
On Sun, 2011-05-15 at 09:28 -0300, Henrique de Moraes Holschuh wrote: On Sun, 15 May 2011, Mike Hommey wrote: I just found out that gcc is compiled with --with-arch-32=i586, which effectively means it builds with -march=i586 by default (and that it still claims an i486-linux-gnu target). I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for No. And unless we got a bug report form an i486 user, our users probably didn't notice it either. What are the *exact* differences between code generated for march=i486 to code generated for march=i586? What CPUs would break? [...] There are a few new instructions on the Pentium that can be used in ring 3: cmpxchg8 and rdtsc. Linux has separate options for '586' and '586 with TSC', both of which result in -m586, so gcc does not appear to assume the existence of rdtsc. I would not expect gcc to generate cmpxchg8 except through an intrinsic, but I could be wrong. Ben. -- Ben Hutchings Once a job is fouled up, anything done to improve it makes it worse. signature.asc Description: This is a digitally signed message part
Bug#609690: Debian x86 32-bits built for i586 !?
On Sun, 15 May 2011, Ben Hutchings wrote: On Sun, 2011-05-15 at 09:28 -0300, Henrique de Moraes Holschuh wrote: On Sun, 15 May 2011, Mike Hommey wrote: I just found out that gcc is compiled with --with-arch-32=i586, which effectively means it builds with -march=i586 by default (and that it still claims an i486-linux-gnu target). I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for No. And unless we got a bug report form an i486 user, our users probably didn't notice it either. What are the *exact* differences between code generated for march=i486 to code generated for march=i586? What CPUs would break? [...] There are a few new instructions on the Pentium that can be used in ring 3: cmpxchg8 and rdtsc. Linux has separate options for '586' and '586 with TSC', both of which result in -m586, so gcc does not appear to assume the existence of rdtsc. I would not expect gcc to generate cmpxchg8 except through an intrinsic, but I could be wrong. Assuming we can't just do away with i486 support for now, did anyone track down exactly what was causing breakages that forced the change from march=486 to march=586? -- One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie. -- The Silicon Valley Tarot Henrique Holschuh -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110515143922.gb11...@khazad-dum.debian.net
Bug#609690: Debian x86 32-bits built for i586 !?
On Sun, May 15, 2011 at 14:08:00 +0200, Mike Hommey wrote: I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for sure[1] and that no changelog entry documents when or why that happened? (nothing in debian/changelog, and the corresponding svn commit says Update to SVN 20100625 (r161383) from the gcc-4_5-branch.) And that as far as I can see, this hasn't been discussed or documented in the released notes? To the best of my knowledge neither the release managers nor the release notes editors for squeeze were notified of this change. Cheers, Julien -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110515190558.gy2...@radis.liafa.jussieu.fr
Bug#609690: Debian x86 32-bits built for i586 !?
On Sun, 15 May 2011, Henrique de Moraes Holschuh wrote: On Sun, 15 May 2011, Mike Hommey wrote: I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for No. And unless we got a bug report form an i486 user, our users probably didn't notice it either. I used Debian on some embedded computers based on this processor: http://www.vortex86sx.com cat /proc/cpuinfo reports 486 But I have not tried Squeeze yet. So it's possible that other users have not found the problem yet. Cheers, -- Raphaël Hertzog ◈ Debian Developer Follow my Debian News ▶ http://RaphaelHertzog.com (English) ▶ http://RaphaelHertzog.fr (Français) -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110515194842.gc32...@rivendell.home.ouaza.com
Bug#609690: Debian x86 32-bits built for i586 !?
On Sunday 15 May 2011, Raphael Hertzog wrote: On Sun, 15 May 2011, Henrique de Moraes Holschuh wrote: On Sun, 15 May 2011, Mike Hommey wrote: I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for No. And unless we got a bug report form an i486 user, our users probably didn't notice it either. I used Debian on some embedded computers based on this processor: http://www.vortex86sx.com cat /proc/cpuinfo reports 486 But I have not tried Squeeze yet. So it's possible that other users have not found the problem yet. Cheers, I also run Debian on embedded computers mainly running SC1100 CPUs and /proc/cpuinfo reports:- processor : 0 vendor_id : AuthenticAMD cpu family : 4 model : 9 model name : 486 DX/4-WB stepping: 4 The kit may be over 8 years old, but it runs just fine and has been running Debian stock kernels all its life. I would like to keep it that way. David -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/201105152245.43104.david.goodeno...@btconnect.com
Bug#609690: Debian x86 32-bits built for i586 !?
On Sun, 2011-05-15 at 21:48 +0200, Raphael Hertzog wrote: On Sun, 15 May 2011, Henrique de Moraes Holschuh wrote: On Sun, 15 May 2011, Mike Hommey wrote: I'm wondering. Is the project at large aware that we're not building for i486, but for i586 ? That even the maintainer doesn't know why for No. And unless we got a bug report form an i486 user, our users probably didn't notice it either. I used Debian on some embedded computers based on this processor: http://www.vortex86sx.com cat /proc/cpuinfo reports 486 But I have not tried Squeeze yet. So it's possible that other users have not found the problem yet. The kernel in 'lenny' was broken on 486 for 6 months after release (#515982). I think any claim that Debian supports 486-class processors is more of an aspiration. What maintainer has the time to test on such antiques regularly? Ben. -- Ben Hutchings Once a job is fouled up, anything done to improve it makes it worse. signature.asc Description: This is a digitally signed message part
Bug#626869: gcc-4.6: undefined reference to `_q_add' with -mabi=ieeelongdouble
Package: gcc-4.6 Version: 4.6.0-2 Severity: normal I get the following error: ay:~ gcc-4.4 tst.c -o tst -mabi=ieeelongdouble cc1: warning: Using IEEE extended precision long double /tmp/cceTQS0o.o: In function `main': tst.c:(.text+0x84): undefined reference to `_q_add' collect2: ld returned 1 exit status zsh: exit 1 gcc-4.4 tst.c -o tst -mabi=ieeelongdouble tst.c is: int main (void) { volatile long double x = 1, y; y = x + x; return 0; } -- System Information: Debian Release: squeeze/sid APT prefers testing APT policy: (900, 'testing'), (900, 'stable'), (500, 'oldstable'), (200, 'unstable') Architecture: powerpc (ppc) Kernel: Linux 2.6.26-1-powerpc Locale: LANG=POSIX, LC_CTYPE=en_US.ISO8859-1 (charmap=ISO-8859-1) Shell: /bin/sh linked to /bin/bash Versions of packages gcc-4.6 depends on: ii binutils 2.21.0.20110327-3 The GNU assembler, linker and bina ii cpp-4.64.6.0-2 The GNU C preprocessor ii gcc-4.6-base 4.6.0-2 The GNU Compiler Collection (base ii libc6 2.11.2-7 Embedded GNU C Library: Shared lib ii libcloog-ppl0 0.15.9-3 the Chunky Loop Generator (runtime ii libgcc11:4.6.0-2 GCC support library ii libgmp10 2:5.0.1+dfsg-7Multiprecision arithmetic library ii libgmpxx4ldbl 2:5.0.1+dfsg-7Multiprecision arithmetic library ii libgomp1 4.6.0-2 GCC OpenMP (GOMP) support library ii libmpc20.9-3 multiple precision complex floatin ii libmpfr4 3.0.0-9 multiple precision floating-point ii libppl-c4 0.11.2-3 Parma Polyhedra Library (C interfa ii libppl90.11.2-3 Parma Polyhedra Library (runtime l ii zlib1g 1:1.2.3.4.dfsg-3 compression library - runtime Versions of packages gcc-4.6 recommends: ii libc6-dev 2.11.2-7 Embedded GNU C Library: Developmen Versions of packages gcc-4.6 suggests: pn binutils-gold none (no description available) pn gcc-4.6-doc none (no description available) pn gcc-4.6-locales none (no description available) pn gcc-4.6-multilib none (no description available) pn libgcc1-dbg none (no description available) pn libgomp1-dbg none (no description available) pn libmudflap0-4.6-dev none (no description available) pn libmudflap0-dbg none (no description available) pn libquadmath-dbg none (no description available) -- no debconf information -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110516020321.ga25...@ay.vinc17.org
Bug#609690: Debian x86 32-bits built for i586 !?
On Mon, 16 May 2011, Ben Hutchings wrote: I think any claim that Debian supports 486-class processors is more of an aspiration. What maintainer has the time to test on such antiques regularly? Well, nobody is running regular kernel regression testing on 486-class hardware AFAIK, and that includes the kernel upstream. I'd doubt even i586 is getting any serious testing... So yes, it will break every so often, and the situation is not going to get any better. -- One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie. -- The Silicon Valley Tarot Henrique Holschuh -- To UNSUBSCRIBE, email to debian-gcc-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20110516023637.gb9...@khazad-dum.debian.net