Megjelent a PicoLibc 1.8.6 standard C könyvtár kiadása

Megjelent a PicoLibc 1.8.6 szabvány C könyvtár, amelyet Keith Packard (az X.Org projekt vezetője) fejlesztett beágyazott eszközök számára, amelyek korlátozott állandó tároló- és memóriamérettel rendelkeznek. A fejlesztés során a kód egy része az újlib könyvtárból származik, amely a Cygwin projekt és az AVR Libc számára készült, amelyet Atmel AVR mikrokontrollerekhez fejlesztettek. A PicoLibc kódja BSD licenc alatt terjed. A könyvtár építése támogatott ARM (32-bites), Aarch64, i386, RISC-V, x86_64, m68k és PowerPC architektúrákra.

A projekt eredetileg a „newlib-nano” néven indult, és a Newlib néhány erőforrásigényes funkciójának újragondolására összpontosított, amelyeket nehéz volt használni beágyazott eszközökön, kis RAM-mal. Például a PicoLibc stdio funkcióit az avrlibc könyvtár kompakt változata váltotta fel. A kód eltávolította azokat a nem BSD licenc alatt álló, a beágyazott eszközökhöz nem használt összetevőket is. Egyszerűsített inicializáló kód (crt0) került hozzáadásra, és a hívások megvalósítása a ‘struct _reent’ -ről a TLS (szál-specifikus tárolás) mechanizmusra lett átírva. A Meson eszköz készletét használták az összeállításhoz.

Az új kiadásban:

  • Átvitték a Newlib 4.4.0-ból származó változtatásokat, például a „long double” típus támogatását i386, RISC-V, Aarch64 és x86_64 architektúrákon, a RISC-V Zfinx/Zdinx kiterjesztések támogatását, a könyvtárak beszúrásánál felhasználható maszkok lehetőségét, Xtensa processzorokhoz való portot, valamint a printf kezelők külön fájlokba való kiemelését a linkelési méret csökkentése érdekében.
  • A picolibc.ld-hez hozzáadták az „__eh_*” szimbólumokat az LLVM libunwind számára.
  • Bevezették a 32-bites SPARC rendszerek tesztelési támogatását.
  • Támogatást nyújtanak a céleszközök számára, amelyek nem tipikus lebegőpontos típusokat használnak, amelyek most már 32-, 64-, 80- és 128-bites típusokként kerülnek megjelenítésre a picolibc kódban.
  • Támogatást kaptak a SuperH RISC architektúra.
  • Javították a verem nyomkövetését a RISC-V rendszerek kivételkezelési kódjának hibakeresése során.
  • Hozzáadva a „-Dfast-bufio=true” opció a bufio használatával végzett olvasás és írás hatékonyságának növelése érdekében.
  • A nyilvános inline funkciók tisztítása a gnu_inline szemantika közös használatához.
  • A teljesítmény növelése érdekében a fenv funkciók többsége gnu_inline inline funkciók használatára lett átkonvertálva a hagyományos helyett.
  • Létrehoztak egy alternatív ctype megvalósítást, amely nem használ ctype tömböt, és közvetlen érték összehasonlítást végez.

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster