Gentoo Archives: gentoo-user

From: Mike Gilbert <floppym@g.o>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Will a 64-bit-no-multilib machine cross-compile 32-bit code?
Date: Mon, 23 Mar 2015 22:49:08
Message-Id: CAJ0EP43Qh-_KD_Z8P-q1hCj3aan-4kqsJ3zW+AR753XPo57POw@mail.gmail.com
In Reply to: Re: [gentoo-user] Will a 64-bit-no-multilib machine cross-compile 32-bit code? by Fernando Rodriguez
1 On Mon, Mar 23, 2015 at 6:41 PM, Fernando Rodriguez
2 <frodriguez.developer@×××××××.com> wrote:
3 > On Monday, March 23, 2015 6:18:46 PM Mike Gilbert wrote:
4 >> On Mon, Mar 23, 2015 at 9:51 PM, Walter Dnes <waltdnes@××××××××.org> wrote:
5 >> > On Sun, Mar 22, 2015 at 09:25:53PM -0400, Fernando Rodriguez wrote
6 >> >
7 >> >> I guess gcc devs are careful when using the model numbers (Intel
8 >> >> lists 3 for Atoms, gcc uses only two so that may account for the
9 >> >> models I mentioned) but the chance of error is there. The -mno-xxx
10 >> >> flags would safeguard against it.
11 >> >
12 >> > I have one of the earliest Atom chips. Some people have a hard time
13 >> > believing this, but it's a 32-bit-only chip; a couple of lines from
14 >> > /proc/cpuinfo
15 >> >
16 >> > model name : Intel(R) Atom(TM) CPU Z520 @ 1.33GHz
17 >> > address sizes : 32 bits physical, 32 bits virtual
18 >> >
19 >> > Intel gives the CPU's specs at...
20 >> >
21 >> > http://ark.intel.com/products/35466/Intel-Atom-Processor-Z520-512K-Cache-1_33-GHz-533-MHz-FSB
22 >> >
23 >> > ...where it specifically says...
24 >> >
25 >> > Intel 64 # No
26 >> >
27 >> > I want to make absolutely certain that "illegal instructions" are not
28 >> > compiled for it.
29 >>
30 >> You will probably need to add -m32 to CFLAGS to avoid building 64-bit
31 >> objects on the 64-bit machine.
32 >>
33 >
34 > Your CPU is an example of what I'm saying, not just because it doesn't have 64
35 > bit extensions but because it doesn't have MMX (at least according to the
36 > specs) and according to the GCC manual -march=atom means: "Intel Atom CPU with
37 > 64-bit extensions, MOVBE, MMX, SSE, SSE2, SSE3 and SSSE3 instruction set
38 > support." So I guess it's more common than I thought.
39 >
40 > So you may also want to add -mno-mmx to be sure. GCC does check for mmx but it
41 > doesn't not use it on the output (probably a bug?).
42 >
43
44 It's much more likely that Intel's website doesn't bother including
45 MMX because it is so damn old that nobody cares.
46
47 /proc/cpuinfo would be a more reliable source of data.

Replies

Subject Author
Re: [gentoo-user] Will a 64-bit-no-multilib machine cross-compile 32-bit code? Fernando Rodriguez <frodriguez.developer@×××××××.com>