Home
» Glossar
Ein (Clang) Compiler-Backend, das die LLVM Intermediate Representation (IR) in Code für eine bestimmte Maschine oder andere Sprachen umwandelt. Im Falle von Emscripten ist das angegebene Ziel JavaScript.
Load-Store Consistency (LSC) ist die Anforderung, dass nach dem Schreiben eines Wertes mit einem bestimmten Typ an eine Speicherstelle, Lesezugriffe von dieser Speicherstelle denselben Typ haben. Wenn eine Variable also eine 32-Bit-Gleitkommazahl enthält, dann sind sowohl Lese- als auch Schreibzugriffe auf diese Variable 32-Bit-Gleitkommawerte und keine 16-Bit-Nicht-Ganzzahlen oder etwas anderes.
Hinweis
Diese Definition stammt aus Emscripten: An LLVM-to-JavaScript Compiler (Abschnitt 2.1.1). Zusätzliche Details finden Sie in diesem Papier.
Minifizierung in JavaScript ist der Prozess, alle unnötigen Zeichen aus dem Quellcode zu entfernen, ohne seine Funktionalität zu ändern. Auf höheren Optimierungsstufen verwendet Emscripten den Closure Compiler zur Minifizierung des Emscripten-Codes.
Wiederherstellung von High-Level-Schleifen- und if-Strukturen aus den Low-Level-Labels und Verzweigungen, die in der LLVM-Assembly erscheinen (Definition aus diesem Papier).
Simple DirectMedia Layer (SDL) ist eine plattformübergreifende Entwicklungsbibliothek, die einen Low-Level-Zugriff auf Audio-, Tastatur-, Maus-, Joystick- und Grafikhardware über OpenGL und Direct3D ermöglichen soll.
Der ursprüngliche Compiler unterstützte eine Reihe anderer Speichermodelle und Kompilierungsmodi (siehe Code Generation Modes), aber der Typed Arrays Mode 2 erwies sich unter anderem als derjenige mit der größten Unterstützung für beliebigen Code.
Abkürzung für XMLHttpRequest. Emscripten verwendet XHRs zum asynchronen Herunterladen von Binärdaten.
Binaryen ist ein WebAssembly-Compiler-Toolkit, das Emscripten zur Modifikation und Optimierung von Wasm verwendet.
Clang ist ein Compiler-Frontend für C, C++ und andere Programmiersprachen, das LLVM als Backend verwendet.
Der Closure Compiler wird verwendet, um den von Emscripten generierten Code bei höheren Optimierungen zu minifizieren.
Die Compiler-Konfigurationsdatei speichert die aktiven Tools und SDKs, wie sie mit emsdk activate definiert wurden.
Das Emscripten Compiler Frontend (emcc). Emscriptens direkter Ersatz für einen Compiler wie gcc.
Die Emscripten Windows Command Prompt (emcmdprompt.bat) wird verwendet, um Emscripten-Tools über die Befehlszeile unter Windows aufzurufen.
Fastcomp war Emscriptens zweiter Compiler-Core, nach dem JS-Compiler und vor dem neuen LLVM Wasm-Backend.
Git ist ein verteiltes Revisionskontrollsystem. Emscripten wird auf GitHub gehostet und kann mit einem Git-Client aktualisiert und geändert werden.
GitHub ist ein webbasierter Hosting-Dienst für Git-Repositories, der auch projektbasierte Kollaborationsfunktionen wie Wikis, Aufgabenverwaltung und Fehlerverfolgung bietet.
Das Emscripten-Projekt wird auf GitHub gehostet.
Java ist eine Programmiersprache und eine Computing-Plattform. Sie wird von Emscripten für den Code verwendet, der einige fortgeschrittene Optimierungen durchführt. Die erforderliche Version ist in den Toolchain-Anforderungen aufgeführt.
JavaScript (ECMAScript) ist eine Programmiersprache, die hauptsächlich als Teil eines Webbrowsers verwendet wird und programmatischen Zugriff auf Objekte in einer Host-Umgebung bietet. Mit node.js wird sie auch in der serverseitigen Netzwerkprogrammierung verwendet.
Die asm.js-Untermenge von JavaScript ist Emscriptens Zielsprache.
Der LLVM-Interpreter (LLI) führt Programme aus LLVM-Bitcode aus. Dieses Tool wird nicht mehr gewartet und weist seltsame Fehler und Abstürze auf.
LLVM ist eine Compiler-Infrastruktur, die zur Optimierung von Programmen in beliebigen Programmiersprachen entwickelt wurde.
Node.js ist eine plattformübergreifende Laufzeitumgebung für serverseitige und Netzwerk-Anwendungen, die in JavaScript geschrieben sind. Im Wesentlichen ermöglicht es die Ausführung von JavaScript-Anwendungen außerhalb eines Browserkontexts.
Python ist eine Skriptsprache, die zum Schreiben vieler Emscripten-Tools verwendet wird. Die erforderliche Version ist in den Toolchain-Anforderungen aufgeführt.
Die folgenden Begriffe werden verwendet, wenn man sich auf das SDK und das Emscripten SDK (emsdk) bezieht
Das Emscripten SDK (emsdk) wird zur Durchführung aller SDK-Wartungsarbeiten verwendet und kann SDKs und Tools installieren, aktualisieren, hinzufügen, entfernen und aktivieren. Die meisten Operationen haben die Form ./emsdk command. Um auf das emsdk-Skript zuzugreifen, starten Sie die Emscripten-Eingabeaufforderung.
Die grundlegende Softwareeinheit, die im SDK gebündelt ist. Ein Tool hat einen Namen und eine Version. Zum Beispiel ist clang-3.2-32bit ein Tool, das die 32-Bit-Version des Clang v3.2-Compilers enthält. Andere von Emscripten verwendete Tools sind Java, Git, node.js usw.
Ein Satz von Tools. Zum Beispiel ist sdk-1.5.6-32bit ein SDK, das aus den Tools besteht: clang-3.2-32bit, node-0.10.17-32bit, python-2.7.5.1-32bit und emscripten-1.5.6.
Es gibt verschiedene Emscripten SDK-Pakete. Diese können hier heruntergeladen werden.
Das emsdk kann mehrere Versionen von Tools und SDKs speichern. Die aktiven Tools/SDKs sind der Satz von Tools, die standardmäßig in der Emscripten-Eingabeaufforderung verwendet werden. Diese Compilerkonfiguration wird in einer emsdk-spezifischen Konfigurationsdatei (.emscripten) gespeichert und kann mit emsdk geändert werden.
Das emsdk kann eine beliebige Anzahl von Tools und SDKs verwalten, die in Unterverzeichnissen des emsdk-Stammverzeichnisses gespeichert werden. Das emsdk-Stammverzeichnis ist das Verzeichnis, das Sie bei der ersten Installation eines SDKs angegeben haben.
Das emsdk kann eine beliebige Anzahl von Tools und SDKs speichern. Das SDK-Stammverzeichnis ist das Verzeichnis, das zum Speichern eines bestimmten SDKs verwendet wird. Es befindet sich wie folgt relativ zum emsdk-Stammverzeichnis: <emsdk root>\emscripten\<sdk root directory>\
Markup-Sprache, die zur Definition von Inhalten auf dieser Website verwendet wird. Siehe die Einführung in reStructured Text.