> ## Content Index
> Fetch the complete content index at: https://jahans.blog/llms.txt
> Use this file to discover other available public pages before exploring further.

# The deed is done🚂
- URL: https://jahans.blog/the-deed-is-done/
- Published: 2026-01-21T06:22:23.000Z
- Updated: 2026-07-09T20:15:04.000Z
- Author: Jahan Addison
- Tags: credence, C++, compiler, computer science, #Import 2026-09-13 01:33

I have cut 1.0.0 in [Credence](https://github.com/jahan-addison/credence?ref=jahans.blog). The ARM64 engineering has been both incredible and exhausting, but it's the last backend I planned to support. The work on x86-64 and ARM64 together has been remarkable to say the least:

![](https://jahans.blog/content/images/2026/01/image.png)

> It is my **Magnum Opus**

That's the 2025-2026 github commit graph. Many 8+ hours days, and a few too many sleepless nights. It is my **Magnum Opus**. A milestone of professional and personal research since the idea was first conceived. The first commit in the [parser is about 7 years old](https://github.com/jahan-addison/chakram/commit/2b729879ff129d965d4087747648211dde4db010?ref=jahans.blog). Since then, I've designed languages and even built compilers at my workplace.

# AArch64 is the Future

The differences in CPU design, register file, and ISA between arm64 and x86-64 make me want to throw my $4000 PC away. It is eye-opening. No wonder Apple's M series laptops are so great.

**ARM64 has *32* 128-bit vector registers.** You read that right, **32**. They're available for vector instructions, SIMD, and SVE/SVE2\. Further, it has **31** separate,orthogonal general-purpose registers that are 64bits wide. Truthfully, I don't think it matters how much money you spend on an x86-64 CPU - it can never compete due to historical limitations. **The word size of x86-64 is still 16 bits**. That's two bytes, with 16 general-purpose registers - and most with a specialization.

I had to rewrite a lot of the code to make better use of arm64\. I can't tell if it was better or worse to start with x86-64; almost everything changed.

For what it's worth, it led to [some](https://github.com/jahan-addison/credence/blob/master/credence/target/common/types.h?ref=jahans.blog#L94) beautiful [C++ code](https://github.com/jahan-addison/credence/blob/master/credence/target/common/accessor.h?ref=jahans.blog#L50). I wanted to reuse as much as possible, so each backend roughly follows the same design. Each with a memory access mediator or "facade", specialized accessor and inserter types for data objects and algebraic operators, a pushdown stack, and the IR instruction visitor. You can read more about the backend overview [here](https://github.com/jahan-addison/credence/tree/master/credence/target?ref=jahans.blog).

I recommend you read up on RISC vs CISC, there's a ton of literature on the topic!

---

I'm exhausted, to say the least. My next project will be something completely different, something closer to hardware.