From 4e1edee7383af381d51b11fce45b6a15b62f10e7 Mon Sep 17 00:00:00 2001 From: hachem Date: Sun, 13 Sep 2026 00:37:24 +0200 Subject: docs: split docs --- docs/README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 docs/README.md (limited to 'docs/README.md') diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..fe42c75 --- /dev/null +++ b/docs/README.md @@ -0,0 +1,17 @@ +# hdass documentation + +hdass is a small superset of assembly: you keep registers, memory and explicit +control flow, and write the repetitive parts (moves, arithmetic, loops, branches) +more compactly. It transpiles to x86-64 (NASM or fasm) or AArch64 (GNU as). + +- [Getting started](getting-started.md) — build the compiler, then write and run + a first program on both x86-64 and AArch64. +- [Language reference](language.md) — the full syntax: declarations, statements, + control flow, memory, floating point, raw instructions and extensions. +- [Targets](targets.md) — the architecture and assembler axes, what each target + supports, the portable register model, and the per-architecture syscall ABIs. +- [Internals](internals.md) — the `lex → parse → analyze → emit` pipeline and how + to add a new assembler backend or architecture. + +Working programs live in [examples/](../examples/) (x86-64) and +[examples/arm64/](../examples/arm64/). -- cgit v1.3