The iPhone Wiki is no longer updated. Visit this article on The Apple Wiki for current information. |
Difference between revisions of "ARMv7"
m (fix casing, links) |
|||
Line 1: | Line 1: | ||
− | + | [[ARMv7]] is the processor instruction set used starting with the [[S5L8920]] in the [[N88ap|iPhone 3GS]] and in all subsequent devices. Processors that support [[ARMv7]] instructions are backward compatible with [[ARMv6]] instructions, but attempting to run binaries compiled for [[ARMv7]] on older, [[ARMv6]] processors will result in the error: "Bad CPU type in executable". |
|
==Benefits== |
==Benefits== |
||
− | The instructions are more efficient and numerous than the older |
+ | The instructions are more efficient and numerous than the older [[ARMv6]] instructions, resulting in a smaller binary and faster execution time. The official SDK allows developers to choose to compile for only [[ARMv6]] or a hybrid [[ARMv6]]/[[ARMv7]] binary. |
==Negatives== |
==Negatives== |
||
− | The applications and libraries that are built into [[iOS]] for |
+ | The applications and libraries that are built into [[iOS]] for [[ARMv7]] devices do not contain the [[ARMv6]] binaries, so the code will not run on the older processors. This is likely because Apple wants to keep the [[iOS]] filesize down and not include unnecessary "junk". It could also serve as a side-benefit for Apple because it prohibits older processors from running "premium features" like Voice Control on an [[N82ap|iPhone 3G]]. |
{{stub|hardware}} |
{{stub|hardware}} |
Revision as of 20:17, 9 March 2012
ARMv7 is the processor instruction set used starting with the S5L8920 in the iPhone 3GS and in all subsequent devices. Processors that support ARMv7 instructions are backward compatible with ARMv6 instructions, but attempting to run binaries compiled for ARMv7 on older, ARMv6 processors will result in the error: "Bad CPU type in executable".
Benefits
The instructions are more efficient and numerous than the older ARMv6 instructions, resulting in a smaller binary and faster execution time. The official SDK allows developers to choose to compile for only ARMv6 or a hybrid ARMv6/ARMv7 binary.
Negatives
The applications and libraries that are built into iOS for ARMv7 devices do not contain the ARMv6 binaries, so the code will not run on the older processors. This is likely because Apple wants to keep the iOS filesize down and not include unnecessary "junk". It could also serve as a side-benefit for Apple because it prohibits older processors from running "premium features" like Voice Control on an iPhone 3G.
This hardware article is a "stub", an incomplete page. Please add more content to this article and remove this tag. |