Rilaxx ta 'Mould 1.1 linker, żviluppat minn LLVM lld

Ġie ppubblikat rilaxx tal-Mold linker, li jista' jintuża bħala sostitut aktar mgħaġġel u trasparenti għall-GNU linker fuq sistemi Linux. Il-proġett huwa żviluppat mill-awtur tal-LLVM lld linker. Karatteristika ewlenija ta 'Mold hija l-veloċità għolja ħafna ta' konnessjoni ta 'fajls ta' oġġetti, notevolment qabel il-linkers GNU gold u LLVM lld (il-linking in Mold isir b'veloċità biss nofs veloċi daqs sempliċiment tikkopja fajls bl-utilità cp). Il-kodiċi huwa miktub f'C++ (C++20) u mqassam taħt il-liċenzja AGPLv3.

Fil-verżjoni l-ġdida:

  • Appoġġ miżjud għall-ottimizzazzjoni fl-istadju tal-konnessjoni (LTO, Link Time Optimization). L-ottimizzazzjonijiet LTO huma differenti billi jqisu l-istat tal-fajls kollha involuti fil-proċess tal-bini, filwaqt li l-modi ta 'ottimizzazzjoni tradizzjonali jottimizzaw kull fajl separatament u ma jqisux il-kundizzjonijiet għas-sejħa ta' funzjonijiet definiti f'fajls oħra. Billi qabel, meta nstabu fajls tal-kodiċi intermedju (IR) GCC jew LLVM, kienu jissejħu l-linkers ld.bfd jew ld.lld korrispondenti, issa Mold tipproċessa fajls IR b'mod indipendenti u tuża l-API Linker Plugin, użata wkoll fil-GNU ld u GNU linkers tad-deheb. Meta jkun attivat, LTO huwa biss marġinalment aktar mgħaġġel minn linkers oħra minħabba li l-biċċa l-kbira tal-ħin jintefaq biex iwettaq ottimizzazzjonijiet tal-kodiċi aktar milli jgħaqqad.
  • Appoġġ miżjud għall-arkitettura RISC-V (RV64) fuq il-pjattaformi ospitanti u fil-mira.
  • Żid l-għażla "--emit-relocs" biex tippermetti l-ikkupjar ta 'sezzjonijiet ta' rilokazzjoni minn fajls ta 'input għal fajls ta' output għal applikazzjoni sussegwenti ta 'ottimizzazzjonijiet fl-istadju ta' wara l-linking.
  • Żid l-għażla "--shuffle-sections" biex tirrandomize l-ordni tat-taqsimiet qabel ma jiġu ffissati l-indirizzi tagħhom fl-ispazju tal-indirizz virtwali.
  • Għażliet miżjuda “--print-dependencies” u “--print-dependencies=full” biex joħorġu f’format CSV informazzjoni dwar dipendenzi bejn fajls ta’ input, li, pereżempju, jistgħu jintużaw biex janalizzaw ir-raġunijiet għall-konnessjoni meta torbot ċerti fajls ta’ oġġetti jew meta twettaq id-dipendenzi tax-xogħol ta' minifikazzjoni bejn il-fajls.
  • Miżjud għażliet "--warn-once" u "--warn-textrel".
  • Imneħħija d-dipendenza fuq libxxhash.

Sors: opennet.ru

Żid kumment