Abo
  • IT-Karriere:

Google: Portable-Native-Client-Code für LLVM

Emscripten nutzt für sein neues Backend Fastcomp Bestandteile aus Googles Portable Native Client. Diese Bestandteile sollen nun auch im Hauptzweig von LLVM bereitstehen, um die Arbeit der Projekte zu vereinfachen.

Artikel veröffentlicht am ,
Teile von Google PNaCL sollen in LLVM eingepflegt werden.
Teile von Google PNaCL sollen in LLVM eingepflegt werden. (Bild: LLVM)

Das neue Emscripten-Backend Fastcomp verwendet die Compile-Schritte von Googles Portable Native Client (PNaCL). Deshalb wäre es für die Zusammenarbeit beider Projekte hilfreich, wenn diese Code-Bestandteile im Hauptzweig von LLVM verfügbar wären statt in einem eigenen Entwicklungszweig. Deshalb diskutiert ein Google-Entwickler mit dem LLVM-Team über die Möglichkeit zur Aufnahme des Codes.

Stellenmarkt
  1. INTERPLAN Congress, Meeting & Event Management AG, München
  2. Gesellschaft im Ostalbkreis für Abfallbewirtschaftung mbh (GOA), Schwäbisch Gmünd

Der von Google geschriebene Code soll den LLVM-eigenen wesentlich vereinfachen, indem komplexe Funktionen auf einfachere heruntergebrochen werden. Der Code von Google sei zudem modular aufgebaut. So könnten weitere Projekte entscheiden, welche der Einzelteile sie unterstützen wollen. Zudem sei der Code durch die Modularität einfach zu warten und zu testen.

Code vielfach verwendbar

Emscripten oder auch jedes andere Projekt kann diese Funktionen von Google verwenden, um ein neues LLVM-Backend zu schreiben. Dabei werde die Anzahl der verschiedenen Möglichkeiten, die das Backend beachten muss, aber im Vergleich zum jetzigen LLVM-Code deutlich reduziert - was Emscripten-Entwickler Alon Zakai in der Diskussion bestätigt.

Zakai sieht auch weitere Szenarien, in denen LLVM-Zwischencode (IR) einfach in etwas anderes übersetzt werden soll. So könnten Studenten etwa Compiler-Optimierungen gelehrt werden, indem diese LLVM IR in eine ihnen schon bekannte Sprache übersetzen müssten.

Googles PNaCl kompiliert C- und C++-Code ebenfalls in eine Zwischenschicht, die eine Teilmenge von LLVMs IR ist. So wird architekturabhängiger Code erzeugt, der in eine portable, ausführbare Datei gepackt werden kann, um "native" Web-Apps zu erstellen. Das Android-Projekt Renderscript nutzt ebenfalls die IR von PNaCL.

Ob der Code von Google letztendlich in LLVM landet, ist noch nicht entschieden. So hegen einige Entwickler etwa große Zweifel an dem Vorhaben.



Anzeige
Spiele-Angebote
  1. 4,34€
  2. 33,95€
  3. 2,99€
  4. 4,99€

Folgen Sie uns
       


Doom Eternal angespielt

Slayer im Kampf gegen die Höllendämonen: Doom Eternal soll noch in diesem Jahr erscheinen.

Doom Eternal angespielt Video aufrufen
iPad OS im Test: Apple entdeckt den USB-Stick
iPad OS im Test
Apple entdeckt den USB-Stick

Zusammen mit iOS 13 hat Apple eine eigene Version für seine iPads vorgestellt: iPad OS verbessert die Benutzung als Tablet tatsächlich, ein Notebook-Ersatz ist ein iPad Pro damit aber immer noch nicht. Apple bringt aber endlich Funktionen, die wir teilweise seit Jahren vermisst haben.
Ein Test von Tobias Költzsch

  1. Tablets Apple bringt neues iPad Air und iPad Mini
  2. Eurasische Wirtschaftskommission Apple registriert sieben neue iPads
  3. Apple Es ändert sich einiges bei der App-Entwicklung für das iPad

Erneuerbare Energien: Die Energiewende braucht Wasserstoff
Erneuerbare Energien
Die Energiewende braucht Wasserstoff

Kein anderes Element ist so universell und dabei simpel aufgebaut wie Wasserstoff und das energiereiche Gas lässt sich aus fast jedem Energieträger gewinnen. Genauso vielseitig gestaltet sich seine Nutzung.
Ein Bericht von Jan Oliver Löfken

  1. Strom-Boje Mittelrhein Schwimmende Kraftwerke liefern Strom aus dem Rhein
  2. Speicherung von Überschussstrom Wasserstoff soll bei Engpässen helfen
  3. Energiewende DLR-Forscher bauen Kohlekraftwerke zu Stromspeichern um

Raumfahrt: Galileo-Satellitennavigation ist vollständig ausgefallen
Raumfahrt
Galileo-Satellitennavigation ist vollständig ausgefallen

Seit Donnerstag senden die Satelliten des Galileo-Systems keine Daten mehr an die Navigationssysteme. SAR-Notfallbenachrichtigungen sollen aber noch funktionieren. Offenbar ist ein Systemfehler in einer Bodenstation die Ursache. Nach fünf Tagen wurde die Störung behoben.

  1. Satellitennavigation Galileo ist wieder online

    •  /