Ngaleupaskeun perpustakaan C baku PicoLibc 1.8.6

A sékrési perpustakaan standar C PicoLibc 1.8.6 geus diterbitkeun, dikembangkeun ku Keith Packard (pamimpin proyék X.Org) pikeun pamakéan dina alat embedded kalawan jumlah kawates gudang permanén sarta RAM. Salila pangwangunan, bagian tina kode ieu diinjeum ti perpustakaan newlib tina proyék Cygwin sareng AVR Libc, dikembangkeun pikeun mikrokontroler Atmel AVR. Kode PicoLibc disebarkeun dina lisénsi BSD. Majelis perpustakaan dirojong pikeun arsitéktur ARM (32-bit), Aarch64, i386, RISC-V, x86_64, m68k sareng PowerPC.

Mimitina, proyék éta dikembangkeun kalayan nami "newlib-nano" sareng ditujukeun pikeun ngerjakeun deui sababaraha fungsi sumber daya Newlib, anu masalahna dianggo dina alat anu dipasang kalayan sakedik RAM. Contona, dina PicoLibc fungsi stdio diganti ku versi kompak ti perpustakaan avrlibc. Kodeu ogé diberesihan tina komponén anu henteu dianggo dina rakitan alat anu dipasang anu henteu disayogikeun dina lisénsi BSD. Versi saderhana tina kode initialization (crt0) geus ditambahkeun, sarta palaksanaan panggero geus dipindahkeun tina 'struct _reent' kana TLS (thread-local storage) mékanisme. The Meson toolkit dipaké pikeun assembly.

Dina rilis anyar:

  • Parobihan tina Newlib 4.4.0 parantos ditransfer, sapertos dukungan pikeun jinis "ganda panjang" dina arsitéktur i386, RISC-V, Aarch64 sareng x86_64, dukungan pikeun ekstensi RISC-V Zfinx / Zdinx, kamampuan ngagunakeun masker nalika nyelapkeun diréktori. , palaksanaan port pikeun prosesor Xtensa, misahkeun pawang printf kana file misah pikeun ngurangan ukuranana nalika linking.
  • Ditambahkeun "__eh_ *" simbol pikeun picolibc.ld pikeun LLVM libunwind.
  • Pangrojong tés pikeun sistem SPARC 32-bit kalebet.
  • Disadiakeun pangrojong pikeun platform target sareng tipe floating point non-has, nu ayeuna reflected dina tipe 32-, 64-, 80-, jeung 128-bit dina kode picolibc.
  • Ditambahkeun dukungan pikeun arsitéktur SuperH RISC.
  • Ningkatkeun jejak tumpukan nalika debugging kode iwal dina sistem RISC-V.
  • Ditambahkeun pilihan "-Dfast-bufio = leres" pikeun ningkatkeun efisiensi maca sareng nyerat nalika nganggo bufio.
  • Ngabersihkeun fungsi inline umum pikeun ngabagi semantik gnu_inline.
  • Seuseueurna pungsi fenv tos dipindahkeun kanggo nganggo pungsi inline (gnu_inline) tibatan fungsi biasa pikeun ningkatkeun kinerja.
  • Palaksanaan alternatif ctype geus dijieun nu teu make Asép Sunandar Sunarya ctype sarta ngalakukeun ngabandingkeun langsung tina nilai.

sumber: opennet.ru

Tambahkeun komentar