Riadiaci výbor GCC schválil zaradenie backendu WebAssembly do kódovej základne GCC. Toto rozhodnutie sa týka všeobecného schválenia zaradenia backendu WebAssembly do GCC. Revízny tím samostatne rozhodne, či schváli implementáciu a prijme predložený kód.
Backend umožní GCC kompilovať zdrojový kód C/C++ do medzikódu WebAssembly. Kompilácia do WebAssembly sa dá použiť na integráciu s projektmi JavaScript, spúšťanie vo webovom prehliadači, používanie Node.js alebo vytváranie samostatných multiplatformových aplikácií bežiacich pomocou runtime prostredia WASM. Backend funguje ako generátor kódu, ktorý používa medzikód pripravený vstavanými frontendmi GCC, ktoré analyzujú zdrojový kód v podporovaných programovacích jazykoch a poskytujú optimalizácie špecifické pre daný jazyk.
Implementácia navrhnutá na zahrnutie do GCC používa ako externé závislosti nástrojovú sadu wabt, implementáciu libc pre WebAssembly (wasi-libc) a linker wasm-ld. Nie všetky plánované funkcie boli implementované; chýba napríklad podpora pre ladiace informácie, referenčné typy, tabuľky, výnimky, štruktúrovanie a operácie setjump/longjump.
Zdroj: opennet.ru
