Ukukhutshwa kwe-Mold 1.1 linker, ephuhliswe yi-LLVM lld

Ukhupho lwekhonkco lokuMbumba lupapashiwe, olunokusetyenziswa ngokukhawuleza, ukutshintshwa okuselubala kwe-GNU isinxulumanisi kwiinkqubo zeLinux. Iprojekthi iphuhliswe ngumbhali we-LLVM lld linker. Uphawu oluphambili lwe-Mold sisantya esiphezulu sokudibanisa iifayile zento, ngokubonakalayo phambi kwe-GNU yegolide kunye ne-LLVM lld linkers (ukudibanisa kwi-Mold kwenziwa ngesantya esisisiqingatha kuphela ngokukhawuleza njengokukopa iifayile nge-cp eluncedo). Ikhowudi ibhalwe kwi-C++ (C++20) kwaye isasazwe phantsi kwelayisensi ye-AGPLv3.

Kwinguqulelo entsha:

  • Inkxaso eyongeziweyo yokuphucula kwinqanaba lokudibanisa (i-LTO, i-Link Time Optimization). Ukulungiswa kwe-LTO kuyahluka ngokuthathela ingqalelo imeko yazo zonke iifayile ezibandakanyekayo kwinkqubo yokwakha, ngelixa iindlela zokuphucula eziqhelekileyo ziphucula ifayile nganye ngokwahlukileyo kwaye zingathatheli ngqalelo iimeko zokubiza imisebenzi echazwe kwezinye iifayile. Ngelixa ngaphambili, xa iifayile ze-GCC okanye i-LLVM ikhowudi ephakathi (IR) zafunyanwa, i-ld.bfd okanye i-ld.lld ehambelanayo izikhonkco zazibizwa, ngoku uMold uqhuba iifayile ze-IR ngokuzimeleyo kwaye usebenzisa i-Linker Plugin API, ekwasetyenziswa kwi-GNU ld kunye ne-GNU. iikhonkco zegolide. Xa yenziwe yasebenza, i-LTO ikhawuleza nje kancinci kunezinye iziqhagamshelo kuba ixesha elininzi lichithwa kusenziwa unyuso lwekhowudi kunokudibanisa.
  • Inkxaso eyongeziweyo yoyilo lwe-RISC-V (RV64) kwi-host host kunye neeplatifti ekujoliswe kuzo.
  • Yongeza inketho ethi "-emit-relocs" ukwenza ukukopishwa kwamacandelo okufuduswa ukusuka kwiifayile zokufaka iifayile ukuya kwiifayile eziphumayo zosetyenziso olulandelayo lokulungelwa kwinqanaba le-post-linking.
  • Yongeza i "--shuffle-sections" inketho yokwenza i-random ulandelelwano lwamacandelo ngaphambi kokulungisa iidilesi zabo kwindawo yedilesi yenyani.
  • Iinketho ezongeziweyo "--print-dependencies" kunye "--print-dependencies= full" kwimveliso yolwazi lwefomathi ye-CSV malunga nokuxhomekeka phakathi kweefayile zongeniso, ezinokuthi, umzekelo, zisetyenziswe ukuhlalutya izizathu zoqhagamshelwano xa udibanisa iifayile zento ethile. okanye xa uqhuba ukuxhomekeka komsebenzi wokunciphisa phakathi kweefayile.
  • Kongezwe "-warn-once" kunye "--warn-textrel" iinketho.
  • Ukuxhomekeka okususiweyo kwi-libxxhash.

umthombo: opennet.ru

Yongeza izimvo