Over a million developers have joined DZone.

Apple's 64-bit Chip: Resources, Warnings, Tips and More

DZone 's Guide to

Apple's 64-bit Chip: Resources, Warnings, Tips and More

· Mobile Zone ·
Free Resource

So, the last few weeks we’ve been off wandering the wilds of ex-Soviet Eastern Europe and the North Atlantic up Greenland way; did we miss anything?

… whoa.

Well, let’s start catching up, shall we, then? The new 64-bit chip is a good place, no doubt. First off, see what the mothership has to say.

About 64-Bit Cocoa Touch Apps

ARM64 Function Calling Conventions

Note especially: “You cannot build a 64-bit project if it targets an iOS version earlier than iOS 7.″ So far. There are rumors a future Xcode will support iOS 6 with the 32-bit slice.

[UPDATE: Notes from the Xcode-user list on lipoing together slices yourself, if you were thinking that would be clever:

"As far as lipo is concerned, there is nothing wrong with such a binary, and in the case of a static library that will be later linked into an application, you’re fine as long as the app’s deployment target is properly restricted. That is, if you build such a library by lipo-ing the individual slices together, as long as the app itself has a deployment target of 7.0, you’ll be fine. There are components in iOS pre-version 7 that were not prepared to see binaries containing 64-bit code, particularly when such binaries are downloaded from the app store (which is why things may appear to work locally for you, but would not work if that code ended up on the app store). Until the changes that Chris mentioned have been made, you will not be able to have an app that both supports iOS 5 or 6 and contains 64-bit code..."

"...I can’t really go into specifics, but rest assured that there is a solution forthcoming."]

And if you hadn’t already been making a practice of using NSInteger and CGFloat religiously in any System-interfacing code … well, it’s time to start!

As always, Mike Ash has the definitive get up to speed guide on far more exhaustively lower level information than you’re ever likely to need:

Friday Q&A 2013-09-27: ARM64 and You

If you’re really into the bit banging enough to want to read the full ARMv8 architecture manual … here you go.

But if you just want to see some real world numbers, check out The Move to 64-bit in The iPhone 5s Review over at AnandTech, exhaustively excellent as always.

If you’re not clear yet on the difference between ARCHS and VALID_ARCHS in Xcode, read:

iOS 7, XCode 5 Project Build Settings for Architectures and Arm64 support

For those who provide a static library and want to support iOS 5 through now with just one, read:

Static Libs With Support to iOS 5 and Arm64

And finally, for a handy-dandy chart of iOS 5+ devices sorted by chip and OS version and screen size, check out:

iOS Device Summary

Handy for planning your test device upgrade strategy!


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}