v8a v7a teléfono saber que cómo como armv8l armeabi android ios gcc arm arm64

android - v7a - Diferencias entre arm64 y aarch64



como saber si mi android es arm o x86 (2)

AArch64 es el estado de 64 bits introducido en la arquitectura Armv8-A ( https://en.wikipedia.org/wiki/ARM_architecture#ARMv8-A ). El estado de 32 bits que es compatible con versiones anteriores con Armv7-A y las arquitecturas de armado anteriores de 32 bits se denomina AArch32. Por lo tanto, el triplete de GNU para la ISA de 64 bits es aarch64. La comunidad del kernel de Linux eligió llamar a su puerto del kernel a esta arquitectura arm64 en lugar de aarch64, de modo que de ahí proviene parte del uso de arm64.

Por lo que sé, el backend de Apple para aarch64 se llamó arm64 mientras que el backend desarrollado por la comunidad LLVM se llamó aarch64 (ya que es el nombre canónico para el ISA de 64 bits) y más tarde los dos se fusionaron y el backend ahora se llama aarch64 .

Así que aarch64 y arm64 se refieren a lo mismo.

Tengo dos dispositivos "desbloqueados", un iPad mini 3 y un Galaxy Edge 6, ambos dotados de un terminal y un conjunto minimalista de comandos de Unix. Pensé que ambos dispositivos tienen procesadores arm64 pero cuando ejecuté

uname -a

En ambos dispositivos obtuve lo siguiente:

para el iPad mini 3:

xxxxs-iPad:/var/mobile root# uname -a Darwin xxxx-iPad 14.0.0 Darwin Kernel Version 14.0.0: Wed Jun 24 00:50:15 PDT 2015; root:xnu-2784.30.7-30/RELEASE_ARM64_S5L8960X iPad4, **arm64**, J85mAP

para el Samsung Galaxy s6 Edge:

u0_a203@zerolte:/ $ uname -a Linux localhost 3.10.61-4497415 #1 SMP PREEMPT Thu Apr 9 15:06:40 KST 2015 **aarch64** GNU/Linux

Si no estoy equivocado, la última información en ambos casos, J85mAP y GNU / Linux, significa firmwares, y la información antepenultimate, arm64 y aarch64, representan los procesadores.

Mis preguntas son las siguientes: obviamente las cadenas "arm64" y "aarch64" no son las mismas, pero siempre pensé que arm64 y aarch64 eran lo mismo. (Incluso se dice cuando pones la etiqueta arm64 a una pregunta aquí).

Entonces, ¿son realmente idénticos?

Especialmente, ¿de qué debo preocuparme en el caso de bibliotecas de creación cruzada para ambos objetivos? De hecho, tengo en mente gcc 5.2.0, pero tal vez también versiones inferiores. ¿Puedo pasar?

-target=arm64

o

-target=aarch64

¿Según el dispositivo al que me dirijo y solo me preocupa el resto de opciones para configurar?

EDITAR Hum, busca esto otra vez, sin éxito.


Parece que ARM64 fue creado por Apple y AARCH64 por los demás, especialmente los chicos de GNU / GCC.

Después de un poco de google encontré este enlace:

Los extremos de fondo ARM64 / AArch64 LLVM de 64 bits se han fusionado

Así que tiene sentido, el iPad se llama a sí mismo ARM64, ya que Apple está utilizando LLVM, y Edge usa AARCH64, ya que Android está utilizando la cadena de herramientas GNU GCC.