AArch64 o ARM64 è l'estensione a 64 bit della famiglia di architetture ARM.

È stata introdotta per la prima volta con l'architettura Armv8-A. Arm pubblica una nuova estensione ogni anno.
Annunciata nell'ottobre 2011, ARMv8-A rappresenta un cambiamento fondamentale nell'architettura ARM. Aggiunge un'architettura a 64 bit opzionale, denominata "AArch64", e l'associato nuovo set di istruzioni "A64". AArch64 fornisce la compatibilità nello spazio utente con l'esistente architettura a 32 bit ("AArch32"/ARMv7-A) e il set di istruzioni ("A32"). Il set di istruzioni Thumb a 16-32 bit, indicato come "T32", non ha una controparte a 64 bit. ARMv8-A consente l'esecuzione di applicazioni a 32 bit in un sistema operativo a 64 bit e il controllo di un sistema operativo a 32 bit da parte di un hypervisor a 64 bit. ARM ha annunciato i propri core Cortex-A53 e Cortex-A57 il 30 ottobre 2012. Apple è stata la prima a usare un core compatibile con ARMv8-A (Cyclone) in un prodotto destinato ai consumatori (iPhone 5S). AppliedMicro, tramite l'utilizzo di un FPGA, è stata la prima dimostrazione di ARMv8-A. Il primo SoC ARMv8-A di Samsung è stato l'Exynos 5433 utilizzato nel Galaxy Note 4, che presenta due cluster di quattro core Cortex-A57 e Cortex-A53 in configurazione big.little, ma può funzionare solo in modalità AArch32.
Sia in AArch32 che in AArch64, ARMv8-A rende obbligatorio l'utilizzo delle unità VFPv3/v4 e SIMD avanzato (NEON). Aggiunge inoltre istruzioni di crittografia che supportano AES, SHA-1/SHA-256 e aritmetica a campi finiti.
Estensione: suggerimento per la raccolta dei dati (ARMv8.0-DGH)
AArch64 è stato introdotta in ARMv8-A ed è inclusa nelle versioni successive di ARMv8-A. È stato introdotta anche in ARMv8-R come opzione, dopo la sua introduzione in ARMv8-A; è esclusa da ARMv8-M.
Nel dicembre 2014 è stata annunciata ARMv8.1-A, un aggiornamento con "vantaggi incrementali rispetto alla v8.0". I miglioramenti rientravano in due categorie: modifiche al set di istruzioni e modifiche al modello di eccezione e alla conversione degli indirizzi di memoria.
Nel gennaio 2016 è stata annunciata ARMv8.2-A. I suoi miglioramenti rientravano in quattro categorie:
Nell'ottobre 2016 è stata annunciata ARMv8.3-A. I suoi miglioramenti rientravano in sei categorie:
L'architettura ARMv8.3-A è ora supportata a partire dal compilatore GCC 7.
Nel novembre 2017 è stata annunciata ARMv8.4-A. I suoi miglioramenti rientravano in queste categorie:
A settembre 2018 è stata annunciata ARMv8.5-A. I suoi miglioramenti rientravano in queste categorie:
Il 2 agosto 2019, Google ha annunciato che Android avrebbe adottato l'estensione MTE.
Nel marzo 2021 è stata annunciata ARMv9-A. La linea di base di ARMv9-A è costituita da tutte le funzionalità di ARMv8.5. ARMv9-A aggiunge anche SVE2 (Scalable Vector Extension 2), TME (Transactional Memory Extension) e CCA (Confidential Compute Architecture).
A settembre 2019 è stata annunciata ARMv8.6-A. I suoi miglioramenti rientravano in queste categorie:
A settembre 2020 è stata annunciata ARMv8.7-A. I suoi miglioramenti rientravano in queste categorie:
Nel settembre 2021 sono stati annunciati ARMv8.8-A e ARMv9.3-A. I loro miglioramenti rientravano in queste categorie:
LLVM 15 supporta ARMv8.8-A e ARMv9.3-A.
Nel settembre 2022 sono stati annunciati ARMv8.9-A e ARMv9.4-A, che includono:
Il supporto AArch64 opzionale è stato aggiunto al profilo Armv8-R, con Cortex-R82 come primo core Arm che lo implementa. Aggiunto il set di istruzioni A64, con alcune modifiche alle istruzioni della barriera di memoria.