Sprachen: English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Français | Deutsch | Español | Italiano | Русский | العربية
Tip: Use the language bar above; links on this page point to the same locale (dyncode README and breadcrumbs).
Designnotizen, API-Referenz und Leitfäden für jedes NeverC-Subsystem.
Die DynCode-Kompilierungspipeline ist NeverCs Hauptforschungsschwerpunkt. Architektur, CLI-Optionen, Plattformmatrix und Beispiele:
| Dokument | Beschreibung |
|---|---|
| README | Überblick, Schnellstart, unterstützte Ziele |
| Pipeline & PIC | Design IR → Objekt → Extraktion |
| IR Pass Design | Begründung jeder IR-Pass |
| MIR Pass Design | Backend-MIR-Passes |
| Kernel-Mode DynCode | Ring-0-Kompilierung |
| Cross-Platform Architecture | TargetDesc und Extraktoren |
| Platform Extension Guide | Neue Plattform hinzufügen |
| ARM64 Assembly Tutorial | ARM64-Befehle aus DynCode-Perspektive |
| Roadmap | Geplante Arbeit |
| Progress | Implementierungsstand |
NeverC erkennt .nc als seine native Quelldateierweiterung. Mit .nc werden alle NeverC-Spracherweiterungen (-fneverc-types, -fbuiltin-string) automatisch aktiviert — keine zusätzlichen Flags erforderlich.
NeverC erweitert Standard-C mit integrierten Laufzeiten als LLVM-Bitcode. Jede wird über ein -fbuiltin-<name>-Flag gesteuert. .nc-Dateien aktivieren string automatisch.
| Integriert | Flag | Beschreibung |
|---|---|---|
| Integrierter String | -fbuiltin-string |
string-Werttyp mit Punkt-Aufruf-Methoden, automatischer Speicherverwaltung, nativem UTF-8 |
| Integriertes mimalloc | -fbuiltin-mimalloc |
Transparenter mimalloc Hochleistungs-Allokator-Override für malloc/free/calloc/realloc |
| Zeichenkettenverschlüsselung (xorstr) | -fencrypt-call-strings |
Kompilierzeit-Zeichenkettenverschlüsselung, Stack-XOR-Entschlüsselung, Anti-Signatur |
| Zeichenketten-Hashing (strhash) | -fstrhash-algo / -fstrhash-fold |
Kompilierzeit-Zeichenketten-Hashing, übereinstimmende Laufzeit, optionaler IR-Fold |
NeverC öffnet seine gesamte Toolchain über eine reine C-ABI. Ein Plugin ist ein gemeinsames Modul (.dll / .so / .dylib), das sich an jede der 130 benannten Compilerphasen hängen kann — von der Kommandozeilenanalyse bis zum fertig gelinkten Abbild — als Beobachter, als Interceptor oder als ersetzender Provider. Das SDK besteht nur aus Headern: keine LLVM-Header, keine Compiler-Anbindung.
| Dokument | Beschreibung |
|---|---|
| README | Einstiegspunkt, Phasen, Schnittstellenaushandlung, Registrierung, ABI-Regeln |
| Driver-API | Kommandozeile, Toolchain-Auswahl, Aktionsgraph, Job-Graph |
| Source- und E/A-API | VFS-Provider, Quellpositionen, Puffer, Ausgabesenken, Abhängigkeiten |
| Präprozessor-API | Token, Makros, Pragmas, Includes, Feature-Abfragen, 39 Ereignisarten |
| AST- und Semantik-API | Parser-Erweiterung, AST-Mutation, Namensauflösung, Typen, Konstanten |
| IR-API | LLVM-IR lesen, transaktionales Bauen, Analysen, Passes, Provider |
| MIR-API | Maschinenfunktionen, Register, Stackframes, MIR-Passes und -Analysen |
| Target, MC, Assembly, Objekt | Target-Registrierung, Aufrufkonventionen, MC-Kodierung, Objektgraphen |
| Link- und LTO-API | Link-Graph, Symbolauflösung, GC/ICF, Linker- und LTO-Provider |
| DynCode-API | Flache positionsunabhängige Images, Import-Lowering, Zeichensatzkodierung |
| Eigene Aufrufkonventionen | Datengetriebene Aufrufkonventions-Plugins |
Wichtigste geplante Richtungen des NeverC-Projekts: Standardbibliothek, EVM-Smart-Contract-Backend, Solana-eBPF-Backend.
| Funktion | Beschreibung |
|---|---|
Standardbibliothek (std) |
Go-ähnliche Batterien-inklusive-Pakete: fmt, os, io, net, crypto, encoding, sync und mehr |
Obfuskations-Plugin-Suite (neverc-obfuscation) |
Erstanbieter VM, MBA, Kontrollflussverflachung, polymorphe Engine, Anti-Tamper-Plugins |
UI-Komponentenbibliothek (neverc-ui) |
Qt-inspirierte plattformübergreifende UI, HTML/JS/CSS-Renderer, Drag-and-Drop-Designer, KI-nativer Workflow |
IDE & Sprachwerkzeuge (neverc-ide) |
VSCode-Erweiterung + Standalone-IDE für .nc-Dateien, IntelliSense, Debugging, DynCode-Pipeline-Visualisierung |
| EVM-Smart-Contracts | C zu EVM-Bytecode kompilieren — Smart Contracts in C statt Solidity |
| Solana eBPF | C zu Solana-eBPF-Bytecode kompilieren — On-Chain-Programmentwicklung in C |
NeverC aus dem Quellcode kompilieren und die lokale Entwicklungsumgebung einrichten, einschließlich PATH-Konfiguration.
Vollständig kompilierbare Beispiele für die plattformübergreifende Kompilierung mit NeverC. Cross-Kompilierung von macOS / Linux.