Doku-Drift fixen + Iter-5d-JOURNAL nachreichen

JOURNAL bekommt fehlenden Iter-5d-Eintrag und Iter-5-Architektur-
Review-Notiz mit Iter-6-Plan (Aufräumarbeiten). DESIGN.md korrigiert
zwei Drifts vom Architekt-Befund: @main ist i32 (C-/LLVM-ABI), nicht
i64; String-Globals tragen Hint @.str_<modul>_<hint>_<idx>.
This commit is contained in:
2026-05-07 11:50:49 +02:00
parent 2114fb2f6a
commit b1dbafc6f2
2 changed files with 64 additions and 4 deletions
+7 -4
View File
@@ -103,10 +103,13 @@ Trade-off: keine Inline-Optimierungen über die LLVM-API. Wir setzen auf
## Mangling-Schema (Iter 5c)
Alle AILang-Funktionen werden zu `@ail_<modul>_<def>` gemangelt — auch im
Single-Modul-Fall. Globale Strings/Konstanten zu `@.str_<modul>_<idx>`
bzw. `@ail_<modul>_<def>`. Eintrittspunkt ist eine `define i64 @main()`-
Trampoline, die `@ail_<entry-modul>_main()` aufruft. `source_filename`
existiert genau einmal pro Workspace und trägt den Eintrittsmodulnamen.
Single-Modul-Fall. Konstanten ebenfalls (`@ail_<modul>_<const>`). Globale
String-Literale tragen einen kurzen Hint zur Lesbarkeit:
`@.str_<modul>_<hint>_<idx>` (z. B. `@.str_sum_fmt_int_0`). Eintrittspunkt
ist eine `define i32 @main()`-Trampoline (C-/LLVM-ABI), die
`@ail_<entry-modul>_main()` aufruft. `source_filename` existiert genau
einmal pro Workspace und trägt den Eintrittsmodulnamen
(`<entry-modul>.ail`).
## Konvention: Qualifizierte Cross-Module-Verweise (Iter 5b)