X

Apple not pursuing 64-bit Intel processors? Preview of difficulty in porting

Apple not pursuing 64-bit Intel processors? Preview of difficulty in porting

CNET staff
2 min read

Apple has posted guidelines for programming Universal Binary files -- Mac OS X applications capable of running Intel processors.

In the guidelines, Apple gives a brief preview of the transition process developers will need to make for Intel compatibility:

"Architectural differences between Macintosh computers using Intel and PowerPC microprocessors can cause existing PowerPC code to behave differently when built and run natively on an Intel microprocessor. The extent to which architectural differences affect your code depends on the level of your source code. Most existing code is high-level source code that is not specific to the processor. If your application falls into this category, you?ll find that creating a universal binary involves adjusting code in a few places. Cocoa developers may need to make fewer adjustments than Carbon developers whose code was ported from Mac OS 9 to Mac OS X."

"Most code that uses high-level frameworks and builds with GCC 4.0 in Mac OS X v10.4 will build with few, if any, changes on a Macintosh using an Intel microprocessor. The best approach for any developer in that situation is to build the existing code on a Macintosh using an Intel microprocessor, run the native x86 binary, and see how the application runs. Find the places where the code doesn?t behave as expected and then consult the sections in this document that cover those issues."

Unfortunately, it appears that developers who made use of PowerPC-specific technologies like AltiVec will have the most work to do in the transition process:

"Developers who use AltiVec instructions in their code or who intentionally exploit architectural differences for optimization or other purposes, will need to make the most code adjustments."

Also of note is that Apple makes no mention of 64-bit Intel architectures in the programming guidelines, instead referring only to IA-32.

MacFixIt reader William Kucharski writes:

"It appears Apple may be giving up on 64-bit computing as far as the new Intel platform is concerned, at least to start with.

"As you may have noticed, the new Intel developer platform is Pentium 4-based, and the new Universal Binary Programming Guidelines document refers only to IA-32.

"This seems to indicate that Mac OS X will only support 32-bit x86 processors, not 64-bit x64/AMD64 (Intel calls them EMT64) CPUs (in anything other than 32-bit legacy mode), or the ABI would point people to the AMD64 ABI in addition to or instead of just the IA-32 ABI.

"This seems to indicate that Apple is abandoning 64-bit computing, or at least they don't feel it's as important as they've been positioning it as for the past few years.

"Certainly it's an important shift in philosophy, as it appears there is no capability to generate 64-bit Mac OS X Intel apps at present."

Feedback? Late-breakers@macfixit.com.

Resources

  • guidelines
  • AMD64 ABI
  • IA-32 ABI
  • Late-breakers@macfixit.com
  • More from Late-Breakers