diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-27 14:07:24 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-27 14:07:24 +0000 |
| commit | caa88a9b36d9e1dfae40ecb31aee05bc2891fa17 (patch) | |
| tree | d41168dc0799c6f8b033a3d6fdb2c2c72aac2b42 /AGENTS/ARCH/OVERVIEW.md | |
| parent | 5d37ebcc02f6ca2ce1ced93f803dd1daf634d866 (diff) | |
docs(preprocessor): document switches and library regions
Add manuals and aliases for all five PP directives, replace the retired #LIB
page, and update compiler and shared-editor architecture notes.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS/ARCH/OVERVIEW.md')
| -rw-r--r-- | AGENTS/ARCH/OVERVIEW.md | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/AGENTS/ARCH/OVERVIEW.md b/AGENTS/ARCH/OVERVIEW.md index 820c5bb..ee3fc12 100644 --- a/AGENTS/ARCH/OVERVIEW.md +++ b/AGENTS/ARCH/OVERVIEW.md @@ -1,14 +1,14 @@ # Overview and value representation -`cpsc` compiles CIE A-Level 9618 pseudocode to native executables or LLVM IR. Classic three-stage -Kaleidoscope-style design, C++17, built with LLVM 23 and Clang 23. CMake rejects +`cpsc` compiles CIE A-Level 9618 pseudocode to native executables or LLVM IR. A line preprocessor feeds a +Kaleidoscope-style lexer/parser/codegen pipeline, C++17, built with LLVM 23 and Clang 23. CMake rejects other major versions and non-Clang compilers. Execution is selected at build time: external lli, an embedded static LLVM engine, or disabled. ``` -files ──> Lexer ──> Parser ──> vector<unique_ptr<StmtAST>> ──> CodeGen ──> LLVM IR ──> NativeCompiler (object emission + embedded LLD) - (istream) (recursive (flat program list; (one llvm::Module "cps_module", - descent) FunctionDefAST mixed in) entry code inside i32 main()) +files -> Preprocessor -> Lexer -> Parser -> AST statements -> CodeGen -> LLVM IR -> NativeCompiler + (per-file (istream) (recursive descent) (one module) (object + embedded LLD) + switches and source-line library metadata) ``` Fixed value representation (ABI — much code infers types backwards from these): |
