From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1S7A9q-0001N1-HZ for garchives@archives.gentoo.org; Mon, 12 Mar 2012 18:39:46 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 6D77DE0D92; Mon, 12 Mar 2012 18:39:03 +0000 (UTC) Received: from mx.virtyou.com (mx.virtyou.com [178.33.32.244]) by pigeon.gentoo.org (Postfix) with ESMTP id 9DBB2E0D79 for ; Mon, 12 Mar 2012 18:36:16 +0000 (UTC) Received: from weird.wonkology.org (xdsl-78-35-155-43.netcologne.de [78.35.155.43]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (Client did not present a certificate) by mx.virtyou.com (Postfix) with ESMTPSA id B415BDC050 for ; Mon, 12 Mar 2012 19:36:15 +0100 (CET) Date: Mon, 12 Mar 2012 19:36:14 +0100 From: Alex Schuster To: gentoo-user@lists.gentoo.org Subject: Re: [gentoo-user] CFLAGS problem Message-ID: <20120312193614.2ec9abc7@weird.wonkology.org> In-Reply-To: <1331554543.24722.2@numa-i> References: <20120312123201.61a8f3fc@weird.wonkology.org> <1331554543.24722.2@numa-i> X-Mailer: Claws Mail 3.8.0 (GTK+ 2.24.10; x86_64-pc-linux-gnu) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-user@lists.gentoo.org Reply-to: gentoo-user@lists.gentoo.org Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Archives-Salt: 4bf76040-7f24-4759-9786-b76271877fcf X-Archives-Hash: 046306626213a24647f972ef8d4bea94 Helmut Jarausch writes: > On 03/12/2012 12:32:01 PM, Alex Schuster wrote: > > The command above does not tell about SSE stuff, so I used this one to > > find out about that: > > > > leela # echo | gcc -dME - -march=native | grep -Ei 'SSE|3DNOW|MMX' | Typo: The -E must be separate: gcc -dM -E - -march=native > > sort > > #define __3dNOW_A__ 1 > > #define __3dNOW__ 1 > > #define __MMX__ 1 > > #define __SSE2_MATH__ 1 > > #define __SSE2__ 1 > > #define __SSE3__ 1 > > #define __SSE4A__ 1 > > #define __SSE_MATH__ 1 > > #define __SSE__ 1 > > > > And I added "-msse -msse2 -msse3 -msse4 -m3dnow -mmmx" to CFLAGS. > I normally check the flags entry in cat /proc/cpuinfo to decide > what's supported on a given CPU. This gives: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt arat cpb npt lbrv svm_lock nrip_save pausefilter I see sse, sse2, pni (which means sse3 I think) and sse4a. Like what the gcc output gives. But then I looked in the gcc man page, and the relevant switches are: -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -msse4 ... -msse4a With the -msse4a switch being a little separated from the others, maybe I overlooked it when I looked the last time. So, the CPU knows about SSE4a, but not about SSE4. Argh. I somehow thought that this would be the same as SSE4, according to wikipedia this is not true. Problem found, I guess. Wonko