I-Emscripten 3.0 iyatholakala, i-C/C++ eya ku-WebAssembly compiler

Ukukhishwa kwe-Emscripten 3.0 compiler kushicilelwe, okukuvumela ukuthi uhlanganise ikhodi nge-C/C++ nezinye izilimi lapho okusekelwe khona kwe-LLVM kutholakala kukhodi emaphakathi yendawo yonke yezinga eliphansi, i-WebAssembly, ukuze ihlanganiswe namaphrojekthi we-JavaScript, asebenzayo. esipheqululini sewebhu, futhi usebenzise ku-Node js noma udale izinhlelo zokusebenza ezizimele zodwa zezingxenyekazi eziningi ezisebenzisa isikhathi sokusebenza se-wasm. Ikhodi yephrojekthi isatshalaliswa ngaphansi kwelayisensi ye-MIT. Umhlanganisi usebenzisa intuthuko evela kuphrojekthi ye-LLVM, futhi umtapo wezincwadi we-Binaryen usetshenziselwa ukukhiqiza nokuthuthukisa i-WebAssembly.

Umgomo oyinhloko wephrojekthi ye-Emscripten uwukwenza ithuluzi elikuvumela ukuthi wenze ikhodi kuwebhu ngaphandle kolimi lokuhlela okubhalwe ngalo ikhodi. Izinhlelo zokusebenza ezihlanganisiwe zingasebenzisa izingcingo eziya kumalabhulali ajwayelekile e-C kanye ne-C++ (libc, libcxx), izandiso ze-C++, i-pthreads-based multithreading, ama-POSIX APIs, namalabhulali amaningi we-multimedia. Ama-API okuhlanganiswa ne-Web API kanye nekhodi ye-JavaScript anikezwa ngokuhlukene.

I-Emscripten isekela ukuhumusha kokukhipha komtapo wezincwadi we-SDL2 nge-Canvas futhi inikeza nokusekelwa kwe-OpenGL kanye ne-EGL nge-WebGL, okuvumela ukuguqulwa kwezinhlelo zokusebenza zehluzo kanye nemidlalo ku-WebAssembly (isibonelo, kukhona ichweba le-Qt toolkit kanye nokusekelwa kwezinjini zemidlalo ze-Unreal Engine 4 kanye ne-Unit, kanye nenjini ye-Bullet physics). Ngaphezu kokuhlanganisa ikhodi ye-C/C++, amaphrojekthi ahlukene ayathuthukiswa ukuze kuvunyelwe ukuqaliswa kwabahumushi kuziphequluli kanye imishini ebonakalayo Ku-Lua, C#, Python, Ruby, kanye ne-Perl. Kungenzeka futhi ukusebenzisa ama-frontend e-LLVM ngaphandle kwe-Clang, atholakala ngezilimi ezifana ne-Swift, Rust, D, kanye ne-Fortran.

Izinguquko ezinkulu ku-Emscripten 3.0:

  • Umtapo wezincwadi we-musl C osetshenziswe ku-emscripten ubuyekezwe waba yinguqulo 1.2.2 (inguqulo 2 isetshenziswe egatsheni le-Emscripten 1.1.15.x).
  • Ingxenye yemisebenzi ebisetshenziswa kakhulu ngaphakathi kwephrojekthi ikhishiwe kumtapo wezincwadi we-parseTools.js: ukususaPointing, pointingLevels, removeAllPointing, isVoidType, isStructPointerType, isArrayType, isStructType, isVectorType, isStructuralType getStructuralType getStructuralTypertsf, getStructuralTypertsf, GetStructuralTypertsf, GetStructuralTypertsf. Uhlobo, isFunctionType, getReturnType, splitTokenList, _IntToHex, IEEEUnHex , Compiletime.isPointerType, Compiletime.isStructType, Compiletime.INT_TYPES, isType.
  • Kuzifanekiso ze-shell.html ne-shell_minimal.html, okukhiphayo kwemilayezo yephutha eyenzeka ngesikhathi sokusebenza kwe-emscripten futhi ekhishwa uhlelo lokusebenza nge-stderr ishintshwa ngokuzenzakalelayo ukuze kusetshenziswe i-console.warn esikhundleni se-console.error.
  • Kwengezwe ikhono lokucacisa umbhalo othile wombhalo wekhodi osetshenziswa emagameni wefayela. Umbhalo wekhodi ungacaciswa ngendlela yesijobelelo lapho kudluliswa igama lefayela, isibonelo, "a.rsp.utf-8" noma "a.rsp.cp1251").

Source: opennet.ru

Thenga ukusingathwa okuthembekile kwamasayithi anokuvikelwa kwe-DDoS, amaseva e-VPS VDS 🔥 Thenga ukusingathwa kwewebhusayithi okuthembekile ngokuvikelwa kwe-DDoS, amaseva e-VPS VDS | ProHoster