Liberasyon Mould 1.1 linker, devlope pa LLVM lld

Yo te pibliye yon lage nan Mould Linker a, ki ka itilize kòm yon ranplasman pi vit, transparan pou Linker GNU a sou sistèm Linux. Pwojè a devlope pa otè LLVM lld linker la. Yon karakteristik kle nan Mould se vitès trè wo nan konekte fichye objè, notables devan GNU gold ak LLVM lld linkers (lyezon nan Mould fèt nan yon vitès sèlman mwatye vit ke senpleman kopye fichye ak sèvis piblik la cp). Kòd la ekri nan C++ (C++20) epi distribye anba lisans AGPLv3.

Nan nouvo vèsyon an:

  • Te ajoute sipò pou optimize nan etap la ki lye (LTO, Link Time Optimization). Optimize LTO diferan lè yo pran an kont eta a nan tout dosye ki enplike nan pwosesis la bati, pandan y ap mòd optimize tradisyonèl yo optimize chak dosye separeman epi yo pa pran an kont kondisyon yo pou rele fonksyon yo defini nan lòt dosye. Lè nou konsidere ke anvan, lè yo te jwenn dosye kòd entèmedyè GCC oswa LLVM (IR), yo te rele linkers korespondan ld.bfd oswa ld.lld, kounye a Mould trete dosye IR poukont li epi li itilize API Linker Plugin, ki itilize tou nan GNU ld ak GNU. linkers lò. Lè li pèmèt, LTO se sèlman yon ti kras pi vit pase lòt linkers paske pi fò nan tan an pase fè optimize kòd olye ke lyen.
  • Te ajoute sipò pou achitekti RISC-V (RV64) sou platfòm lame a ak sib.
  • Te ajoute opsyon "--emit-relocs" pou pèmèt kopye seksyon demenajman soti nan fichye antre nan dosye pwodiksyon pou aplikasyon ki vin apre nan optimize nan etap apre lyezon an.
  • Te ajoute opsyon "--shuffle-sections" pou randomize lòd seksyon yo anvan yo fikse adrès yo nan espas adrès vityèl la.
  • Te ajoute opsyon "--print-dependencies" ak "--print-dependencies=full" pou bay enfòmasyon fòma CSV sou depandans ant fichye antre, ki, pou egzanp, ka itilize pou analize rezon ki fè yo koneksyon lè w ap konekte sèten fichye objè. oswa lè w ap pote soti depandans travay minification ant dosye.
  • Te ajoute opsyon "--warn-once" ak "--warn-textrel".
  • Retire depandans sou libxxhash.

Sous: opennet.ru

Add nouvo kòmantè