https://de.wikipedia.org/w/index.php?action=history&feed=atom&title=Emscripten Emscripten - Versionsgeschichte 2025-12-02T04:18:49Z Versionsgeschichte dieser Seite in Wikipedia MediaWiki 1.46.0-wmf.4 https://de.wikipedia.org/w/index.php?title=Emscripten&diff=241107902&oldid=prev Carrot account: /* Verwendung */ Kursivierung nicht nachvollziehbar. 2024-01-12T22:40:57Z <p><span class="autocomment">Verwendung: </span> Kursivierung nicht nachvollziehbar.</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. Januar 2024, 23:40 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 13:</td> <td colspan="2" class="diff-lineno">Zeile 13:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Verwendung ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Verwendung ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Seit dem 23. Dezember 2014 verwendet das [[Internet Archive]] eine Emscripten-konvertierte [[DOSBox]]-Emulation für Browser-basierte Präsentation von Tausenden archivierter [[MS-DOS|DOS]]-[[Computerspiel]]e,&lt;ref&gt;{{cite web|url=https://www.washingtonpost.com/news/the-switch/wp/2015/01/05/you-can-now-play-nearly-2400-ms-dos-video-games-in-your-browser/ |title=You can now play nearly 2,400 MS-DOS video games in your browser |first=Abby |last=Ohlheiser |date=2015-01-05 |accessdate=2015-01-08 |publisher=[[Washington Post]]}}&lt;/ref&gt;&lt;ref&gt;[http://ascii.textfiles.com/archives/4471 Each New Boot a Miracle] by Jason Scott (23. Dezember 2014)&lt;/ref&gt;&lt;ref&gt;[https://archive.org/search.php?query=collection%3Asoftwarelibrary_msdos&amp;page=1 collection:softwarelibrary_msdos] in the Internet Archive (29. Dezember 2014)&lt;/ref&gt; ausschließlich für <del style="font-weight: bold; text-decoration: none;">''</del>Schul- und Forschungszwecke<del style="font-weight: bold; text-decoration: none;">''</del>.&lt;ref&gt;{{cite web|url=https://archive.org/about/terms.php |title=Internet Archive's Terms of Use, Privacy Policy, and Copyright Policy |date=2014-12-31 |accessdate=2015-01-08 |publisher=archive.org |quote=''Access to the Archive’s Collections is provided at no cost to you and is granted for scholarship and research purposes only.''}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Seit dem 23. Dezember 2014 verwendet das [[Internet Archive]] eine Emscripten-konvertierte [[DOSBox]]-Emulation für Browser-basierte Präsentation von Tausenden archivierter [[MS-DOS|DOS]]-[[Computerspiel]]e,&lt;ref&gt;{{cite web|url=https://www.washingtonpost.com/news/the-switch/wp/2015/01/05/you-can-now-play-nearly-2400-ms-dos-video-games-in-your-browser/ |title=You can now play nearly 2,400 MS-DOS video games in your browser |first=Abby |last=Ohlheiser |date=2015-01-05 |accessdate=2015-01-08 |publisher=[[Washington Post]]}}&lt;/ref&gt;&lt;ref&gt;[http://ascii.textfiles.com/archives/4471 Each New Boot a Miracle] by Jason Scott (23. Dezember 2014)&lt;/ref&gt;&lt;ref&gt;[https://archive.org/search.php?query=collection%3Asoftwarelibrary_msdos&amp;page=1 collection:softwarelibrary_msdos] in the Internet Archive (29. Dezember 2014)&lt;/ref&gt; ausschließlich für Schul- und Forschungszwecke.&lt;ref&gt;{{cite web|url=https://archive.org/about/terms.php |title=Internet Archive's Terms of Use, Privacy Policy, and Copyright Policy |date=2014-12-31 |accessdate=2015-01-08 |publisher=archive.org |quote=''Access to the Archive’s Collections is provided at no cost to you and is granted for scholarship and research purposes only.''}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> </tr> </table> Carrot account https://de.wikipedia.org/w/index.php?title=Emscripten&diff=229151445&oldid=prev Koyaanisqatsi01: doppelte Namens-, Werks- oder Zitatauszeichnungen korrigiert 2022-12-24T14:34:38Z <p>doppelte Namens-, Werks- oder Zitatauszeichnungen korrigiert</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 24. Dezember 2022, 15:34 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 13:</td> <td colspan="2" class="diff-lineno">Zeile 13:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Verwendung ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Verwendung ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Seit dem 23. Dezember 2014 verwendet das [[Internet Archive]] eine Emscripten-konvertierte [[DOSBox]]-Emulation für Browser-basierte Präsentation von Tausenden archivierter [[MS-DOS|DOS]]-[[Computerspiel]]e&lt;ref&gt;{{cite web|url=https://www.washingtonpost.com/news/the-switch/wp/2015/01/05/you-can-now-play-nearly-2400-ms-dos-video-games-in-your-browser/ |title=You can now play nearly 2,400 MS-DOS video games in your browser |first=Abby |last=Ohlheiser |date=2015-01-05 |accessdate=2015-01-08 |publisher=[[Washington Post]]}}&lt;/ref&gt;&lt;ref&gt;[http://ascii.textfiles.com/archives/4471 Each New Boot a Miracle] by Jason Scott (23. Dezember 2014)&lt;/ref&gt;&lt;ref&gt;[https://archive.org/search.php?query=collection%3Asoftwarelibrary_msdos&amp;page=1 collection:softwarelibrary_msdos] in the Internet Archive (29. Dezember 2014)&lt;/ref&gt;<del style="font-weight: bold; text-decoration: none;">,</del> ausschließlich für ''<del style="font-weight: bold; text-decoration: none;">"</del>Schul- und Forschungszwecke<del style="font-weight: bold; text-decoration: none;">"</del>''.&lt;ref&gt;{{cite web|url=https://archive.org/about/terms.php |title=Internet Archive's Terms of Use, Privacy Policy, and Copyright Policy |date=2014-12-31 |accessdate=2015-01-08 |publisher=archive.org |quote=''Access to the Archive’s Collections is provided at no cost to you and is granted for scholarship and research purposes only.''}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Seit dem 23. Dezember 2014 verwendet das [[Internet Archive]] eine Emscripten-konvertierte [[DOSBox]]-Emulation für Browser-basierte Präsentation von Tausenden archivierter [[MS-DOS|DOS]]-[[Computerspiel]]e<ins style="font-weight: bold; text-decoration: none;">,</ins>&lt;ref&gt;{{cite web|url=https://www.washingtonpost.com/news/the-switch/wp/2015/01/05/you-can-now-play-nearly-2400-ms-dos-video-games-in-your-browser/ |title=You can now play nearly 2,400 MS-DOS video games in your browser |first=Abby |last=Ohlheiser |date=2015-01-05 |accessdate=2015-01-08 |publisher=[[Washington Post]]}}&lt;/ref&gt;&lt;ref&gt;[http://ascii.textfiles.com/archives/4471 Each New Boot a Miracle] by Jason Scott (23. Dezember 2014)&lt;/ref&gt;&lt;ref&gt;[https://archive.org/search.php?query=collection%3Asoftwarelibrary_msdos&amp;page=1 collection:softwarelibrary_msdos] in the Internet Archive (29. Dezember 2014)&lt;/ref&gt; ausschließlich für ''Schul- und Forschungszwecke''.&lt;ref&gt;{{cite web|url=https://archive.org/about/terms.php |title=Internet Archive's Terms of Use, Privacy Policy, and Copyright Policy |date=2014-12-31 |accessdate=2015-01-08 |publisher=archive.org |quote=''Access to the Archive’s Collections is provided at no cost to you and is granted for scholarship and research purposes only.''}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> </tr> </table> Koyaanisqatsi01 https://de.wikipedia.org/w/index.php?title=Emscripten&diff=227158222&oldid=prev Redeemer: Quellenlink korrigiert und die Vorlage dafür verwendet 2022-10-18T22:30:34Z <p>Quellenlink korrigiert und die Vorlage dafür verwendet</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 18. Oktober 2022, 23:30 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-Web-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-[[JavaScript]] oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C++ oder C), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]])&lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen&lt;ref&gt;https://github.com/<del style="font-weight: bold; text-decoration: none;">kripken</del>/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]] und [[C++]].</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-Web-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-[[JavaScript]] oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C++ oder C), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]])&lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen&lt;ref&gt;<ins style="font-weight: bold; text-decoration: none;">{{Internetquelle|url=</ins>https://github.com/<ins style="font-weight: bold; text-decoration: none;">emscripten-core</ins>/emscripten/wiki<ins style="font-weight: bold; text-decoration: none;">/Porting-Examples-and-Demos</ins>#programming-languages<ins style="font-weight: bold; text-decoration: none;">|titel=Porting Examples and Demos|abruf=2022-10-19}}</ins>&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]] und [[C++]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> </tr> </table> Redeemer https://de.wikipedia.org/w/index.php?title=Emscripten&diff=191256918&oldid=prev 80.187.99.34 am 11. August 2019 um 21:22 Uhr 2019-08-11T21:22:28Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 11. August 2019, 22:22 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-Web-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-[[JavaScript]] oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. <del style="font-weight: bold; text-decoration: none;">C/</del>C++), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]])&lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen&lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]<del style="font-weight: bold; text-decoration: none;">/</del>[[C++]].</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-Web-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-[[JavaScript]] oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C++<ins style="font-weight: bold; text-decoration: none;"> oder C</ins>), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]])&lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen&lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]<ins style="font-weight: bold; text-decoration: none;"> und </ins>[[C++]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> </tr> </table> 80.187.99.34 https://de.wikipedia.org/w/index.php?title=Emscripten&diff=189404782&oldid=prev Aka: Leerzeichen vor Referenz entfernt, Leerzeichen in Überschrift 2019-06-09T20:46:50Z <p>Leerzeichen vor Referenz entfernt, Leerzeichen in Überschrift</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 9. Juni 2019, 21:46 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-Web-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-[[JavaScript]] oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C/C++), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]])<del style="font-weight: bold; text-decoration: none;"> </del>&lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen<del style="font-weight: bold; text-decoration: none;"> </del>&lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]/[[C++]].</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-Web-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-[[JavaScript]] oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C/C++), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]])&lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen&lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]/[[C++]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 7:</td> <td colspan="2" class="diff-lineno">Zeile 7:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Im Gegensatz zur Ausführung nativer Applikationen ist die Ausführungsgeschwindigkeit von Emscripten-generiertem JavaScript-Code deutlich geringer. Dabei spielt auch der verwendete Browser eine große Rolle, je nach Anwendung variiert die Performance stark. Ein optimistischer Richtwert ist eine ca. zweifach längere Ausführungszeit<del style="font-weight: bold; text-decoration: none;"> </del>&lt;ref&gt;http://arewefastyet.com/#machine=11&amp;view=breakdown&amp;suite=asmjs-ubench&lt;/ref&gt;&lt;ref&gt;https://kripken.github.io/mloc_emscripten_talk/gindex.html#/11&lt;/ref&gt;. Bei performance-kritischen Anwendungen muss daher auch die Ausführungsumgebung genau spezifiziert werden.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Im Gegensatz zur Ausführung nativer Applikationen ist die Ausführungsgeschwindigkeit von Emscripten-generiertem JavaScript-Code deutlich geringer. Dabei spielt auch der verwendete Browser eine große Rolle, je nach Anwendung variiert die Performance stark. Ein optimistischer Richtwert ist eine ca. zweifach längere Ausführungszeit&lt;ref&gt;http://arewefastyet.com/#machine=11&amp;view=breakdown&amp;suite=asmjs-ubench&lt;/ref&gt;&lt;ref&gt;https://kripken.github.io/mloc_emscripten_talk/gindex.html#/11&lt;/ref&gt;. Bei performance-kritischen Anwendungen muss daher auch die Ausführungsumgebung genau spezifiziert werden.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Lizenz ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Lizenz ==</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Emscripten ist als [[freie Software]] unter zwei verschiedenen Lizenzen verwendbar: [[MIT-Lizenz]] und [[University of Illinois/NCSA Open Source License]].</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Emscripten ist als [[freie Software]] unter zwei verschiedenen Lizenzen verwendbar: [[MIT-Lizenz]] und [[University of Illinois/NCSA Open Source License]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>== Verwendung==</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>== Verwendung<ins style="font-weight: bold; text-decoration: none;"> </ins>==</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Seit dem 23. Dezember 2014 verwendet das [[Internet Archive]] eine Emscripten-konvertierte [[DOSBox]]-Emulation für Browser-basierte Präsentation von Tausenden archivierter [[MS-DOS|DOS]]-[[Computerspiel]]e&lt;ref&gt;{{cite web|url=https://www.washingtonpost.com/news/the-switch/wp/2015/01/05/you-can-now-play-nearly-2400-ms-dos-video-games-in-your-browser/ |title=You can now play nearly 2,400 MS-DOS video games in your browser |first=Abby |last=Ohlheiser |date=2015-01-05 |accessdate=2015-01-08 |publisher=[[Washington Post]]}}&lt;/ref&gt;&lt;ref&gt;[http://ascii.textfiles.com/archives/4471 Each New Boot a Miracle] by Jason Scott (23. Dezember 2014)&lt;/ref&gt;&lt;ref&gt;[https://archive.org/search.php?query=collection%3Asoftwarelibrary_msdos&amp;page=1 collection:softwarelibrary_msdos] in the Internet Archive (29. Dezember 2014)&lt;/ref&gt;, ausschließlich für ''"Schul- und Forschungszwecke"''.&lt;ref&gt;{{cite web|url=https://archive.org/about/terms.php |title=Internet Archive's Terms of Use, Privacy Policy, and Copyright Policy |date=2014-12-31 |accessdate=2015-01-08 |publisher=archive.org |quote=''Access to the Archive’s Collections is provided at no cost to you and is granted for scholarship and research purposes only.''}}&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Seit dem 23. Dezember 2014 verwendet das [[Internet Archive]] eine Emscripten-konvertierte [[DOSBox]]-Emulation für Browser-basierte Präsentation von Tausenden archivierter [[MS-DOS|DOS]]-[[Computerspiel]]e&lt;ref&gt;{{cite web|url=https://www.washingtonpost.com/news/the-switch/wp/2015/01/05/you-can-now-play-nearly-2400-ms-dos-video-games-in-your-browser/ |title=You can now play nearly 2,400 MS-DOS video games in your browser |first=Abby |last=Ohlheiser |date=2015-01-05 |accessdate=2015-01-08 |publisher=[[Washington Post]]}}&lt;/ref&gt;&lt;ref&gt;[http://ascii.textfiles.com/archives/4471 Each New Boot a Miracle] by Jason Scott (23. Dezember 2014)&lt;/ref&gt;&lt;ref&gt;[https://archive.org/search.php?query=collection%3Asoftwarelibrary_msdos&amp;page=1 collection:softwarelibrary_msdos] in the Internet Archive (29. Dezember 2014)&lt;/ref&gt;, ausschließlich für ''"Schul- und Forschungszwecke"''.&lt;ref&gt;{{cite web|url=https://archive.org/about/terms.php |title=Internet Archive's Terms of Use, Privacy Policy, and Copyright Policy |date=2014-12-31 |accessdate=2015-01-08 |publisher=archive.org |quote=''Access to the Archive’s Collections is provided at no cost to you and is granted for scholarship and research purposes only.''}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> Aka https://de.wikipedia.org/w/index.php?title=Emscripten&diff=187676456&oldid=prev Flying sheep: Kein zu-JS compiler, da es auch WASM beherrscht 2019-04-18T11:12:57Z <p>Kein zu-JS compiler, da es auch WASM beherrscht</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 18. April 2019, 12:12 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-<del style="font-weight: bold; text-decoration: none;">[[JavaScript]]</del>-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-JavaScript oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C/C++), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]]) &lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen &lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]/[[C++]].</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-<ins style="font-weight: bold; text-decoration: none;">Web</ins>-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-<ins style="font-weight: bold; text-decoration: none;">[[</ins>JavaScript<ins style="font-weight: bold; text-decoration: none;">]]</ins> oder zu [[WebAssembly]]. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C/C++), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]]) &lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen &lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]/[[C++]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> </tr> </table> Flying sheep https://de.wikipedia.org/w/index.php?title=Emscripten&diff=186225038&oldid=prev MTheiler: WebAssembly und Projektseite https://emscripten.org/ 2019-03-03T20:21:25Z <p>WebAssembly und Projektseite https://emscripten.org/</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 3. März 2019, 21:21 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 1:</td> <td colspan="2" class="diff-lineno">Zeile 1:</td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-[[JavaScript]]-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-JavaScript. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C/C++), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]]) &lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen &lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]/[[C++]].</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>'''Emscripten''' ist ein [[LLVM]]-zu-[[JavaScript]]-[[Compiler]]. Emscripten kompiliert LLVM-[[Assemblersprache|Assemblercode]] zu Standard-JavaScript<ins style="font-weight: bold; text-decoration: none;"> oder zu [[WebAssembly]]</ins>. Je nach verwendeter Programmiersprache werden bei der Übersetzung verschiedene Ansätze verfolgt. Der Sourcecode wird entweder direkt von LLVM-[[Bytecode]] in JavaScript übersetzt (z.&amp;nbsp;B. C/C++), oder die Ausführungsumgebung der Programmiersprache wird in JavaScript übersetzt. Die kompilierte Ausführungsumgebung wird dann genutzt um Code der jeweiligen Programmiersprache auszuführen (z.&amp;nbsp;B. [[CPython]]) &lt;ref&gt;Zakai, Alon. "Emscripten: an LLVM-to-JavaScript compiler." Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion. ACM, 2011.&lt;/ref&gt;. Emscripten unterstützt eine ganze Reihe von Programmiersprachen &lt;ref&gt;https://github.com/kripken/emscripten/wiki#programming-languages&lt;/ref&gt;, der Fokus der Entwickler liegt aber auf der Übersetzung von [[C (Programmiersprache)|C]]/[[C++]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Beispiel für die Anwendung von Emscripten zeigt die Portierung der [[Unreal Engine#Vierte Generation|Unreal Engine 4]] auf JavaScript.&lt;ref&gt;https://blog.mozilla.org/blog/2014/03/12/mozilla-and-epic-preview-unreal-engine-4-running-in-firefox/&lt;/ref&gt;</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Zeile 19:</td> <td colspan="2" class="diff-lineno">Zeile 19:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Weblinks ==</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* [https://emscripten.org/ Projektseite emscripten.org] (englisch)</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://github.com/kripken/emscripten Projektseite] auf [[GitHub]]</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://github.com/kripken/emscripten Projektseite] auf [[GitHub]]</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://github.com/kripken/emscripten/wiki Liste von Demos und Anleitungen]</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://github.com/kripken/emscripten/wiki Liste von Demos und Anleitungen]</div></td> </tr> </table> MTheiler https://de.wikipedia.org/w/index.php?title=Emscripten&diff=185962491&oldid=prev 2A02:810B:F3F:ED0C:4933:4390:2110:C367: /* Übersetzungsvorgang */ 2019-02-23T13:28:21Z <p><span class="autocomment">Übersetzungsvorgang</span></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 23. Februar 2019, 14:28 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 4:</td> <td colspan="2" class="diff-lineno">Zeile 4:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Übersetzungsvorgang ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Übersetzungsvorgang ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die erste Stufe des Kompiliervorgangs ist das [[LLVM]]-Frontend. Das verwendete LLVM-Frontend übersetzt den Sourcecode der verwendeten Sprache in LLVM-Assemblercode (LLVM Intermediate Representation). Für die Übersetzung von [[C++]]-Code kann beispielsweise [[Clang]] verwendet werden. Der erzeugte LLVM-Assemblercode wird anschließend von LLVM mit dem entsprechenden Backend in die Zielsprache übersetzt. Normalerweise würde im Backend der ausführbare Assembler<del style="font-weight: bold; text-decoration: none;"> </del>Maschinencode für eine bestimmte Plattform erzeugt. Diese Rolle übernimmt <del style="font-weight: bold; text-decoration: none;">aber</del> der Emscripten-Compiler. Der Emscripten-Compiler übersetzt den erzeugten LLVM-Assemblercode zu einem performant übersetzbarem Subset von [[JavaScript]] ([[asm.js]]).</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die erste Stufe des Kompiliervorgangs ist das [[LLVM]]-Frontend. Das verwendete LLVM-Frontend übersetzt den Sourcecode der verwendeten Sprache in LLVM-Assemblercode (LLVM Intermediate Representation). Für die Übersetzung von [[C++]]-Code kann beispielsweise [[Clang]] verwendet werden. Der erzeugte LLVM-Assemblercode wird anschließend von LLVM mit dem entsprechenden Backend in die Zielsprache übersetzt. Normalerweise würde im Backend der ausführbare Assembler<ins style="font-weight: bold; text-decoration: none;">-</ins>Maschinencode für eine bestimmte Plattform erzeugt. Diese Rolle übernimmt <ins style="font-weight: bold; text-decoration: none;">stattdessen</ins> der Emscripten-Compiler. Der Emscripten-Compiler übersetzt den erzeugten LLVM-Assemblercode zu einem performant übersetzbarem Subset von [[JavaScript]] ([[asm.js]]).</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> </tr> </table> 2A02:810B:F3F:ED0C:4933:4390:2110:C367 https://de.wikipedia.org/w/index.php?title=Emscripten&diff=171406450&oldid=prev Aka: doppelten Link entfernt 2017-11-26T13:54:13Z <p>doppelten Link entfernt</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 26. November 2017, 14:54 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 4:</td> <td colspan="2" class="diff-lineno">Zeile 4:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Übersetzungsvorgang ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Übersetzungsvorgang ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die erste Stufe des Kompiliervorgangs ist das [[LLVM]]-Frontend. Das verwendete LLVM-Frontend übersetzt den Sourcecode der verwendeten Sprache in LLVM-Assemblercode (LLVM Intermediate Representation). Für die Übersetzung von [[C++]]-Code kann beispielsweise [[Clang]] verwendet werden. Der erzeugte LLVM-Assemblercode wird anschließend von <del style="font-weight: bold; text-decoration: none;">[[</del>LLVM<del style="font-weight: bold; text-decoration: none;">]]</del> mit dem entsprechenden Backend in die Zielsprache übersetzt. Normalerweise würde im Backend der ausführbare Assembler Maschinencode für eine bestimmte Plattform erzeugt. Diese Rolle übernimmt aber der Emscripten-Compiler. Der Emscripten-Compiler übersetzt den erzeugten LLVM-Assemblercode zu einem performant übersetzbarem Subset von [[JavaScript]] ([[asm.js]]).</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die erste Stufe des Kompiliervorgangs ist das [[LLVM]]-Frontend. Das verwendete LLVM-Frontend übersetzt den Sourcecode der verwendeten Sprache in LLVM-Assemblercode (LLVM Intermediate Representation). Für die Übersetzung von [[C++]]-Code kann beispielsweise [[Clang]] verwendet werden. Der erzeugte LLVM-Assemblercode wird anschließend von LLVM mit dem entsprechenden Backend in die Zielsprache übersetzt. Normalerweise würde im Backend der ausführbare Assembler Maschinencode für eine bestimmte Plattform erzeugt. Diese Rolle übernimmt aber der Emscripten-Compiler. Der Emscripten-Compiler übersetzt den erzeugten LLVM-Assemblercode zu einem performant übersetzbarem Subset von [[JavaScript]] ([[asm.js]]).</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> </tr> </table> Aka https://de.wikipedia.org/w/index.php?title=Emscripten&diff=163504668&oldid=prev J.Ammon: /* Übersetzungsvorgang */ typo 2017-03-12T09:36:41Z <p><span class="autocomment">Übersetzungsvorgang: </span> typo</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 12. März 2017, 10:36 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 4:</td> <td colspan="2" class="diff-lineno">Zeile 4:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Übersetzungsvorgang ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Übersetzungsvorgang ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Die erste Stufe des Kompiliervorgangs ist das [[LLVM]]-Frontend. Das verwendete LLVM-Frontend übersetzt den Sourcecode der verwendeten Sprache in LLVM-Assemblercode (LLVM Intermediate Representation). Für die Übersetzung von [[C++]]-Code kann beispielsweise [[Clang]] verwendet werden. Der erzeugte LLVM-Assemblercode wird anschließend von [[LLVM]] mit dem entsprechenden Backend in die Zielsprache übersetzt. Normalerweise würde im Backend der ausführbare Assembler Maschinencode für eine bestimmte Plattform erzeugt. Diese Rolle übernimmt aber der Emscripten-Compiler. Der Emscripten-Compiler übersetzt den <del style="font-weight: bold; text-decoration: none;">erzeugte</del> LLVM-Assemblercode zu einem performant übersetzbarem Subset von [[JavaScript]] ([[asm.js]]).</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Die erste Stufe des Kompiliervorgangs ist das [[LLVM]]-Frontend. Das verwendete LLVM-Frontend übersetzt den Sourcecode der verwendeten Sprache in LLVM-Assemblercode (LLVM Intermediate Representation). Für die Übersetzung von [[C++]]-Code kann beispielsweise [[Clang]] verwendet werden. Der erzeugte LLVM-Assemblercode wird anschließend von [[LLVM]] mit dem entsprechenden Backend in die Zielsprache übersetzt. Normalerweise würde im Backend der ausführbare Assembler Maschinencode für eine bestimmte Plattform erzeugt. Diese Rolle übernimmt aber der Emscripten-Compiler. Der Emscripten-Compiler übersetzt den <ins style="font-weight: bold; text-decoration: none;">erzeugten</ins> LLVM-Assemblercode zu einem performant übersetzbarem Subset von [[JavaScript]] ([[asm.js]]).</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Performance ==</div></td> </tr> </table> J.Ammon