Ten years ago today #Apple launched the #iPhone 5S and announced the #arm64 CPU inside. It was the first public disclosure of a 64-bit ARM architecture, and it was available for you to buy in a phone. Nobody else was even close to having a chip ready to tape out, much less put in a product, and it was a performance monster.
For many of us it was the culmination of years of effort creating this chip and porting all of our software to it. I was working on the kernel and EL3 monitor. When we started we had no compiler, no assembler, no debugger, and really no documentation and the ISA still in flux. Someone wrote a macro-based assembler. Code gen bugs were a huge problem as clang was adding support. LLDB never caught up so someone on my team did a port of GDB.
@shac the toolchain situation must've been madness. Just reversing an A7 ROM, the assembly is so distinct that it's obvious that compiler was barely ready.
@siguza @shac Do you remember the Arm contributed LLVM target that quickly got scrapped when it became obvious that it was vastly inferior to Apple’s target?