AArch64 doesn't yet have a Thumb mode. Thumb and Thumb-2 were created by examining large numbers of binaries, determining the instructions that compilers most frequently used, and then generating an instruction encoding that makes the most common instructions 16 bytes long. This is not possible with AArch64 until there is a large corpus of code to analyse and there are relatively mature compilers. In contrast, a lot of the shorter x86 instructions were ones that were used on the original 8086 / 8088, and are no longer regularly emitted by compilers. The AArch64 instruction set, however, was designed as a compiler target and so does produce quite dense code without the compression scheme. For example, it has a single instruction that allow spilling a pair of registers to the stack, which compresses function prologs and epilogs quite considerably (not compared to the ARM store-multiple and load-multiple instructions, but these add a lot of microarchitectural complication to the pipeline, whereas the store-pair and load-pair instructions are trivial to implement).