Penguin
Annotated edit history of amd64 version 7, including all changes. View license author blame.
Rev Author # Line
7 AristotlePagaltzis 1 [AMD]'s [64bit] architecture, used in their Opteron and Athlon64 [CPU]s, and also known as __x86-64__. It is the first major evolution of the [x86] platform since the i386 and has been adopted by [Intel] under the name [EM64T]. The Opteron line is [AMD]'s attempt to compete with [Intel] in the server market. Some things to beware of:
2 AristotlePagaltzis 2
7 AristotlePagaltzis 3 !! Use [GCC] 3.4 and above!
5 AristotlePagaltzis 4
7 AristotlePagaltzis 5 [GCC] 3.3 and below cannot generate correct code for [amd64]. If you have mysterious problems with programs crashing unexpectantly in what is normal code, then it's almost certain that you are not using a recent enough compiler. [Mozilla] shows this problem and will crash on startup.
6 CraigBox 6
7 AristotlePagaltzis 7 This poses a problem as a lot of programs won't compile with the newer [GCC] 3.4 compiler, as they voilate some rules of the [C] specification that [GCC] 3.4 now enforces where earlier compilers didn't. This problem should disappear with time, but if it is a pain when it does surface. I have personally solved this issue in the past by using the [GCC] 2.96 <tt>cpp</tt> to preprocess code, and [GCC] 3.4 to generate the actual executable. Other hand hacking may be required.
6 CraigBox 8
7 AristotlePagaltzis 9 !! Some code isn't 64bit clean
10
11 It's difficult to write portable code in [C] that deals properly with architectures with different word sizes. For instance using a <tt>uint64_t</tt> to make sure a type is 64bits long, then trying to printf(3) it causes problems. See [CPortabilityNotes].
4 JohnMcPherson 12
13 ----
6 CraigBox 14 CategoryProgramming, CategoryHardware